0s autopkgtest [14:50:03]: starting date and time: 2025-05-02 14:50:03+0000 0s autopkgtest [14:50:03]: git checkout: 9986aa8c Merge branch 'skia/fix_network_interface' into 'ubuntu/production' 0s autopkgtest [14:50:03]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.pe1ksgqd/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-s390x --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@bos03-s390x-15.secgroup --name adt-questing-s390x-ansible-20250502-145003-juju-7f2275-prod-proposed-migration-environment-2-41ac9d81-7acf-49a5-9cef-a0a1e823e877 --image adt/ubuntu-questing-s390x-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-proposed-migration-s390x -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 55s autopkgtest [14:50:58]: testbed dpkg architecture: s390x 55s autopkgtest [14:50:58]: testbed apt version: 3.0.0 55s autopkgtest [14:50:58]: @@@@@@@@@@@@@@@@@@@@ test bed setup 56s autopkgtest [14:50:59]: testbed release detected to be: None 56s autopkgtest [14:50:59]: updating testbed package index (apt update) 57s Get:1 http://ftpmaster.internal/ubuntu questing-proposed InRelease [110 kB] 57s Hit:2 http://ftpmaster.internal/ubuntu questing InRelease 57s Hit:3 http://ftpmaster.internal/ubuntu questing-updates InRelease 57s Hit:4 http://ftpmaster.internal/ubuntu questing-security InRelease 57s Get:5 http://ftpmaster.internal/ubuntu questing-proposed/main Sources [164 kB] 57s Get:6 http://ftpmaster.internal/ubuntu questing-proposed/multiverse Sources [44.2 kB] 57s Get:7 http://ftpmaster.internal/ubuntu questing-proposed/universe Sources [2024 kB] 57s Get:8 http://ftpmaster.internal/ubuntu questing-proposed/main s390x Packages [194 kB] 57s Get:9 http://ftpmaster.internal/ubuntu questing-proposed/universe s390x Packages [1236 kB] 57s Get:10 http://ftpmaster.internal/ubuntu questing-proposed/multiverse s390x Packages [8572 B] 58s Fetched 3781 kB in 1s (3117 kB/s) 58s Reading package lists... 59s autopkgtest [14:51:02]: upgrading testbed (apt dist-upgrade and autopurge) 59s Reading package lists... 59s Building dependency tree... 59s Reading state information... 60s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 60s Starting 2 pkgProblemResolver with broken count: 0 60s Done 60s Entering ResolveByKeep 60s 60s Calculating upgrade... 60s The following packages will be upgraded: 60s fwupd htop libftdi1-2 libfwupd3 libnpth0t64 libsensors-config libsensors5 60s liburcu8t64 nano usb.ids 60s 10 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 60s Need to get 2536 kB of archives. 60s After this operation, 3749 kB disk space will be freed. 60s Get:1 http://ftpmaster.internal/ubuntu questing/main s390x libnpth0t64 s390x 1.8-3 [8778 B] 60s Get:2 http://ftpmaster.internal/ubuntu questing/main s390x libsensors-config all 1:3.6.2-2 [6756 B] 60s Get:3 http://ftpmaster.internal/ubuntu questing/main s390x libsensors5 s390x 1:3.6.2-2 [29.2 kB] 60s Get:4 http://ftpmaster.internal/ubuntu questing/main s390x liburcu8t64 s390x 0.15.2-2 [66.3 kB] 61s Get:5 http://ftpmaster.internal/ubuntu questing/main s390x nano s390x 8.4-1 [299 kB] 61s Get:6 http://ftpmaster.internal/ubuntu questing/main s390x usb.ids all 2025.04.01-1 [223 kB] 61s Get:7 http://ftpmaster.internal/ubuntu questing/main s390x fwupd s390x 2.0.8-3 [1548 kB] 61s Get:8 http://ftpmaster.internal/ubuntu questing/main s390x libfwupd3 s390x 2.0.8-3 [135 kB] 61s Get:9 http://ftpmaster.internal/ubuntu questing/main s390x htop s390x 3.4.1-4 [189 kB] 61s Get:10 http://ftpmaster.internal/ubuntu questing/main s390x libftdi1-2 s390x 1.5-10 [31.4 kB] 61s Fetched 2536 kB in 1s (3738 kB/s) 61s (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 ... 81472 files and directories currently installed.) 61s Preparing to unpack .../libnpth0t64_1.8-3_s390x.deb ... 61s Unpacking libnpth0t64:s390x (1.8-3) over (1.8-2) ... 61s Setting up libnpth0t64:s390x (1.8-3) ... 61s (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 ... 81472 files and directories currently installed.) 61s Preparing to unpack .../0-libsensors-config_1%3a3.6.2-2_all.deb ... 61s Unpacking libsensors-config (1:3.6.2-2) over (1:3.6.0-10) ... 61s Preparing to unpack .../1-libsensors5_1%3a3.6.2-2_s390x.deb ... 61s Unpacking libsensors5:s390x (1:3.6.2-2) over (1:3.6.0-10) ... 61s Preparing to unpack .../2-liburcu8t64_0.15.2-2_s390x.deb ... 61s Unpacking liburcu8t64:s390x (0.15.2-2) over (0.15.1-1) ... 61s Preparing to unpack .../3-nano_8.4-1_s390x.deb ... 61s Unpacking nano (8.4-1) over (8.3-1) ... 61s Preparing to unpack .../4-usb.ids_2025.04.01-1_all.deb ... 61s Unpacking usb.ids (2025.04.01-1) over (2025.01.14-1) ... 61s Preparing to unpack .../5-fwupd_2.0.8-3_s390x.deb ... 62s Unpacking fwupd (2.0.8-3) over (2.0.7-1) ... 62s dpkg: warning: unable to delete old directory '/etc/grub.d': Directory not empty 62s Preparing to unpack .../6-libfwupd3_2.0.8-3_s390x.deb ... 62s Unpacking libfwupd3:s390x (2.0.8-3) over (2.0.7-1) ... 62s Preparing to unpack .../7-htop_3.4.1-4_s390x.deb ... 62s Unpacking htop (3.4.1-4) over (3.4.0-2) ... 62s Preparing to unpack .../8-libftdi1-2_1.5-10_s390x.deb ... 62s Unpacking libftdi1-2:s390x (1.5-10) over (1.5-8build1) ... 62s Setting up liburcu8t64:s390x (0.15.2-2) ... 62s Setting up htop (3.4.1-4) ... 62s Setting up libsensors-config (1:3.6.2-2) ... 62s Installing new version of config file /etc/sensors3.conf ... 62s Setting up libfwupd3:s390x (2.0.8-3) ... 62s Setting up libftdi1-2:s390x (1.5-10) ... 62s Setting up usb.ids (2025.04.01-1) ... 62s Setting up libsensors5:s390x (1:3.6.2-2) ... 62s Setting up nano (8.4-1) ... 62s Installing new version of config file /etc/nanorc ... 62s Setting up fwupd (2.0.8-3) ... 62s fwupd-refresh.service is a disabled or a static unit not running, not starting it. 62s fwupd.service is a disabled or a static unit not running, not starting it. 62s Processing triggers for man-db (2.13.0-1) ... 63s Processing triggers for dbus (1.16.2-2ubuntu1) ... 63s Processing triggers for install-info (7.1.1-1) ... 63s Processing triggers for libc-bin (2.41-6ubuntu1) ... 64s Reading package lists... 64s Building dependency tree... 64s Reading state information... 64s Starting pkgProblemResolver with broken count: 0 64s Starting 2 pkgProblemResolver with broken count: 0 64s Done 64s Solving dependencies... 64s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 64s autopkgtest [14:51:07]: rebooting testbed after setup commands that affected boot 87s autopkgtest [14:51:30]: testbed running kernel: Linux 6.14.0-15-generic #15-Ubuntu SMP Sun Apr 6 13:39:00 UTC 2025 90s autopkgtest [14:51:33]: @@@@@@@@@@@@@@@@@@@@ apt-source ansible 92s Get:1 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (dsc) [3353 B] 92s Get:2 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (tar) [26.7 MB] 92s Get:3 http://ftpmaster.internal/ubuntu questing/universe ansible 11.2.0+dfsg-1 (diff) [32.9 kB] 93s gpgv: Signature made Thu Feb 27 17:38:46 2025 UTC 93s gpgv: using RSA key D847C62510A9C2FF242CE02CD604A1C4823EE0F8 93s gpgv: Can't check signature: No public key 93s dpkg-source: warning: cannot verify inline signature for ./ansible_11.2.0+dfsg-1.dsc: no acceptable signature found 95s autopkgtest [14:51:38]: testing package ansible version 11.2.0+dfsg-1 96s autopkgtest [14:51:39]: build not needed 110s autopkgtest [14:51:53]: test unit-tests-stable.py: preparing testbed 111s Reading package lists... 111s Building dependency tree... 111s Reading state information... 111s Starting pkgProblemResolver with broken count: 0 111s Starting 2 pkgProblemResolver with broken count: 0 111s Done 111s The following NEW packages will be installed: 111s ansible ansible-core fontconfig-config fonts-dejavu-core fonts-dejavu-mono 111s gir1.2-secret-1 git git-man libcairo-gobject2 libcairo2 liberror-perl 111s libfontconfig1 libfreetype6 libpixman-1-0 libsecret-1-0 libsecret-common 111s libsodium23 libxcb-render0 libxcb-shm0 libxrender1 libxslt1.1 python3-adal 111s python3-aiohappyeyeballs python3-aiohttp python3-aiosignal 111s python3-async-timeout python3-avro python3-azure python3-azure-storage 111s python3-boto3 python3-botocore python3-cachetools python3-cairo 111s python3-click python3-colorama python3-dateutil python3-dnspython 111s python3-execnet python3-flake8 python3-freezegun python3-frozenlist 111s python3-gi-cairo python3-gitlab python3-google-auth python3-httmock 111s python3-hvac python3-iniconfig python3-isodate python3-jmespath 111s python3-joblib python3-kubernetes python3-lxml python3-marshmallow 111s python3-mccabe python3-mock python3-msal python3-msal-extensions 111s python3-msrest python3-msrestazure python3-multidict python3-nacl 111s python3-nltk python3-packaging python3-paramiko python3-pathspec 111s python3-pluggy python3-portalocker python3-proxmoxer python3-psutil 111s python3-py python3-pyasn1 python3-pyasn1-modules python3-pycodestyle 111s python3-pydash python3-pyflakes python3-pyhcl python3-pytest 111s python3-pytest-forked python3-pytest-mock python3-pytest-xdist python3-pyu2f 111s python3-pyvmomi python3-redis python3-regex python3-requests-oauthlib 111s python3-requests-toolbelt python3-resolvelib python3-responses python3-rsa 111s python3-ruamel.yaml python3-ruamel.yaml.clib python3-s3transfer python3-six 111s python3-strictyaml python3-textfsm python3-tqdm python3-websocket 111s python3-xmltodict python3-yarl yamllint 111s 0 upgraded, 100 newly installed, 0 to remove and 0 not upgraded. 111s Need to get 59.4 MB of archives. 111s After this operation, 994 MB of additional disk space will be used. 111s Get:1 http://ftpmaster.internal/ubuntu questing/main s390x python3-packaging all 24.2-1 [51.5 kB] 112s Get:2 http://ftpmaster.internal/ubuntu questing/universe s390x python3-resolvelib all 1.1.0-1 [25.8 kB] 112s Get:3 http://ftpmaster.internal/ubuntu questing/main s390x libsodium23 s390x 1.0.18-1build3 [138 kB] 112s Get:4 http://ftpmaster.internal/ubuntu questing/main s390x python3-nacl s390x 1.5.0-7 [59.3 kB] 112s Get:5 http://ftpmaster.internal/ubuntu questing/main s390x python3-paramiko all 3.5.1-2ubuntu1 [147 kB] 112s Get:6 http://ftpmaster.internal/ubuntu questing/main s390x python3-dnspython all 2.7.0-1ubuntu1 [167 kB] 112s Get:7 http://ftpmaster.internal/ubuntu questing/universe s390x ansible-core all 2.18.1-4ubuntu1 [1273 kB] 112s Get:8 http://ftpmaster.internal/ubuntu questing/universe s390x ansible all 11.2.0+dfsg-1 [18.1 MB] 113s Get:9 http://ftpmaster.internal/ubuntu questing/main s390x fonts-dejavu-mono all 2.37-8 [502 kB] 113s Get:10 http://ftpmaster.internal/ubuntu questing/main s390x fonts-dejavu-core all 2.37-8 [835 kB] 113s Get:11 http://ftpmaster.internal/ubuntu questing/main s390x fontconfig-config s390x 2.15.0-2.2ubuntu1 [37.9 kB] 113s Get:12 http://ftpmaster.internal/ubuntu questing/main s390x libsecret-common all 0.21.7-1 [5160 B] 113s Get:13 http://ftpmaster.internal/ubuntu questing/main s390x libsecret-1-0 s390x 0.21.7-1 [115 kB] 113s Get:14 http://ftpmaster.internal/ubuntu questing/main s390x gir1.2-secret-1 s390x 0.21.7-1 [9338 B] 113s Get:15 http://ftpmaster.internal/ubuntu questing/main s390x liberror-perl all 0.17030-1 [23.5 kB] 113s Get:16 http://ftpmaster.internal/ubuntu questing/main s390x git-man all 1:2.48.1-0ubuntu1 [1148 kB] 113s Get:17 http://ftpmaster.internal/ubuntu questing/main s390x git s390x 1:2.48.1-0ubuntu1 [4284 kB] 113s Get:18 http://ftpmaster.internal/ubuntu questing/main s390x libfreetype6 s390x 2.13.3+dfsg-1 [431 kB] 113s Get:19 http://ftpmaster.internal/ubuntu questing/main s390x libfontconfig1 s390x 2.15.0-2.2ubuntu1 [150 kB] 113s Get:20 http://ftpmaster.internal/ubuntu questing/main s390x libpixman-1-0 s390x 0.44.0-3 [201 kB] 113s Get:21 http://ftpmaster.internal/ubuntu questing/main s390x libxcb-render0 s390x 1.17.0-2 [17.0 kB] 113s Get:22 http://ftpmaster.internal/ubuntu questing/main s390x libxcb-shm0 s390x 1.17.0-2 [5862 B] 113s Get:23 http://ftpmaster.internal/ubuntu questing/main s390x libxrender1 s390x 1:0.9.10-1.1build1 [20.4 kB] 113s Get:24 http://ftpmaster.internal/ubuntu questing/main s390x libcairo2 s390x 1.18.4-1 [580 kB] 113s Get:25 http://ftpmaster.internal/ubuntu questing/main s390x libcairo-gobject2 s390x 1.18.4-1 [127 kB] 113s Get:26 http://ftpmaster.internal/ubuntu questing/main s390x libxslt1.1 s390x 1.1.39-0exp1ubuntu4 [170 kB] 113s Get:27 http://ftpmaster.internal/ubuntu questing/main s390x python3-dateutil all 2.9.0-4 [80.3 kB] 113s Get:28 http://ftpmaster.internal/ubuntu questing/universe s390x python3-adal all 1.2.7-5 [33.0 kB] 113s Get:29 http://ftpmaster.internal/ubuntu questing/universe s390x python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB] 113s Get:30 http://ftpmaster.internal/ubuntu questing/universe s390x python3-multidict s390x 6.2.0-2 [35.4 kB] 113s Get:31 http://ftpmaster.internal/ubuntu questing/universe s390x python3-yarl s390x 1.13.1-1build2 [96.1 kB] 113s Get:32 http://ftpmaster.internal/ubuntu questing/universe s390x python3-async-timeout all 5.0.1-1 [6830 B] 113s Get:33 http://ftpmaster.internal/ubuntu questing/universe s390x python3-frozenlist s390x 1.5.0-1build2 [50.3 kB] 113s Get:34 http://ftpmaster.internal/ubuntu questing/universe s390x python3-aiosignal all 1.3.2-1 [5182 B] 113s Get:35 http://ftpmaster.internal/ubuntu questing/universe s390x python3-aiohttp s390x 3.10.11-1build1 [313 kB] 113s Get:36 http://ftpmaster.internal/ubuntu questing/universe s390x python3-avro all 1.12.0+dfsg-1 [75.3 kB] 113s Get:37 http://ftpmaster.internal/ubuntu questing/universe s390x python3-isodate all 0.7.0-1 [18.6 kB] 113s Get:38 http://ftpmaster.internal/ubuntu questing/universe s390x python3-requests-oauthlib all 1.3.1-1 [18.8 kB] 113s Get:39 http://ftpmaster.internal/ubuntu questing/universe s390x python3-msrest all 0.6.21-5 [48.7 kB] 113s Get:40 http://ftpmaster.internal/ubuntu questing/universe s390x python3-msrestazure all 0.6.4-4 [27.1 kB] 113s Get:41 http://ftpmaster.internal/ubuntu questing/universe s390x python3-azure-storage all 20250304+git-1 [300 kB] 113s Get:42 http://ftpmaster.internal/ubuntu questing/universe s390x python3-colorama all 0.4.6-4 [32.1 kB] 113s Get:43 http://ftpmaster.internal/ubuntu questing/universe s390x python3-marshmallow all 3.26.1-0.2 [47.5 kB] 113s Get:44 http://ftpmaster.internal/ubuntu questing/universe s390x python3-msal all 1.32.0-1 [100 kB] 113s Get:45 http://ftpmaster.internal/ubuntu questing/main s390x python3-cairo s390x 1.27.0-2 [120 kB] 113s Get:46 http://ftpmaster.internal/ubuntu questing/main s390x python3-gi-cairo s390x 3.50.0-4build1 [8072 B] 113s Get:47 http://ftpmaster.internal/ubuntu questing/universe s390x python3-portalocker all 2.2.1-1 [17.2 kB] 113s Get:48 http://ftpmaster.internal/ubuntu questing/universe s390x python3-msal-extensions all 1.3.1-1 [18.2 kB] 113s Get:49 http://ftpmaster.internal/ubuntu questing/main s390x python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB] 113s Get:50 http://ftpmaster.internal/ubuntu questing/universe s390x python3-joblib all 1.4.2-3 [205 kB] 113s Get:51 http://ftpmaster.internal/ubuntu questing/universe s390x python3-regex s390x 0.1.20241106-1build1 [304 kB] 113s Get:52 http://ftpmaster.internal/ubuntu questing/universe s390x python3-tqdm all 4.67.1-3 [91.6 kB] 113s Get:53 http://ftpmaster.internal/ubuntu questing/universe s390x python3-nltk all 3.9.1-2 [1006 kB] 113s Get:54 http://ftpmaster.internal/ubuntu questing/main s390x python3-psutil s390x 5.9.8-2build3 [195 kB] 113s Get:55 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pydash all 8.0.3-3 [93.0 kB] 113s Get:56 http://ftpmaster.internal/ubuntu questing/main s390x python3-six all 1.17.0-1 [13.2 kB] 113s Get:57 http://ftpmaster.internal/ubuntu questing/universe s390x python3-ruamel.yaml.clib s390x 0.2.12+ds-1build1 [151 kB] 113s Get:58 http://ftpmaster.internal/ubuntu questing/universe s390x python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 113s Get:59 http://ftpmaster.internal/ubuntu questing/universe s390x python3-strictyaml all 1.6.1-3 [89.1 kB] 113s Get:60 http://ftpmaster.internal/ubuntu questing/universe s390x python3-websocket all 1.8.0-2 [38.5 kB] 113s Get:61 http://ftpmaster.internal/ubuntu questing/universe s390x python3-azure all 20250304+git-1 [15.9 MB] 114s Get:62 http://ftpmaster.internal/ubuntu questing/main s390x python3-jmespath all 1.0.1-1 [21.3 kB] 114s Get:63 http://ftpmaster.internal/ubuntu questing/main s390x python3-botocore all 1.37.9+repack-1 [6982 kB] 114s Get:64 http://ftpmaster.internal/ubuntu questing/main s390x python3-s3transfer all 0.11.2-2 [55.5 kB] 114s Get:65 http://ftpmaster.internal/ubuntu questing/main s390x python3-boto3 all 1.37.9-1 [73.0 kB] 114s Get:66 http://ftpmaster.internal/ubuntu questing/main s390x python3-cachetools all 5.3.3-1 [10.3 kB] 114s Get:67 http://ftpmaster.internal/ubuntu questing/universe s390x python3-execnet all 2.1.1-1 [33.4 kB] 114s Get:68 http://ftpmaster.internal/ubuntu questing/universe s390x python3-mccabe all 0.7.0-1 [8678 B] 114s Get:69 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pycodestyle all 2.12.1-2 [30.2 kB] 114s Get:70 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pyflakes all 3.2.0-3 [53.0 kB] 114s Get:71 http://ftpmaster.internal/ubuntu questing/universe s390x python3-flake8 all 7.1.1-3 [44.0 kB] 114s Get:72 http://ftpmaster.internal/ubuntu questing/universe s390x python3-freezegun all 1.5.1-1.2 [15.9 kB] 114s Get:73 http://ftpmaster.internal/ubuntu questing/universe s390x python3-requests-toolbelt all 1.0.0-4 [37.0 kB] 114s Get:74 http://ftpmaster.internal/ubuntu questing/universe s390x python3-gitlab all 1:4.9.0-1 [75.0 kB] 114s Get:75 http://ftpmaster.internal/ubuntu questing/main s390x python3-pyasn1 all 0.6.1-1 [56.4 kB] 114s Get:76 http://ftpmaster.internal/ubuntu questing/main s390x python3-pyasn1-modules all 0.4.1-2 [80.3 kB] 114s Get:77 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pyu2f all 0.1.5-4 [22.9 kB] 114s Get:78 http://ftpmaster.internal/ubuntu questing/universe s390x python3-responses all 0.25.6-1 [40.5 kB] 114s Get:79 http://ftpmaster.internal/ubuntu questing/universe s390x python3-rsa all 4.9-2 [28.2 kB] 114s Get:80 http://ftpmaster.internal/ubuntu questing/universe s390x python3-google-auth all 2.28.2-3 [91.0 kB] 114s Get:81 http://ftpmaster.internal/ubuntu questing/universe s390x python3-httmock all 1.4.0-5 [6544 B] 114s Get:82 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pyhcl all 0.4.4-6 [43.1 kB] 114s Get:83 http://ftpmaster.internal/ubuntu questing/universe s390x python3-hvac all 2.3.0-3 [88.1 kB] 114s Get:84 http://ftpmaster.internal/ubuntu questing/universe s390x python3-iniconfig all 1.1.1-2 [6024 B] 114s Get:85 http://ftpmaster.internal/ubuntu questing/universe s390x python3-kubernetes all 30.1.0-2 [385 kB] 114s Get:86 http://ftpmaster.internal/ubuntu questing/main s390x python3-lxml s390x 5.3.2-1 [1370 kB] 114s Get:87 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pathspec all 0.12.1-1 [24.5 kB] 114s Get:88 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pluggy all 1.5.0-1 [21.0 kB] 114s Get:89 http://ftpmaster.internal/ubuntu questing/universe s390x python3-proxmoxer all 2.2.0-1 [16.2 kB] 114s Get:90 http://ftpmaster.internal/ubuntu questing/universe s390x python3-py all 1.11.0-4 [72.7 kB] 114s Get:91 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pytest all 8.3.5-1 [252 kB] 114s Get:92 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pytest-forked all 1.6.0-3 [7470 B] 114s Get:93 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pytest-mock all 3.14.0-2 [11.7 kB] 114s Get:94 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pytest-xdist all 3.6.1-1 [33.8 kB] 114s Get:95 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pyvmomi all 8.0.3.0.1-1 [532 kB] 114s Get:96 http://ftpmaster.internal/ubuntu questing-proposed/universe s390x python3-redis all 5.2.1-1 [221 kB] 114s Get:97 http://ftpmaster.internal/ubuntu questing/universe s390x python3-textfsm all 1.1.3-3 [29.3 kB] 114s Get:98 http://ftpmaster.internal/ubuntu questing/main s390x python3-xmltodict all 0.13.0-1 [13.4 kB] 114s Get:99 http://ftpmaster.internal/ubuntu questing/universe s390x yamllint all 1.35.1-2 [43.6 kB] 114s Get:100 http://ftpmaster.internal/ubuntu questing/universe s390x python3-mock all 5.1.0-1 [64.1 kB] 115s Fetched 59.4 MB in 3s (19.9 MB/s) 115s Selecting previously unselected package python3-packaging. 115s (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 ... 81470 files and directories currently installed.) 115s Preparing to unpack .../00-python3-packaging_24.2-1_all.deb ... 115s Unpacking python3-packaging (24.2-1) ... 115s Selecting previously unselected package python3-resolvelib. 115s Preparing to unpack .../01-python3-resolvelib_1.1.0-1_all.deb ... 115s Unpacking python3-resolvelib (1.1.0-1) ... 115s Selecting previously unselected package libsodium23:s390x. 115s Preparing to unpack .../02-libsodium23_1.0.18-1build3_s390x.deb ... 115s Unpacking libsodium23:s390x (1.0.18-1build3) ... 115s Selecting previously unselected package python3-nacl. 115s Preparing to unpack .../03-python3-nacl_1.5.0-7_s390x.deb ... 115s Unpacking python3-nacl (1.5.0-7) ... 115s Selecting previously unselected package python3-paramiko. 115s Preparing to unpack .../04-python3-paramiko_3.5.1-2ubuntu1_all.deb ... 115s Unpacking python3-paramiko (3.5.1-2ubuntu1) ... 115s Selecting previously unselected package python3-dnspython. 115s Preparing to unpack .../05-python3-dnspython_2.7.0-1ubuntu1_all.deb ... 115s Unpacking python3-dnspython (2.7.0-1ubuntu1) ... 115s Selecting previously unselected package ansible-core. 115s Preparing to unpack .../06-ansible-core_2.18.1-4ubuntu1_all.deb ... 115s Unpacking ansible-core (2.18.1-4ubuntu1) ... 115s Selecting previously unselected package ansible. 115s Preparing to unpack .../07-ansible_11.2.0+dfsg-1_all.deb ... 115s Unpacking ansible (11.2.0+dfsg-1) ... 117s Selecting previously unselected package fonts-dejavu-mono. 117s Preparing to unpack .../08-fonts-dejavu-mono_2.37-8_all.deb ... 117s Unpacking fonts-dejavu-mono (2.37-8) ... 117s Selecting previously unselected package fonts-dejavu-core. 117s Preparing to unpack .../09-fonts-dejavu-core_2.37-8_all.deb ... 117s Unpacking fonts-dejavu-core (2.37-8) ... 117s Selecting previously unselected package fontconfig-config. 117s Preparing to unpack .../10-fontconfig-config_2.15.0-2.2ubuntu1_s390x.deb ... 117s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ... 117s Selecting previously unselected package libsecret-common. 117s Preparing to unpack .../11-libsecret-common_0.21.7-1_all.deb ... 117s Unpacking libsecret-common (0.21.7-1) ... 117s Selecting previously unselected package libsecret-1-0:s390x. 117s Preparing to unpack .../12-libsecret-1-0_0.21.7-1_s390x.deb ... 117s Unpacking libsecret-1-0:s390x (0.21.7-1) ... 117s Selecting previously unselected package gir1.2-secret-1:s390x. 117s Preparing to unpack .../13-gir1.2-secret-1_0.21.7-1_s390x.deb ... 117s Unpacking gir1.2-secret-1:s390x (0.21.7-1) ... 117s Selecting previously unselected package liberror-perl. 117s Preparing to unpack .../14-liberror-perl_0.17030-1_all.deb ... 117s Unpacking liberror-perl (0.17030-1) ... 117s Selecting previously unselected package git-man. 117s Preparing to unpack .../15-git-man_1%3a2.48.1-0ubuntu1_all.deb ... 117s Unpacking git-man (1:2.48.1-0ubuntu1) ... 117s Selecting previously unselected package git. 117s Preparing to unpack .../16-git_1%3a2.48.1-0ubuntu1_s390x.deb ... 117s Unpacking git (1:2.48.1-0ubuntu1) ... 117s Selecting previously unselected package libfreetype6:s390x. 117s Preparing to unpack .../17-libfreetype6_2.13.3+dfsg-1_s390x.deb ... 117s Unpacking libfreetype6:s390x (2.13.3+dfsg-1) ... 117s Selecting previously unselected package libfontconfig1:s390x. 117s Preparing to unpack .../18-libfontconfig1_2.15.0-2.2ubuntu1_s390x.deb ... 117s Unpacking libfontconfig1:s390x (2.15.0-2.2ubuntu1) ... 117s Selecting previously unselected package libpixman-1-0:s390x. 117s Preparing to unpack .../19-libpixman-1-0_0.44.0-3_s390x.deb ... 117s Unpacking libpixman-1-0:s390x (0.44.0-3) ... 117s Selecting previously unselected package libxcb-render0:s390x. 117s Preparing to unpack .../20-libxcb-render0_1.17.0-2_s390x.deb ... 117s Unpacking libxcb-render0:s390x (1.17.0-2) ... 117s Selecting previously unselected package libxcb-shm0:s390x. 117s Preparing to unpack .../21-libxcb-shm0_1.17.0-2_s390x.deb ... 117s Unpacking libxcb-shm0:s390x (1.17.0-2) ... 117s Selecting previously unselected package libxrender1:s390x. 117s Preparing to unpack .../22-libxrender1_1%3a0.9.10-1.1build1_s390x.deb ... 117s Unpacking libxrender1:s390x (1:0.9.10-1.1build1) ... 117s Selecting previously unselected package libcairo2:s390x. 117s Preparing to unpack .../23-libcairo2_1.18.4-1_s390x.deb ... 117s Unpacking libcairo2:s390x (1.18.4-1) ... 117s Selecting previously unselected package libcairo-gobject2:s390x. 117s Preparing to unpack .../24-libcairo-gobject2_1.18.4-1_s390x.deb ... 117s Unpacking libcairo-gobject2:s390x (1.18.4-1) ... 117s Selecting previously unselected package libxslt1.1:s390x. 117s Preparing to unpack .../25-libxslt1.1_1.1.39-0exp1ubuntu4_s390x.deb ... 117s Unpacking libxslt1.1:s390x (1.1.39-0exp1ubuntu4) ... 117s Selecting previously unselected package python3-dateutil. 117s Preparing to unpack .../26-python3-dateutil_2.9.0-4_all.deb ... 117s Unpacking python3-dateutil (2.9.0-4) ... 117s Selecting previously unselected package python3-adal. 117s Preparing to unpack .../27-python3-adal_1.2.7-5_all.deb ... 117s Unpacking python3-adal (1.2.7-5) ... 117s Selecting previously unselected package python3-aiohappyeyeballs. 117s Preparing to unpack .../28-python3-aiohappyeyeballs_2.6.1-1_all.deb ... 117s Unpacking python3-aiohappyeyeballs (2.6.1-1) ... 117s Selecting previously unselected package python3-multidict. 117s Preparing to unpack .../29-python3-multidict_6.2.0-2_s390x.deb ... 117s Unpacking python3-multidict (6.2.0-2) ... 117s Selecting previously unselected package python3-yarl. 117s Preparing to unpack .../30-python3-yarl_1.13.1-1build2_s390x.deb ... 117s Unpacking python3-yarl (1.13.1-1build2) ... 117s Selecting previously unselected package python3-async-timeout. 117s Preparing to unpack .../31-python3-async-timeout_5.0.1-1_all.deb ... 117s Unpacking python3-async-timeout (5.0.1-1) ... 117s Selecting previously unselected package python3-frozenlist. 117s Preparing to unpack .../32-python3-frozenlist_1.5.0-1build2_s390x.deb ... 117s Unpacking python3-frozenlist (1.5.0-1build2) ... 117s Selecting previously unselected package python3-aiosignal. 117s Preparing to unpack .../33-python3-aiosignal_1.3.2-1_all.deb ... 117s Unpacking python3-aiosignal (1.3.2-1) ... 117s Selecting previously unselected package python3-aiohttp. 117s Preparing to unpack .../34-python3-aiohttp_3.10.11-1build1_s390x.deb ... 117s Unpacking python3-aiohttp (3.10.11-1build1) ... 117s Selecting previously unselected package python3-avro. 117s Preparing to unpack .../35-python3-avro_1.12.0+dfsg-1_all.deb ... 117s Unpacking python3-avro (1.12.0+dfsg-1) ... 117s Selecting previously unselected package python3-isodate. 117s Preparing to unpack .../36-python3-isodate_0.7.0-1_all.deb ... 117s Unpacking python3-isodate (0.7.0-1) ... 117s Selecting previously unselected package python3-requests-oauthlib. 117s Preparing to unpack .../37-python3-requests-oauthlib_1.3.1-1_all.deb ... 117s Unpacking python3-requests-oauthlib (1.3.1-1) ... 117s Selecting previously unselected package python3-msrest. 117s Preparing to unpack .../38-python3-msrest_0.6.21-5_all.deb ... 117s Unpacking python3-msrest (0.6.21-5) ... 117s Selecting previously unselected package python3-msrestazure. 117s Preparing to unpack .../39-python3-msrestazure_0.6.4-4_all.deb ... 117s Unpacking python3-msrestazure (0.6.4-4) ... 117s Selecting previously unselected package python3-azure-storage. 117s Preparing to unpack .../40-python3-azure-storage_20250304+git-1_all.deb ... 117s Unpacking python3-azure-storage (20250304+git-1) ... 118s Selecting previously unselected package python3-colorama. 118s Preparing to unpack .../41-python3-colorama_0.4.6-4_all.deb ... 118s Unpacking python3-colorama (0.4.6-4) ... 118s Selecting previously unselected package python3-marshmallow. 118s Preparing to unpack .../42-python3-marshmallow_3.26.1-0.2_all.deb ... 118s Unpacking python3-marshmallow (3.26.1-0.2) ... 118s Selecting previously unselected package python3-msal. 118s Preparing to unpack .../43-python3-msal_1.32.0-1_all.deb ... 118s Unpacking python3-msal (1.32.0-1) ... 118s Selecting previously unselected package python3-cairo. 118s Preparing to unpack .../44-python3-cairo_1.27.0-2_s390x.deb ... 118s Unpacking python3-cairo (1.27.0-2) ... 118s Selecting previously unselected package python3-gi-cairo. 118s Preparing to unpack .../45-python3-gi-cairo_3.50.0-4build1_s390x.deb ... 118s Unpacking python3-gi-cairo (3.50.0-4build1) ... 118s Selecting previously unselected package python3-portalocker. 118s Preparing to unpack .../46-python3-portalocker_2.2.1-1_all.deb ... 118s Unpacking python3-portalocker (2.2.1-1) ... 118s Selecting previously unselected package python3-msal-extensions. 118s Preparing to unpack .../47-python3-msal-extensions_1.3.1-1_all.deb ... 118s Unpacking python3-msal-extensions (1.3.1-1) ... 118s Selecting previously unselected package python3-click. 118s Preparing to unpack .../48-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... 118s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... 118s Selecting previously unselected package python3-joblib. 118s Preparing to unpack .../49-python3-joblib_1.4.2-3_all.deb ... 118s Unpacking python3-joblib (1.4.2-3) ... 118s Selecting previously unselected package python3-regex. 118s Preparing to unpack .../50-python3-regex_0.1.20241106-1build1_s390x.deb ... 118s Unpacking python3-regex (0.1.20241106-1build1) ... 118s Selecting previously unselected package python3-tqdm. 118s Preparing to unpack .../51-python3-tqdm_4.67.1-3_all.deb ... 118s Unpacking python3-tqdm (4.67.1-3) ... 118s Selecting previously unselected package python3-nltk. 118s Preparing to unpack .../52-python3-nltk_3.9.1-2_all.deb ... 118s Unpacking python3-nltk (3.9.1-2) ... 118s Selecting previously unselected package python3-psutil. 118s Preparing to unpack .../53-python3-psutil_5.9.8-2build3_s390x.deb ... 118s Unpacking python3-psutil (5.9.8-2build3) ... 118s Selecting previously unselected package python3-pydash. 118s Preparing to unpack .../54-python3-pydash_8.0.3-3_all.deb ... 118s Unpacking python3-pydash (8.0.3-3) ... 118s Selecting previously unselected package python3-six. 118s Preparing to unpack .../55-python3-six_1.17.0-1_all.deb ... 118s Unpacking python3-six (1.17.0-1) ... 118s Selecting previously unselected package python3-ruamel.yaml.clib. 118s Preparing to unpack .../56-python3-ruamel.yaml.clib_0.2.12+ds-1build1_s390x.deb ... 118s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 118s Selecting previously unselected package python3-ruamel.yaml. 118s Preparing to unpack .../57-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 118s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 118s Selecting previously unselected package python3-strictyaml. 118s Preparing to unpack .../58-python3-strictyaml_1.6.1-3_all.deb ... 118s Unpacking python3-strictyaml (1.6.1-3) ... 118s Selecting previously unselected package python3-websocket. 118s Preparing to unpack .../59-python3-websocket_1.8.0-2_all.deb ... 118s Unpacking python3-websocket (1.8.0-2) ... 118s Selecting previously unselected package python3-azure. 118s Preparing to unpack .../60-python3-azure_20250304+git-1_all.deb ... 118s Unpacking python3-azure (20250304+git-1) ... 121s Selecting previously unselected package python3-jmespath. 121s Preparing to unpack .../61-python3-jmespath_1.0.1-1_all.deb ... 121s Unpacking python3-jmespath (1.0.1-1) ... 121s Selecting previously unselected package python3-botocore. 121s Preparing to unpack .../62-python3-botocore_1.37.9+repack-1_all.deb ... 121s Unpacking python3-botocore (1.37.9+repack-1) ... 121s Selecting previously unselected package python3-s3transfer. 121s Preparing to unpack .../63-python3-s3transfer_0.11.2-2_all.deb ... 121s Unpacking python3-s3transfer (0.11.2-2) ... 121s Selecting previously unselected package python3-boto3. 121s Preparing to unpack .../64-python3-boto3_1.37.9-1_all.deb ... 121s Unpacking python3-boto3 (1.37.9-1) ... 121s Selecting previously unselected package python3-cachetools. 121s Preparing to unpack .../65-python3-cachetools_5.3.3-1_all.deb ... 121s Unpacking python3-cachetools (5.3.3-1) ... 121s Selecting previously unselected package python3-execnet. 121s Preparing to unpack .../66-python3-execnet_2.1.1-1_all.deb ... 121s Unpacking python3-execnet (2.1.1-1) ... 121s Selecting previously unselected package python3-mccabe. 121s Preparing to unpack .../67-python3-mccabe_0.7.0-1_all.deb ... 121s Unpacking python3-mccabe (0.7.0-1) ... 122s Selecting previously unselected package python3-pycodestyle. 122s Preparing to unpack .../68-python3-pycodestyle_2.12.1-2_all.deb ... 122s Unpacking python3-pycodestyle (2.12.1-2) ... 122s Selecting previously unselected package python3-pyflakes. 122s Preparing to unpack .../69-python3-pyflakes_3.2.0-3_all.deb ... 122s Unpacking python3-pyflakes (3.2.0-3) ... 122s Selecting previously unselected package python3-flake8. 122s Preparing to unpack .../70-python3-flake8_7.1.1-3_all.deb ... 122s Unpacking python3-flake8 (7.1.1-3) ... 122s Selecting previously unselected package python3-freezegun. 122s Preparing to unpack .../71-python3-freezegun_1.5.1-1.2_all.deb ... 122s Unpacking python3-freezegun (1.5.1-1.2) ... 122s Selecting previously unselected package python3-requests-toolbelt. 122s Preparing to unpack .../72-python3-requests-toolbelt_1.0.0-4_all.deb ... 122s Unpacking python3-requests-toolbelt (1.0.0-4) ... 122s Selecting previously unselected package python3-gitlab. 122s Preparing to unpack .../73-python3-gitlab_1%3a4.9.0-1_all.deb ... 122s Unpacking python3-gitlab (1:4.9.0-1) ... 122s Selecting previously unselected package python3-pyasn1. 122s Preparing to unpack .../74-python3-pyasn1_0.6.1-1_all.deb ... 122s Unpacking python3-pyasn1 (0.6.1-1) ... 122s Selecting previously unselected package python3-pyasn1-modules. 122s Preparing to unpack .../75-python3-pyasn1-modules_0.4.1-2_all.deb ... 122s Unpacking python3-pyasn1-modules (0.4.1-2) ... 122s Selecting previously unselected package python3-pyu2f. 122s Preparing to unpack .../76-python3-pyu2f_0.1.5-4_all.deb ... 122s Unpacking python3-pyu2f (0.1.5-4) ... 122s Selecting previously unselected package python3-responses. 122s Preparing to unpack .../77-python3-responses_0.25.6-1_all.deb ... 122s Unpacking python3-responses (0.25.6-1) ... 122s Selecting previously unselected package python3-rsa. 122s Preparing to unpack .../78-python3-rsa_4.9-2_all.deb ... 122s Unpacking python3-rsa (4.9-2) ... 122s Selecting previously unselected package python3-google-auth. 122s Preparing to unpack .../79-python3-google-auth_2.28.2-3_all.deb ... 122s Unpacking python3-google-auth (2.28.2-3) ... 122s Selecting previously unselected package python3-httmock. 122s Preparing to unpack .../80-python3-httmock_1.4.0-5_all.deb ... 122s Unpacking python3-httmock (1.4.0-5) ... 122s Selecting previously unselected package python3-pyhcl. 122s Preparing to unpack .../81-python3-pyhcl_0.4.4-6_all.deb ... 122s Unpacking python3-pyhcl (0.4.4-6) ... 122s Selecting previously unselected package python3-hvac. 122s Preparing to unpack .../82-python3-hvac_2.3.0-3_all.deb ... 122s Unpacking python3-hvac (2.3.0-3) ... 122s Selecting previously unselected package python3-iniconfig. 122s Preparing to unpack .../83-python3-iniconfig_1.1.1-2_all.deb ... 122s Unpacking python3-iniconfig (1.1.1-2) ... 122s Selecting previously unselected package python3-kubernetes. 122s Preparing to unpack .../84-python3-kubernetes_30.1.0-2_all.deb ... 122s Unpacking python3-kubernetes (30.1.0-2) ... 122s Selecting previously unselected package python3-lxml:s390x. 122s Preparing to unpack .../85-python3-lxml_5.3.2-1_s390x.deb ... 122s Unpacking python3-lxml:s390x (5.3.2-1) ... 122s Selecting previously unselected package python3-pathspec. 122s Preparing to unpack .../86-python3-pathspec_0.12.1-1_all.deb ... 122s Unpacking python3-pathspec (0.12.1-1) ... 122s Selecting previously unselected package python3-pluggy. 122s Preparing to unpack .../87-python3-pluggy_1.5.0-1_all.deb ... 122s Unpacking python3-pluggy (1.5.0-1) ... 122s Selecting previously unselected package python3-proxmoxer. 122s Preparing to unpack .../88-python3-proxmoxer_2.2.0-1_all.deb ... 122s Unpacking python3-proxmoxer (2.2.0-1) ... 122s Selecting previously unselected package python3-py. 122s Preparing to unpack .../89-python3-py_1.11.0-4_all.deb ... 122s Unpacking python3-py (1.11.0-4) ... 122s Selecting previously unselected package python3-pytest. 122s Preparing to unpack .../90-python3-pytest_8.3.5-1_all.deb ... 122s Unpacking python3-pytest (8.3.5-1) ... 122s Selecting previously unselected package python3-pytest-forked. 122s Preparing to unpack .../91-python3-pytest-forked_1.6.0-3_all.deb ... 122s Unpacking python3-pytest-forked (1.6.0-3) ... 122s Selecting previously unselected package python3-pytest-mock. 122s Preparing to unpack .../92-python3-pytest-mock_3.14.0-2_all.deb ... 122s Unpacking python3-pytest-mock (3.14.0-2) ... 122s Selecting previously unselected package python3-pytest-xdist. 122s Preparing to unpack .../93-python3-pytest-xdist_3.6.1-1_all.deb ... 122s Unpacking python3-pytest-xdist (3.6.1-1) ... 122s Selecting previously unselected package python3-pyvmomi. 122s Preparing to unpack .../94-python3-pyvmomi_8.0.3.0.1-1_all.deb ... 122s Unpacking python3-pyvmomi (8.0.3.0.1-1) ... 122s Selecting previously unselected package python3-redis. 122s Preparing to unpack .../95-python3-redis_5.2.1-1_all.deb ... 122s Unpacking python3-redis (5.2.1-1) ... 122s Selecting previously unselected package python3-textfsm. 122s Preparing to unpack .../96-python3-textfsm_1.1.3-3_all.deb ... 122s Unpacking python3-textfsm (1.1.3-3) ... 122s Selecting previously unselected package python3-xmltodict. 122s Preparing to unpack .../97-python3-xmltodict_0.13.0-1_all.deb ... 122s Unpacking python3-xmltodict (0.13.0-1) ... 122s Selecting previously unselected package yamllint. 122s Preparing to unpack .../98-yamllint_1.35.1-2_all.deb ... 122s Unpacking yamllint (1.35.1-2) ... 122s Selecting previously unselected package python3-mock. 122s Preparing to unpack .../99-python3-mock_5.1.0-1_all.deb ... 122s Unpacking python3-mock (5.1.0-1) ... 122s Setting up python3-iniconfig (1.1.1-2) ... 122s Setting up libpixman-1-0:s390x (0.44.0-3) ... 122s Setting up libsodium23:s390x (1.0.18-1build3) ... 122s Setting up python3-requests-toolbelt (1.0.0-4) ... 123s Setting up libxrender1:s390x (1:0.9.10-1.1build1) ... 123s Setting up python3-py (1.11.0-4) ... 123s Setting up python3-joblib (1.4.2-3) ... 123s Setting up python3-cachetools (5.3.3-1) ... 123s Setting up python3-colorama (0.4.6-4) ... 123s Setting up libxcb-render0:s390x (1.17.0-2) ... 123s Setting up python3-tqdm (4.67.1-3) ... 123s Setting up python3-pyflakes (3.2.0-3) ... 123s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 123s Setting up python3-resolvelib (1.1.0-1) ... 123s Setting up python3-msal (1.32.0-1) ... 123s Setting up libxcb-shm0:s390x (1.17.0-2) ... 123s Setting up python3-httmock (1.4.0-5) ... 124s Setting up python3-click (8.2.0+0.really.8.1.8-1) ... 124s Setting up python3-psutil (5.9.8-2build3) ... 124s Setting up python3-multidict (6.2.0-2) ... 124s Setting up python3-frozenlist (1.5.0-1build2) ... 124s Setting up python3-aiosignal (1.3.2-1) ... 124s Setting up python3-mock (5.1.0-1) ... 124s Setting up python3-async-timeout (5.0.1-1) ... 124s Setting up liberror-perl (0.17030-1) ... 124s Setting up python3-six (1.17.0-1) ... 124s Setting up python3-responses (0.25.6-1) ... 124s Setting up python3-pyvmomi (8.0.3.0.1-1) ... 125s Setting up python3-isodate (0.7.0-1) ... 125s Setting up python3-pycodestyle (2.12.1-2) ... 125s Setting up python3-xmltodict (0.13.0-1) ... 125s Setting up python3-packaging (24.2-1) ... 125s Setting up python3-pyu2f (0.1.5-4) ... 125s Setting up libfreetype6:s390x (2.13.3+dfsg-1) ... 125s Setting up python3-avro (1.12.0+dfsg-1) ... 125s Setting up python3-jmespath (1.0.1-1) ... 126s Setting up fonts-dejavu-mono (2.37-8) ... 126s Setting up fonts-dejavu-core (2.37-8) ... 126s Setting up python3-redis (5.2.1-1) ... 126s Setting up python3-aiohappyeyeballs (2.6.1-1) ... 126s Setting up python3-regex (0.1.20241106-1build1) ... 126s Setting up python3-pluggy (1.5.0-1) ... 126s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 126s Setting up python3-dnspython (2.7.0-1ubuntu1) ... 127s Setting up python3-portalocker (2.2.1-1) ... 127s Setting up libxslt1.1:s390x (1.1.39-0exp1ubuntu4) ... 127s Setting up python3-pyasn1 (0.6.1-1) ... 127s Setting up python3-proxmoxer (2.2.0-1) ... 127s Setting up git-man (1:2.48.1-0ubuntu1) ... 127s Setting up python3-dateutil (2.9.0-4) ... 127s Setting up python3-textfsm (1.1.3-3) ... 127s Setting up python3-mccabe (0.7.0-1) ... 127s Setting up python3-execnet (2.1.1-1) ... 127s Setting up python3-pathspec (0.12.1-1) ... 127s Setting up python3-pydash (8.0.3-3) ... 127s Setting up python3-nltk (3.9.1-2) ... 128s Setting up python3-yarl (1.13.1-1build2) ... 128s Setting up python3-pyhcl (0.4.4-6) ... 128s Setting up python3-gitlab (1:4.9.0-1) ... 129s Setting up python3-websocket (1.8.0-2) ... 129s Setting up libsecret-common (0.21.7-1) ... 129s Setting up python3-freezegun (1.5.1-1.2) ... 129s Setting up python3-nacl (1.5.0-7) ... 129s Setting up python3-requests-oauthlib (1.3.1-1) ... 129s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ... 129s Setting up python3-pytest (8.3.5-1) ... 129s Setting up python3-aiohttp (3.10.11-1build1) ... 130s Setting up python3-marshmallow (3.26.1-0.2) ... 130s Setting up ansible-core (2.18.1-4ubuntu1) ... 131s Setting up python3-flake8 (7.1.1-3) ... 131s Setting up python3-msrest (0.6.21-5) ... 131s Setting up python3-pytest-forked (1.6.0-3) ... 131s Setting up python3-strictyaml (1.6.1-3) ... 131s Setting up libsecret-1-0:s390x (0.21.7-1) ... 131s Setting up yamllint (1.35.1-2) ... 131s Setting up gir1.2-secret-1:s390x (0.21.7-1) ... 131s Setting up python3-pyasn1-modules (0.4.1-2) ... 131s Setting up python3-botocore (1.37.9+repack-1) ... 132s Setting up python3-hvac (2.3.0-3) ... 132s Setting up git (1:2.48.1-0ubuntu1) ... 132s Setting up python3-adal (1.2.7-5) ... 132s Setting up python3-pytest-mock (3.14.0-2) ... 132s Setting up python3-lxml:s390x (5.3.2-1) ... 132s Setting up python3-rsa (4.9-2) ... 132s Setting up libfontconfig1:s390x (2.15.0-2.2ubuntu1) ... 132s Setting up python3-msrestazure (0.6.4-4) ... 132s Setting up ansible (11.2.0+dfsg-1) ... 151s Setting up python3-paramiko (3.5.1-2ubuntu1) ... 151s Setting up python3-pytest-xdist (3.6.1-1) ... 151s Setting up python3-s3transfer (0.11.2-2) ... 151s Setting up libcairo2:s390x (1.18.4-1) ... 151s Setting up python3-google-auth (2.28.2-3) ... 151s Setting up python3-boto3 (1.37.9-1) ... 151s Setting up libcairo-gobject2:s390x (1.18.4-1) ... 151s Setting up python3-cairo (1.27.0-2) ... 151s Setting up python3-kubernetes (30.1.0-2) ... 152s Setting up python3-gi-cairo (3.50.0-4build1) ... 152s Setting up python3-msal-extensions (1.3.1-1) ... 152s Setting up python3-azure-storage (20250304+git-1) ... 153s Setting up python3-azure (20250304+git-1) ... 163s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:80: SyntaxWarning: invalid escape sequence '\ ' 163s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 163s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:405: SyntaxWarning: invalid escape sequence '\ ' 163s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 165s /usr/lib/python3/dist-packages/azure/appconfiguration/_generated/models/_models.py:238: SyntaxWarning: invalid escape sequence '\ ' 165s """An error, available when the status is ``Failed``\ , describing why the operation 165s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9067: SyntaxWarning: invalid escape sequence '\ ' 165s """The source port ranges to match for the rule. Valid values are '\ *' (for all ports 0 - 65535), 165s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9235: SyntaxWarning: invalid escape sequence '\ ' 165s using brackets (for example abc[\ *] would match a file named abc*\ ). Note that both and / are 166s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2326: SyntaxWarning: invalid escape sequence '\ ' 166s payload to scoring rule. If not set, a job's labels (sent in the payload as ``job``\ ) and a 166s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2346: SyntaxWarning: invalid escape sequence '\ ' 166s If not set, a job's labels (sent in the payload as ``job``\ ) and a job's worker selectors 168s /usr/lib/python3/dist-packages/azure/mgmt/advisor/aio/operations/_recommendations_operations.py:190: SyntaxWarning: invalid escape sequence '\ ' 168s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 168s /usr/lib/python3/dist-packages/azure/mgmt/advisor/operations/_recommendations_operations.py:303: SyntaxWarning: invalid escape sequence '\ ' 168s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:3917: SyntaxWarning: invalid escape sequence '\ ' 169s Possible Values::code:`
`:code:`
` **Standard**\ :code:`
`:code:`
` 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10212: SyntaxWarning: invalid escape sequence '\ ' 169s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10255: SyntaxWarning: invalid escape sequence '\ ' 169s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10284: SyntaxWarning: invalid escape sequence '\ ' 169s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10320: SyntaxWarning: invalid escape sequence '\ ' 169s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10342: SyntaxWarning: invalid escape sequence '\ ' 169s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10375: SyntaxWarning: invalid escape sequence '\ ' 169s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10396: SyntaxWarning: invalid escape sequence '\ ' 169s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10429: SyntaxWarning: invalid escape sequence '\ ' 169s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14746: SyntaxWarning: invalid escape sequence '\ ' 169s :ivar allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 169s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14771: SyntaxWarning: invalid escape sequence '\ ' 169s :keyword allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 173s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:1420: SyntaxWarning: invalid escape sequence '\ ' 173s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 173s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:2310: SyntaxWarning: invalid escape sequence '\ ' 173s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 173s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:1547: SyntaxWarning: invalid escape sequence '\ ' 173s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 173s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:2524: SyntaxWarning: invalid escape sequence '\ ' 173s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 177s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:624: SyntaxWarning: invalid escape sequence '\ ' 177s and Screenshot to diagnose VM status. **NOTE**\ : If storageUri is being 177s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:3707: SyntaxWarning: invalid escape sequence '\W' 177s characters :code:`
` Has a digit :code:`
` Has a special character (Regex match [\W_]) 182s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16843: SyntaxWarning: invalid escape sequence '\S' 182s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 182s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16916: SyntaxWarning: invalid escape sequence '\S' 182s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 183s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:63: SyntaxWarning: invalid escape sequence '\w' 183s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 183s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:130: SyntaxWarning: invalid escape sequence '\w' 183s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 183s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:224: SyntaxWarning: invalid escape sequence '\w' 183s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 183s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:312: SyntaxWarning: invalid escape sequence '\w' 183s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 183s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:398: SyntaxWarning: invalid escape sequence '\w' 183s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 183s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:543: SyntaxWarning: invalid escape sequence '\w' 183s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 183s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:612: SyntaxWarning: invalid escape sequence '\w' 183s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 183s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:675: SyntaxWarning: invalid escape sequence '\w' 183s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 183s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:738: SyntaxWarning: invalid escape sequence '\w' 183s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 183s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:807: SyntaxWarning: invalid escape sequence '\w' 183s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 186s /usr/lib/python3/dist-packages/azure/mgmt/hybridnetwork/models/_models_py3.py:6032: SyntaxWarning: invalid escape sequence '\ ' 186s :ivar provisioning_state: The provisioning state of the site resource. **TODO**\ : Confirm if 188s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3866: SyntaxWarning: invalid escape sequence '\ ' 188s pattern set glob-style pattern (e.g., '\ *', 'clients/*\ '). Required.""" 188s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3868: SyntaxWarning: invalid escape sequence '\ ' 188s """Give access for ``Read``\ , ``Write`` and ``ReadWrite`` access level. Required. Known values 190s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:169: SyntaxWarning: invalid escape sequence '\ ' 190s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 190s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:1032: SyntaxWarning: invalid escape sequence '\ ' 190s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2542: SyntaxWarning: invalid escape sequence '\R' 199s """Execute Reverse Replication\Reprotect. 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2583: SyntaxWarning: invalid escape sequence '\R' 199s """Execute Reverse Replication\Reprotect. 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2622: SyntaxWarning: invalid escape sequence '\R' 199s """Execute Reverse Replication\Reprotect. 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5397: SyntaxWarning: invalid escape sequence '\L' 199s :ivar lun_id: Ordinal\LunId of the disk for the Azure VM. 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5448: SyntaxWarning: invalid escape sequence '\L' 199s :keyword lun_id: Ordinal\LunId of the disk for the Azure VM. 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8836: SyntaxWarning: invalid escape sequence '\S' 199s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8978: SyntaxWarning: invalid escape sequence '\S' 199s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9510: SyntaxWarning: invalid escape sequence '\S' 199s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9675: SyntaxWarning: invalid escape sequence '\S' 199s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11412: SyntaxWarning: invalid escape sequence '\S' 199s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11541: SyntaxWarning: invalid escape sequence '\S' 199s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12193: SyntaxWarning: invalid escape sequence '\S' 199s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12516: SyntaxWarning: invalid escape sequence '\S' 199s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26323: SyntaxWarning: invalid escape sequence '\S' 199s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26382: SyntaxWarning: invalid escape sequence '\S' 199s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3476: SyntaxWarning: invalid escape sequence '\R' 199s """Execute Reverse Replication\Reprotect. 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3517: SyntaxWarning: invalid escape sequence '\R' 199s """Execute Reverse Replication\Reprotect. 199s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3556: SyntaxWarning: invalid escape sequence '\R' 199s """Execute Reverse Replication\Reprotect. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py:163: SyntaxWarning: invalid escape sequence '\ ' 199s """Get list of applicable ``Reservation``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:377: SyntaxWarning: invalid escape sequence '\ ' 199s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:407: SyntaxWarning: invalid escape sequence '\ ' 199s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:437: SyntaxWarning: invalid escape sequence '\ ' 199s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:583: SyntaxWarning: invalid escape sequence '\ ' 199s """Merges two ``Reservation``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:614: SyntaxWarning: invalid escape sequence '\ ' 199s """Merges two ``Reservation``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:645: SyntaxWarning: invalid escape sequence '\ ' 199s """Merges two ``Reservation``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:721: SyntaxWarning: invalid escape sequence '\ ' 199s """Get ``Reservation``\ s in a given reservation Order. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py:183: SyntaxWarning: invalid escape sequence '\ ' 199s """Get all ``ReservationOrder``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3172: SyntaxWarning: invalid escape sequence '\ ' 199s """List of ``Reservation``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3288: SyntaxWarning: invalid escape sequence '\ ' 199s """List of ``ReservationOrder``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py:239: SyntaxWarning: invalid escape sequence '\ ' 199s """Get list of applicable ``Reservation``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:662: SyntaxWarning: invalid escape sequence '\ ' 199s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:692: SyntaxWarning: invalid escape sequence '\ ' 199s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:722: SyntaxWarning: invalid escape sequence '\ ' 199s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:868: SyntaxWarning: invalid escape sequence '\ ' 199s """Merges two ``Reservation``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:899: SyntaxWarning: invalid escape sequence '\ ' 199s """Merges two ``Reservation``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:930: SyntaxWarning: invalid escape sequence '\ ' 199s """Merges two ``Reservation``\ s. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:1006: SyntaxWarning: invalid escape sequence '\ ' 199s """Get ``Reservation``\ s in a given reservation Order. 199s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_order_operations.py:299: SyntaxWarning: invalid escape sequence '\ ' 199s """Get all ``ReservationOrder``\ s. 203s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:68: SyntaxWarning: invalid escape sequence '\ ' 203s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 203s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:90: SyntaxWarning: invalid escape sequence '\ ' 203s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 203s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1141: SyntaxWarning: invalid escape sequence '\ ' 203s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 203s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1163: SyntaxWarning: invalid escape sequence '\ ' 203s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 206s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2858: SyntaxWarning: invalid escape sequence '\ ' 206s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 206s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2925: SyntaxWarning: invalid escape sequence '\ ' 206s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 208s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_functions_operations.py:595: SyntaxWarning: invalid escape sequence '\ ' 208s properties to include in the response, or "\ *" to include all properties. By default, all 208s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_inputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 208s properties to include in the response, or "\ *" to include all properties. By default, all 208s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_outputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 208s properties to include in the response, or "\ *" to include all properties. By default, all 208s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/models/_stream_analytics_management_client_enums.py:14: SyntaxWarning: invalid escape sequence '\ ' 208s """Authentication Mode. Valid modes are ``ConnectionString``\ , ``Msi`` and 'UserToken'.""" 208s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_functions_operations.py:859: SyntaxWarning: invalid escape sequence '\ ' 208s properties to include in the response, or "\ *" to include all properties. By default, all 208s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_inputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 208s properties to include in the response, or "\ *" to include all properties. By default, all 208s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_outputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 208s properties to include in the response, or "\ *" to include all properties. By default, all 208s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_no_subscription_operations.py:193: SyntaxWarning: invalid escape sequence '\ ' 208s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 208s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_operations.py:194: SyntaxWarning: invalid escape sequence '\ ' 208s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 208s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:177: SyntaxWarning: invalid escape sequence '\ ' 208s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 208s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:540: SyntaxWarning: invalid escape sequence '\ ' 208s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 208s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:582: SyntaxWarning: invalid escape sequence '\ ' 208s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 208s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:622: SyntaxWarning: invalid escape sequence '\ ' 208s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 208s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_no_subscription_operations.py:308: SyntaxWarning: invalid escape sequence '\ ' 208s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 208s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_operations.py:326: SyntaxWarning: invalid escape sequence '\ ' 208s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 208s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:319: SyntaxWarning: invalid escape sequence '\ ' 208s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 208s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:681: SyntaxWarning: invalid escape sequence '\ ' 208s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 208s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:723: SyntaxWarning: invalid escape sequence '\ ' 208s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 208s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:763: SyntaxWarning: invalid escape sequence '\ ' 208s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 208s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6232: SyntaxWarning: invalid escape sequence '\ ' 208s :ivar maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 208s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6288: SyntaxWarning: invalid escape sequence '\ ' 208s :keyword maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 214s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2909: SyntaxWarning: invalid escape sequence '\W' 214s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 214s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2954: SyntaxWarning: invalid escape sequence '\W' 214s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 214s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:1980: SyntaxWarning: invalid escape sequence '\W' 214s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 214s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:2025: SyntaxWarning: invalid escape sequence '\W' 214s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 214s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:2732: SyntaxWarning: invalid escape sequence '\:' 214s attr:\:code:``=:code:``. 214s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:3537: SyntaxWarning: invalid escape sequence '\:' 214s attr:\:code:``=\:code:``. 214s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:4216: SyntaxWarning: invalid escape sequence '\:' 214s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 214s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:6219: SyntaxWarning: invalid escape sequence '\:' 214s attr:\:code:``=:code:``. 214s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7024: SyntaxWarning: invalid escape sequence '\:' 214s attr:\:code:``=\:code:``. 214s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7703: SyntaxWarning: invalid escape sequence '\:' 214s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 215s /usr/lib/python3/dist-packages/azure/servicemanagement/schedulermanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 215s CURRENT_USER\my\CertificateName format. 215s /usr/lib/python3/dist-packages/azure/servicemanagement/servicebusmanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 215s CURRENT_USER\my\CertificateName format. 215s /usr/lib/python3/dist-packages/azure/servicemanagement/servicemanagementservice.py:81: SyntaxWarning: invalid escape sequence '\m' 215s CURRENT_USER\my\CertificateName format. 215s /usr/lib/python3/dist-packages/azure/servicemanagement/sqldatabasemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 215s CURRENT_USER\my\CertificateName format. 215s /usr/lib/python3/dist-packages/azure/servicemanagement/websitemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 215s CURRENT_USER\my\CertificateName format. 216s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:110: SyntaxWarning: invalid escape sequence '\d' 216s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 216s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:1328: SyntaxWarning: invalid escape sequence '\d' 216s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..). 216s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4218: SyntaxWarning: invalid escape sequence '\d' 216s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 216s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4280: SyntaxWarning: invalid escape sequence '\d' 216s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 216s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:18198: SyntaxWarning: invalid escape sequence '\d' 216s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 216s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19096: SyntaxWarning: invalid escape sequence '\d' 216s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with 216s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19185: SyntaxWarning: invalid escape sequence '\d' 216s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 216s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19749: SyntaxWarning: invalid escape sequence '\d' 216s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 216s Processing triggers for libc-bin (2.41-6ubuntu1) ... 216s Processing triggers for man-db (2.13.0-1) ... 218s autopkgtest [14:53:41]: test unit-tests-stable.py: [----------------------- 218s 218s 218s 218s ############################################################ 218s ############################################################ 218s #### Running tests in ansible_collections/cloud/common 218s ############################################################ 218s ############################################################ 219s Unit test module_utils with Python 3.13 219s ============================= test session starts ============================== 219s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 219s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cloud/common 219s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 219s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 219s created: 2/2 workers 219s 2 workers [19 items] 219s 221s ................... [100%] 221s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cloud/common/tests/output/junit/python3.13-module_utils-units.xml - 221s ============================== 19 passed in 1.83s ============================== 221s Skipping ansible_collections/junipernetworks/junos 221s 221s 221s 221s ############################################################ 221s ############################################################ 221s #### Running tests in ansible_collections/arista/eos 221s ############################################################ 221s ############################################################ 221s Unit test controller with Python 3.13 222s ============================= test session starts ============================== 222s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 222s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/arista/eos 222s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 222s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 222s created: 2/2 workers 222s 2 workers [307 items] 222s 223s ........................................................................ [ 23%] 224s ........................................................................ [ 46%] 225s ........................................................................ [ 70%] 227s ........................................................................ [ 93%] 227s ................... [100%] 227s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/arista/eos/tests/output/junit/python3.13-controller-units.xml - 227s ============================= 307 passed in 5.71s ============================== 227s 227s 227s 227s ############################################################ 227s ############################################################ 227s #### Running tests in ansible_collections/microsoft/ad 227s ############################################################ 227s ############################################################ 227s Unit test controller with Python 3.13 228s ============================= test session starts ============================== 228s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 228s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/microsoft/ad 228s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 228s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 228s created: 2/2 workers 228s 2 workers [118 items] 228s 228s ........................................................................ [ 61%] 236s ..................ss.......................... [100%] 236s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/microsoft/ad/tests/output/junit/python3.13-controller-units.xml - 236s =========================== short test summary info ============================ 236s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_laps.py:9: could not import 'dpapi_ng': No module named 'dpapi_ng' 236s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_schema.py:8: could not import 'sansldap': No module named 'sansldap' 236s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_certificate.py:179: Hash algorithm is unavailable: Hash algorithm "md5" not supported for signatures 236s SKIPPED [1] tests/unit/plugins/plugin_utils/_ldap/test_certificate.py:179: Hash algorithm is unavailable: Hash algorithm "sha1" not supported for signatures 236s ======================== 116 passed, 4 skipped in 8.00s ======================== 236s Skipping ansible_collections/vmware/vmware 236s Skipping ansible_collections/infoblox/nios_modules 236s 236s 236s 236s ############################################################ 236s ############################################################ 236s #### Running tests in ansible_collections/vultr/cloud 236s ############################################################ 236s ############################################################ 236s Unit test controller with Python 3.13 237s ============================= test session starts ============================== 237s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 237s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vultr/cloud 237s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 237s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 237s created: 2/2 workers 237s 2 workers [15 items] 237s 237s ............... [100%] 237s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vultr/cloud/tests/output/junit/python3.13-controller-units.xml - 237s ============================== 15 passed in 0.75s ============================== 237s Skipping ansible_collections/splunk/es 237s 237s 237s 237s ############################################################ 237s ############################################################ 237s #### Running tests in ansible_collections/community/digitalocean 237s ############################################################ 237s ############################################################ 237s Unit test modules with Python 3.13 238s ============================= test session starts ============================== 238s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 238s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/digitalocean 238s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 238s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 238s created: 2/2 workers 238s 2 workers [32 items] 238s 238s ................................ [100%] 238s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/digitalocean/tests/output/junit/python3.13-modules-units.xml - 238s ============================== 32 passed in 0.96s ============================== 238s Unit test controller with Python 3.13 239s ============================= test session starts ============================== 239s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 239s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/digitalocean 239s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 239s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 239s created: 2/2 workers 239s 2 workers [14 items] 239s 239s .............. [100%] 239s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/digitalocean/tests/output/junit/python3.13-controller-units.xml - 239s ============================== 14 passed in 0.72s ============================== 240s 240s 240s 240s ############################################################ 240s ############################################################ 240s #### Running tests in ansible_collections/community/hashi_vault 240s ############################################################ 240s ############################################################ 240s Unit test modules with Python 3.13 241s ============================= test session starts ============================== 241s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 241s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hashi_vault 241s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 241s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 241s created: 2/2 workers 241s 2 workers [281 items] 241s 241s ........................................................................ [ 25%] 242s ........................................................................ [ 51%] 243s ........................................................................ [ 76%] 243s ................................................................. [100%] 243s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-modules-units.xml - 243s ============================= 281 passed in 3.37s ============================== 243s Unit test module_utils with Python 3.13 245s ============================= test session starts ============================== 245s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 245s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hashi_vault 245s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 245s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 245s created: 2/2 workers 245s 2 workers [1436 items] 245s 245s ........................................................................ [ 5%] 245s ........................................................................ [ 10%] 246s ........................................................................ [ 15%] 246s ........................................................................ [ 20%] 247s ........................................................................ [ 25%] 247s ........................................................................ [ 30%] 248s ........................................................................ [ 35%] 249s ........................................................................ [ 40%] 249s ........................................................................ [ 45%] 249s ........................................................................ [ 50%] 250s ........................................................................ [ 55%] 250s ........................................................................ [ 60%] 250s ........................................................................ [ 65%] 251s ........................................................................ [ 70%] 251s ........................................................................ [ 75%] 251s ........................................................................ [ 80%] 252s ........................................................................ [ 85%] 252s ........................................................................ [ 90%] 252s ........................................................................ [ 95%] 253s .................................................................... [100%] 253s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-module_utils-units.xml - 253s ============================= 1436 passed in 8.89s ============================= 253s Unit test controller with Python 3.13 254s ============================= test session starts ============================== 254s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 254s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hashi_vault 254s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 254s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 254s created: 2/2 workers 254s 2 workers [619 items] 254s 255s ........................................................................ [ 11%] 256s ........................................................................ [ 23%] 257s ........................................................................ [ 34%] 257s ........................................................................ [ 46%] 258s ........................................................................ [ 58%] 260s ........................................................................ [ 69%] 260s ........................................................................ [ 81%] 261s ........................................................................ [ 93%] 261s ........................................... [100%] 261s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hashi_vault/tests/output/junit/python3.13-controller-units.xml - 261s ============================= 619 passed in 7.96s ============================== 261s 261s 261s 261s ############################################################ 261s ############################################################ 261s #### Running tests in ansible_collections/community/okd 261s ############################################################ 261s ############################################################ 262s Unit test modules with Python 3.13 263s ============================= test session starts ============================== 263s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 263s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/okd 263s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 263s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 263s created: 2/2 workers 263s 2 workers [13 items] 263s 263s ............. [100%] 263s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/okd/tests/output/junit/python3.13-modules-units.xml - 263s ============================== 13 passed in 0.95s ============================== 263s Unit test module_utils with Python 3.13 264s ============================= test session starts ============================== 264s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 264s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/okd 264s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 264s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 264s created: 2/2 workers 264s 2 workers [15 items] 264s 264s .s.s........... [100%] 264s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/okd/tests/output/junit/python3.13-module_utils-units.xml - 264s =========================== short test summary info ============================ 264s SKIPPED [2] tests/unit/plugins/module_utils/test_ldap_dn.py: This test requires the python-ldap library 264s ======================== 13 passed, 2 skipped in 0.51s ========================= 264s 264s 264s 264s ############################################################ 264s ############################################################ 264s #### Running tests in ansible_collections/community/vmware 264s ############################################################ 264s ############################################################ 264s Unit test controller with Python 3.13 265s ============================= test session starts ============================== 265s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 265s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/vmware 265s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 265s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 265s created: 2/2 workers 265s 2 workers [32 items] 265s 265s ................................ [100%] 265s =============================== warnings summary =============================== 265s tests/unit/module_utils/test_vmware.py::test_required_params[validate_certs] 265s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module0-testcase0] 265s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module5-testcase5] 265s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module7-testcase7] 265s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/vmware/plugins/module_utils/vmware.py:752: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 265s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 265s 265s tests/unit/module_utils/test_vmware.py::test_required_params[valid_http_proxy] 265s tests/unit/modules/cloud/vmware/test_vmware_guest.py::test_vmware_guest_with_parameters[patch_ansible_module6-testcase6] 265s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/vmware/plugins/module_utils/vmware.py:757: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 265s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 265s 265s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 265s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/vmware/tests/output/junit/python3.13-controller-units.xml - 265s ======================== 32 passed, 6 warnings in 0.95s ======================== 265s 265s 265s 265s ############################################################ 265s ############################################################ 265s #### Running tests in ansible_collections/community/ciscosmb 265s ############################################################ 265s ############################################################ 265s Unit test modules with Python 3.13 266s ============================= test session starts ============================== 266s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 266s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/ciscosmb 266s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 266s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 266s created: 2/2 workers 266s 2 workers [56 items] 266s 267s ........................................................ [100%] 267s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/ciscosmb/tests/output/junit/python3.13-modules-units.xml - 267s ============================== 56 passed in 0.98s ============================== 267s 267s 267s 267s ############################################################ 267s ############################################################ 267s #### Running tests in ansible_collections/community/aws 267s ############################################################ 267s ############################################################ 267s Unit test modules with Python 3.13 268s ============================= test session starts ============================== 268s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 268s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/aws 268s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 268s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 268s created: 2/2 workers 268s 2 workers [33 items] 268s 268s ................................. [100%] 268s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/aws/tests/output/junit/python3.13-modules-units.xml - 268s =========================== short test summary info ============================ 268s SKIPPED [1] ../../amazon/aws/tests/unit/utils/amazon_placebo_fixtures.py:16: could not import 'placebo': No module named 'placebo' 268s ======================== 33 passed, 1 skipped in 0.94s ========================= 268s Unit test controller with Python 3.13 269s ============================= test session starts ============================== 269s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 269s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/aws 269s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 269s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 269s created: 2/2 workers 269s 2 workers [52 items] 269s 270s .................................................... [100%] 270s =============================== warnings summary =============================== 270s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_start_session 270s /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:85: PytestUnraisableExceptionWarning: Exception ignored in: 270s 270s Traceback (most recent call last): 270s File "/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/aws/plugins/connection/aws_ssm.py", line 496, in __del__ 270s self.close() 270s ~~~~~~~~~~^^ 270s File "/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/aws/plugins/connection/aws_ssm.py", line 961, in close 270s self._vvv(f"CLOSING SSM CONNECTION TO: {self.instance_id}") 270s ^^^^^^^^^^^^^^^^ 270s AttributeError: 'Connection' object has no attribute 'instance_id' 270s 270s warnings.warn(pytest.PytestUnraisableExceptionWarning(msg)) 270s 270s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_exec_command 270s /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`? 270s warnings.warn( 270s 270s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_wrap_command 270s /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`? 270s warnings.warn( 270s 270s tests/unit/plugins/connection/test_aws_ssm.py::TestConnectionBaseClass::test_plugins_connection_aws_ssm_post_process 270s /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`? 270s warnings.warn( 270s 270s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 270s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/aws/tests/output/junit/python3.13-controller-units.xml - 270s ======================== 52 passed, 4 warnings in 1.24s ======================== 270s Skipping ansible_collections/community/general 270s 270s 270s 270s ############################################################ 270s ############################################################ 270s #### Running tests in ansible_collections/community/crypto 270s ############################################################ 270s ############################################################ 270s Unit test modules with Python 3.13 271s ============================= test session starts ============================== 271s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 271s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/crypto 271s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 271s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 271s created: 2/2 workers 271s 2 workers [76 items] 271s 271s ........................................................................ [ 94%] 271s .... [100%] 271s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/crypto/tests/output/junit/python3.13-modules-units.xml - 271s ============================== 76 passed in 0.78s ============================== 271s Unit test module_utils with Python 3.13 272s ============================= test session starts ============================== 272s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 272s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/crypto 272s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 272s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 272s created: 2/2 workers 272s 2 workers [520 items] 272s 274s ........................................................................ [ 13%] 275s ......................................sssssss........................... [ 27%] 275s ........................................................................ [ 41%] 276s ........................................................................ [ 55%] 281s ...s.sss.ss.ss.......................................................... [ 69%] 285s ........................................................................ [ 83%] 301s ........................................................................ [ 96%] 301s ................ [100%] 301s =============================== warnings summary =============================== 301s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_default_key_params[dsa-None-None-None] 301s /tmp/autopkgtest.HRV60t/build.QGA/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 301s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment) 301s 301s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_default_key_params[dsa-None-None-None] 301s /tmp/autopkgtest.HRV60t/build.QGA/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 301s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment) 301s 301s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 301s /tmp/autopkgtest.HRV60t/build.QGA/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 301s assert OpensshKeypair.generate() != OpensshKeypair.generate(keytype='dsa') 301s 301s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 301s /tmp/autopkgtest.HRV60t/build.QGA/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 301s 'pair': OpensshKeypair.generate(keytype='dsa', passphrase='change_me'.encode('UTF-8')), 301s 301s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 301s /tmp/autopkgtest.HRV60t/build.QGA/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. 301s privatekey = privatekey_loader( 301s 301s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 301s /tmp/autopkgtest.HRV60t/build.QGA/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. 301s publickey = publickey_loader( 301s 301s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 301s /tmp/autopkgtest.HRV60t/build.QGA/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 301s loaded_dsa_key = OpensshKeypair.load(path=keys['dsa']['filename'], passphrase='change_me'.encode('UTF-8')) 301s 301s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 301s /tmp/autopkgtest.HRV60t/build.QGA/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 301s loaded_dsa_key.update_passphrase('change_me_again'.encode('UTF-8')) 301s 301s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_keypair_comparison 301s /tmp/autopkgtest.HRV60t/build.QGA/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 301s loaded_dsa_key.update_passphrase('change_me'.encode('UTF-8')) 301s 301s tests/unit/plugins/module_utils/test_time.py: 16 warnings 301s /tmp/autopkgtest.HRV60t/build.QGA/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). 301s return datetime.datetime.utcfromtimestamp(timestamp) 301s 301s tests/unit/plugins/module_utils/openssh/test_cryptography.py::test_valid_user_key_params[dsa-1024-change_me-comment] 301s /tmp/autopkgtest.HRV60t/build.QGA/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 301s pair = OpensshKeypair.generate(keytype=keytype, size=size, passphrase=passphrase, comment=comment) 301s 301s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 301s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/crypto/tests/output/junit/python3.13-module_utils-units.xml - 301s =========================== short test summary info ============================ 301s SKIPPED [15] tests/unit/plugins/module_utils/crypto/test_asn1.py:78: unconditional skip 301s ================ 505 passed, 15 skipped, 26 warnings in 30.01s ================= 301s Skipping ansible_collections/community/hrobot 301s 301s 301s 301s ############################################################ 301s ############################################################ 301s #### Running tests in ansible_collections/community/sap_libs 301s ############################################################ 301s ############################################################ 301s Unit test modules with Python 3.13 302s ============================= test session starts ============================== 302s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 302s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/sap_libs 302s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 302s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 302s created: 2/2 workers 302s 2 workers [49 items] 302s 303s ................................................. [100%] 303s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/sap_libs/tests/output/junit/python3.13-modules-units.xml - 303s ============================== 49 passed in 0.75s ============================== 303s 303s 303s 303s ############################################################ 303s ############################################################ 303s #### Running tests in ansible_collections/community/network 303s ############################################################ 303s ############################################################ 303s Unit test modules with Python 3.13 306s ============================= test session starts ============================== 306s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 306s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/network 306s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 306s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 306s created: 2/2 workers 306s 2 workers [930 items] 306s 307s ........................................................................ [ 7%] 307s ........................................................................ [ 15%] 308s ........................................................................ [ 23%] 308s ........................................................................ [ 30%] 309s ........................................................................ [ 38%] 309s ........................................................................ [ 46%] 310s ........................................................................ [ 54%] 311s ........................................................................ [ 61%] 312s .........................................................ssss.sss.sss.ss [ 69%] 312s s.sss.sss.ssss.ssss.ssss.ssss.sssss.sss.ssss.ssss.sssss.sssss........... [ 77%] 312s ........................................................................ [ 85%] 313s ........................................................................ [ 92%] 313s .................................................................. [100%] 313s =============================== warnings summary =============================== 313s tests/unit/plugins/modules/test_ce_is_is_instance.py::TestCloudEngineLacpModule::test_isis_instance_present 313s tests/unit/plugins/modules/test_ce_is_is_instance.py::TestCloudEngineLacpModule::test_isis_instance_present 313s /tmp/autopkgtest.HRV60t/build.QGA/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. 313s if glb: 313s 313s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_absent 313s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_absent 313s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_present 313s tests/unit/plugins/modules/test_ce_is_is_interface.py::TestCloudEngineLacpModule::test_isis_interface_present 313s /tmp/autopkgtest.HRV60t/build.QGA/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. 313s if glb: 313s 313s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 313s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/network/tests/output/junit/python3.13-modules-units.xml - 313s =========================== short test summary info ============================ 313s SKIPPED [61] tests/unit/plugins/modules/test_nuage_vspk.py: Nuage Ansible modules requires Python 2.7 313s ================= 869 passed, 61 skipped, 6 warnings in 10.33s ================= 313s Unit test module_utils with Python 3.13 314s ============================= test session starts ============================== 314s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 314s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/network 314s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 314s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 314s created: 2/2 workers 314s 2 workers [172 items] 314s 315s ........................................................................ [ 41%] 315s ........................................................................ [ 83%] 315s ............................ [100%] 315s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/network/tests/output/junit/python3.13-module_utils-units.xml - 315s ============================= 172 passed in 1.81s ============================== 315s Unit test controller with Python 3.13 316s ============================= test session starts ============================== 316s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 316s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/network 316s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 316s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 316s created: 2/2 workers 316s 2 workers [50 items] 316s 317s .................................................. [100%] 317s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/network/tests/output/junit/python3.13-controller-units.xml - 317s ============================== 50 passed in 0.99s ============================== 317s Skipping ansible_collections/community/library_inventory_filtering_v1 317s Skipping ansible_collections/community/dns 317s 317s 317s 317s ############################################################ 317s ############################################################ 317s #### Running tests in ansible_collections/community/rabbitmq 317s ############################################################ 317s ############################################################ 317s Unit test controller with Python 3.13 318s ============================= test session starts ============================== 318s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 318s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/rabbitmq 318s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 318s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 318s created: 2/2 workers 318s 2 workers [30 items] 318s 318s .............................. [100%] 318s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/rabbitmq/tests/output/junit/python3.13-controller-units.xml - 318s ============================== 30 passed in 0.75s ============================== 318s 318s 318s 318s ############################################################ 318s ############################################################ 318s #### Running tests in ansible_collections/community/windows 318s ############################################################ 318s ############################################################ 318s Unit test controller with Python 3.13 319s ============================= test session starts ============================== 319s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 319s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/windows 319s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 319s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 319s created: 2/2 workers 319s 2 workers [32 items] 319s 320s ................................ [100%] 320s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/windows/tests/output/junit/python3.13-controller-units.xml - 320s ============================== 32 passed in 1.00s ============================== 320s 320s 320s 320s ############################################################ 320s ############################################################ 320s #### Running tests in ansible_collections/community/grafana 320s ############################################################ 320s ############################################################ 320s Unit test controller with Python 3.13 320s ============================= test session starts ============================== 320s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 320s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/grafana 320s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 320s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 320s created: 2/2 workers 320s 2 workers [31 items] 320s 321s ............................... [100%] 321s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/grafana/tests/output/junit/python3.13-controller-units.xml - 321s ============================== 31 passed in 0.71s ============================== 321s 321s 321s 321s ############################################################ 321s ############################################################ 321s #### Running tests in ansible_collections/community/docker 321s ############################################################ 321s ############################################################ 321s Unit test modules with Python 3.13 322s ============================= test session starts ============================== 322s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 322s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/docker 322s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 322s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 322s created: 2/2 workers 322s 2 workers [27 items] 322s 324s ........................... [100%] 324s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/docker/tests/output/junit/python3.13-modules-units.xml - 324s ============================== 27 passed in 2.78s ============================== 324s Unit test module_utils with Python 3.13 325s ============================= test session starts ============================== 325s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 325s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/docker 325s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 325s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 325s created: 2/2 workers 325s 2 workers [551 items] 325s 325s ...............................................s.s.ss.ss.s.s............ [ 13%] 326s .........s.s.ss.s.........s............................................. [ 26%] 326s ............s.................................................s......... [ 39%] 326s ...............................s........................................ [ 52%] 327s ........................................................................ [ 65%] 327s ........................................................................ [ 78%] 327s ........................................................................ [ 91%] 328s ............................................... [100%] 328s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/docker/tests/output/junit/python3.13-module_utils-units.xml - 328s =========================== short test summary info ============================ 328s 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. 328s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:99: match_hostname is not available 328s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:92: match_hostname is not available 328s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:95: match_hostname is not available 328s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:86: match_hostname is not available 328s SKIPPED [1] tests/unit/plugins/module_utils/_api/transport/test_ssladapter.py:89: match_hostname is not available 328s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_build.py:254: Backslash patterns only on Windows 328s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_build.py:276: Backslash patterns only on Windows 328s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_config.py:76: condition: sys.platform != 'win32' 328s SKIPPED [1] tests/unit/plugins/module_utils/_api/utils/test_utils.py:471: shlex doesn't support bytes in py3 328s ======================= 534 passed, 17 skipped in 3.38s ======================== 328s Unit test controller with Python 3.13 329s ============================= test session starts ============================== 329s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 329s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/docker 329s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 329s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 329s created: 2/2 workers 329s 2 workers [16 items] 329s 329s ................ [100%] 329s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/docker/tests/output/junit/python3.13-controller-units.xml - 329s ============================== 16 passed in 0.85s ============================== 329s 329s 329s 329s ############################################################ 329s ############################################################ 329s #### Running tests in ansible_collections/community/postgresql 329s ############################################################ 329s ############################################################ 329s Unit test modules with Python 3.13 330s ============================= test session starts ============================== 330s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 330s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/postgresql 330s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 330s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 330s created: 2/2 workers 330s 2 workers [30 items] 330s 330s .............................. [100%] 330s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/postgresql/tests/output/junit/python3.13-modules-units.xml - 330s ============================== 30 passed in 0.62s ============================== 330s Unit test module_utils with Python 3.13 331s ============================= test session starts ============================== 331s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 331s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/postgresql 331s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 331s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 331s created: 2/2 workers 331s 2 workers [41 items] 331s 331s ......................................... [100%] 331s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/postgresql/tests/output/junit/python3.13-module_utils-units.xml - 331s ============================== 41 passed in 0.75s ============================== 331s 331s 331s 331s ############################################################ 331s ############################################################ 331s #### Running tests in ansible_collections/community/mysql 331s ############################################################ 331s ############################################################ 331s Unit test modules with Python 3.13 332s ============================= test session starts ============================== 332s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 332s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/mysql 332s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 332s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 332s created: 2/2 workers 332s 2 workers [43 items] 332s 332s ........................................... [100%] 332s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/mysql/tests/output/junit/python3.13-modules-units.xml - 332s ============================== 43 passed in 0.66s ============================== 332s Unit test module_utils with Python 3.13 333s ============================= test session starts ============================== 333s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 333s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/mysql 333s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 333s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 333s created: 2/2 workers 333s 2 workers [84 items] 333s 333s ........................................................................ [ 85%] 333s ............ [100%] 333s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/mysql/tests/output/junit/python3.13-module_utils-units.xml - 333s ============================== 84 passed in 0.81s ============================== 333s 333s 333s 333s ############################################################ 333s ############################################################ 333s #### Running tests in ansible_collections/community/libvirt 333s ############################################################ 333s ############################################################ 333s Unit test controller with Python 3.13 334s ============================= test session starts ============================== 334s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 334s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/libvirt 334s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 334s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 334s created: 2/2 workers 334s 2 workers [4 items] 334s 334s .... [100%] 334s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/libvirt/tests/output/junit/python3.13-controller-units.xml - 334s ============================== 4 passed in 0.43s =============================== 334s 334s 334s 334s ############################################################ 334s ############################################################ 334s #### Running tests in ansible_collections/community/routeros 334s ############################################################ 334s ############################################################ 334s Unit test modules with Python 3.13 335s ============================= test session starts ============================== 335s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 335s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/routeros 335s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 335s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 335s created: 2/2 workers 335s 2 workers [115 items] 335s 336s ........................................................................ [ 62%] 336s ........................................... [100%] 336s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/routeros/tests/output/junit/python3.13-modules-units.xml - 336s ============================= 115 passed in 1.44s ============================== 336s Unit test module_utils with Python 3.13 337s ============================= test session starts ============================== 337s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 337s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/routeros 337s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 337s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 337s created: 2/2 workers 337s 2 workers [146 items] 337s 337s ........................................................................ [ 49%] 338s ........................................................................ [ 98%] 338s .. [100%] 338s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/routeros/tests/output/junit/python3.13-module_utils-units.xml - 338s ============================= 146 passed in 1.23s ============================== 338s Skipping ansible_collections/ngine_io/cloudstack 338s 338s 338s 338s ############################################################ 338s ############################################################ 338s #### Running tests in ansible_collections/hetzner/hcloud 338s ############################################################ 338s ############################################################ 338s Unit test controller with Python 3.13 339s ============================= test session starts ============================== 339s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 339s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/hetzner/hcloud 339s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 339s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 339s created: 2/2 workers 339s 2 workers [30 items] 339s 339s .............................. [100%] 339s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/hetzner/hcloud/tests/output/junit/python3.13-controller-units.xml - 339s ============================== 30 passed in 0.88s ============================== 339s 339s 339s 339s ############################################################ 339s ############################################################ 339s #### Running tests in ansible_collections/cisco/iosxr 339s ############################################################ 339s ############################################################ 339s Unit test controller with Python 3.13 341s ============================= test session starts ============================== 341s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 341s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/iosxr 341s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 341s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 341s created: 2/2 workers 341s 2 workers [310 items] 341s 342s ........................................................................ [ 23%] 344s ........................................................................ [ 46%] 346s ........................................................................ [ 69%] 348s ........................................................................ [ 92%] 349s ...................... [100%] 349s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/iosxr/tests/output/junit/python3.13-controller-units.xml - 349s ============================= 310 passed in 9.36s ============================== 349s Skipping ansible_collections/cisco/aci 349s Skipping ansible_collections/cisco/dnac 349s 349s 349s 349s ############################################################ 349s ############################################################ 349s #### Running tests in ansible_collections/cisco/nxos 349s ############################################################ 349s ############################################################ 349s Unit test controller with Python 3.13 351s ============================= test session starts ============================== 351s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 351s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/nxos 351s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 351s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 351s created: 2/2 workers 351s 2 workers [773 items] 351s 352s ........................................................................ [ 9%] 354s ........................................................................ [ 18%] 355s ........................................................................ [ 27%] 360s ........................................................................ [ 37%] 362s ........................................................................ [ 46%] 364s ........................................................................ [ 55%] 365s ........................................................................ [ 65%] 367s ........................................................................ [ 74%] 369s ........................................................................ [ 83%] 370s ........................................................................ [ 93%] 371s ..................................................... [100%] 371s =============================== warnings summary =============================== 371s tests/unit/modules/network/nxos/test_nxos_acls.py: 91 warnings 371s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:270: DeprecationWarning: 'count' is passed as positional argument 371s ace = re.sub(seq, "", ace, 1) 371s 371s tests/unit/modules/network/nxos/test_nxos_acls.py: 84 warnings 371s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:279: DeprecationWarning: 'count' is passed as positional argument 371s ace = re.sub(grant, "", ace, 1) 371s 371s tests/unit/modules/network/nxos/test_nxos_acls.py: 84 warnings 371s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:287: DeprecationWarning: 'count' is passed as positional argument 371s ace = re.sub(pro, "", ace, 1) 371s 371s tests/unit/modules/network/nxos/test_nxos_acls.py: 168 warnings 371s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:117: DeprecationWarning: 'count' is passed as positional argument 371s ace = re.sub(option, "", ace, 1) 371s 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_ranges 371s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:142: DeprecationWarning: 'count' is passed as positional argument 371s ace = re.sub(range_substring, "", ace, 1) 371s 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 371s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:116: DeprecationWarning: 'count' is passed as positional argument 371s ace = re.sub("{0}".format(wb), "", ace, 1) 371s 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 371s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:126: DeprecationWarning: 'count' is passed as positional argument 371s ace = re.sub(port_pro.group(1), "", ace, 1) 371s 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_gathered 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 371s tests/unit/modules/network/nxos/test_nxos_acls.py::TestNxosAclsModule::test_nxos_acls_parse_remark 371s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/nxos/plugins/module_utils/network/nxos/facts/acls/acls.py:127: DeprecationWarning: 'count' is passed as positional argument 371s ace = re.sub(port_pro.group(2), "", ace, 1) 371s 371s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 371s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/nxos/tests/output/junit/python3.13-controller-units.xml - 371s ====================== 773 passed, 440 warnings in 21.47s ====================== 371s 371s 371s 371s ############################################################ 371s ############################################################ 371s #### Running tests in ansible_collections/cisco/ios 371s ############################################################ 371s ############################################################ 371s Unit test controller with Python 3.13 373s ============================= test session starts ============================== 373s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 373s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/ios 373s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 373s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 373s created: 2/2 workers 373s 2 workers [425 items] 373s 374s ........................................................................ [ 16%] 376s ........................................................................ [ 33%] 378s ........................................................................ [ 50%] 384s ........................................................................ [ 67%] 387s ........................................................................ [ 84%] 416s ................................................................. [100%] 416s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/ios/tests/output/junit/python3.13-controller-units.xml - 416s ============================= 425 passed in 43.64s ============================= 416s 416s 416s 416s ############################################################ 416s ############################################################ 416s #### Running tests in ansible_collections/cisco/asa 416s ############################################################ 416s ############################################################ 416s Unit test controller with Python 3.13 417s ============================= test session starts ============================== 417s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 417s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/asa 417s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 417s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 417s created: 2/2 workers 417s 2 workers [21 items] 417s 421s ..................... [100%] 421s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/asa/tests/output/junit/python3.13-controller-units.xml - 421s ============================== 21 passed in 4.58s ============================== 421s 421s 421s 421s ############################################################ 421s ############################################################ 421s #### Running tests in ansible_collections/amazon/aws 421s ############################################################ 421s ############################################################ 421s Unit test modules 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.HRV60t/build.QGA/src/ansible_collections/amazon/aws 422s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 422s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 422s created: 2/2 workers 422s 2 workers [348 items] 422s 422s ........................................................................ [ 20%] 423s ........................................................................ [ 41%] 423s ........................................................................ [ 62%] 424s ........................................................................ [ 82%] 424s ............................................................ [100%] 424s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/amazon/aws/tests/output/junit/python3.13-modules-units.xml - 424s =========================== short test summary info ============================ 424s SKIPPED [1] tests/unit/utils/amazon_placebo_fixtures.py:16: could not import 'placebo': No module named 'placebo' 424s ======================== 348 passed, 1 skipped in 2.85s ======================== 424s Unit test controller with Python 3.13 426s ============================= test session starts ============================== 426s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 426s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/amazon/aws 426s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 426s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 426s created: 2/2 workers 426s 2 workers [1252 items] 426s 426s ........................................................................ [ 5%] 427s ........................................................................ [ 11%] 427s ........................................................................ [ 17%] 428s ........................................................................ [ 23%] 428s ........................................................................ [ 28%] 429s ........................................................................ [ 34%] 447s ........................................................................ [ 40%] 448s ........................................................................ [ 46%] 449s ........................................................................ [ 51%] 450s ........................................................................ [ 57%] 450s ........................................................................ [ 63%] 451s ........................................................................ [ 69%] 451s ........................................................................ [ 74%] 452s ........................................................................ [ 80%] 452s ........................................................................ [ 86%] 453s ........................................................................ [ 92%] 601s ........................................................................ [ 97%] 601s ............................ [100%] 601s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/amazon/aws/tests/output/junit/python3.13-controller-units.xml - 601s ======================= 1252 passed in 176.42s (0:02:56) ======================= 601s 601s 601s 601s ############################################################ 601s ############################################################ 601s #### Running tests in ansible_collections/cyberark/conjur 601s ############################################################ 601s ############################################################ 601s Unit test controller with Python 3.13 602s ============================= test session starts ============================== 602s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 602s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cyberark/conjur 602s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 602s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 602s created: 2/2 workers 602s 2 workers [21 items] 602s 602s ..................... [100%] 602s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cyberark/conjur/tests/output/junit/python3.13-controller-units.xml - 602s ============================== 21 passed in 0.63s ============================== 602s 602s 602s 602s ############################################################ 602s ############################################################ 602s #### Running tests in ansible_collections/ibm/storage_virtualize 602s ############################################################ 602s ############################################################ 602s Unit test modules with Python 3.13 603s ============================= test session starts ============================== 603s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 603s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ibm/storage_virtualize 603s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 603s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 603s created: 2/2 workers 603s 2 workers [762 items] 603s 604s ........................................................................ [ 9%] 604s ........................................................................ [ 18%] 605s ........................................................................ [ 28%] 606s ........................................................................ [ 37%] 607s ........................................................................ [ 47%] 607s ........................................................................ [ 56%] 608s ........................................................................ [ 66%] 609s ........................................................................ [ 75%] 609s ........................................................................ [ 85%] 610s ........................................................................ [ 94%] 612s .......................................... [100%] 612s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ibm/storage_virtualize/tests/output/junit/python3.13-modules-units.xml - 612s ============================= 762 passed in 10.21s ============================= 613s Unit test module_utils with Python 3.13 613s ============================= test session starts ============================== 613s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 613s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ibm/storage_virtualize 613s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 613s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 613s created: 2/2 workers 613s 2 workers [12 items] 613s 613s ............ [100%] 613s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ibm/storage_virtualize/tests/output/junit/python3.13-module_utils-units.xml - 613s ============================== 12 passed in 0.51s ============================== 613s 613s 613s 613s ############################################################ 613s ############################################################ 613s #### Running tests in ansible_collections/ibm/spectrum_virtualize 613s ############################################################ 613s ############################################################ 613s Unit test modules with Python 3.13 615s ============================= test session starts ============================== 615s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 615s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ibm/spectrum_virtualize 615s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 615s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 615s created: 2/2 workers 615s 2 workers [613 items] 615s 615s ........................................................................ [ 11%] 616s ........................................................................ [ 23%] 616s ........................................................................ [ 35%] 617s ........................................................................ [ 46%] 617s ........................................................................ [ 58%] 618s ........................................................................ [ 70%] 619s ........................................................................ [ 82%] 619s ........................................................................ [ 93%] 620s ..................................... [100%] 620s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ibm/spectrum_virtualize/tests/output/junit/python3.13-modules-units.xml - 620s ============================= 613 passed in 6.16s ============================== 620s Unit test module_utils with Python 3.13 621s ============================= test session starts ============================== 621s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 621s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ibm/spectrum_virtualize 621s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 621s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 621s created: 2/2 workers 621s 2 workers [9 items] 621s 621s ......... [100%] 621s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ibm/spectrum_virtualize/tests/output/junit/python3.13-module_utils-units.xml - 621s ============================== 9 passed in 0.61s =============================== 621s 621s 621s 621s ############################################################ 621s ############################################################ 621s #### Running tests in ansible_collections/ibm/qradar 621s ############################################################ 621s ############################################################ 621s Unit test controller with Python 3.13 622s ============================= test session starts ============================== 622s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 622s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ibm/qradar 622s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 622s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 622s created: 2/2 workers 622s 2 workers [5 items] 622s 622s ..... [100%] 622s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ibm/qradar/tests/output/junit/python3.13-controller-units.xml - 622s ============================== 5 passed in 0.59s =============================== 622s Skipping ansible_collections/sensu/sensu_go 622s 622s 622s 622s ############################################################ 622s ############################################################ 622s #### Running tests in ansible_collections/netbox/netbox 622s ############################################################ 622s ############################################################ 622s Unit test controller with Python 3.13 623s ============================= test session starts ============================== 623s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 623s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netbox/netbox 623s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 623s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 623s created: 2/2 workers 623s 2 workers [208 items] 623s 623s ........................................................................ [ 34%] 624s ........................................................................ [ 69%] 624s ................................................................ [100%] 624s =============================== warnings summary =============================== 624s tests/unit/inventory/test_nb_inventory.py::test_refresh_lookups 624s /usr/lib/python3/dist-packages/_pytest/threadexception.py:82: PytestUnhandledThreadExceptionWarning: Exception in thread Thread-2 (wrapper) 624s 624s Traceback (most recent call last): 624s File "/usr/lib/python3.13/threading.py", line 1041, in _bootstrap_inner 624s self.run() 624s ~~~~~~~~^^ 624s File "/usr/lib/python3.13/threading.py", line 992, in run 624s self._target(*self._args, **self._kwargs) 624s ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 624s File "/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netbox/netbox/plugins/inventory/nb_inventory.py", line 1569, in wrapper 624s raise e 624s File "/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netbox/netbox/plugins/inventory/nb_inventory.py", line 1564, in wrapper 624s lookup() 624s ~~~~~~^^ 624s File "/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netbox/netbox/tests/unit/inventory/test_nb_inventory.py", line 154, in raises_exception 624s raise Exception("Error from within a thread") 624s Exception: Error from within a thread 624s 624s warnings.warn(pytest.PytestUnhandledThreadExceptionWarning(msg)) 624s 624s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 624s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netbox/netbox/tests/output/junit/python3.13-controller-units.xml - 624s ======================== 208 passed, 1 warning in 1.77s ======================== 624s 624s 624s 624s ############################################################ 624s ############################################################ 624s #### Running tests in ansible_collections/containers/podman 624s ############################################################ 624s ############################################################ 624s Unit test modules with Python 3.13 625s ============================= test session starts ============================== 625s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 625s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/containers/podman 625s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 625s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 625s created: 2/2 workers 625s 2 workers [10 items] 625s 625s .......... [100%] 625s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/containers/podman/tests/output/junit/python3.13-modules-units.xml - 625s ============================== 10 passed in 0.45s ============================== 625s 625s 625s 625s ############################################################ 625s ############################################################ 625s #### Running tests in ansible_collections/netapp/cloudmanager 625s ############################################################ 625s ############################################################ 625s Unit test modules with Python 3.13 626s ============================= test session starts ============================== 626s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 626s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp/cloudmanager 626s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 626s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 626s created: 2/2 workers 626s 2 workers [106 items] 626s 642s ........................................................................ [ 67%] 672s .................................. [100%] 672s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp/cloudmanager/tests/output/junit/python3.13-modules-units.xml - 672s ============================= 106 passed in 46.67s ============================= 672s Unit test module_utils with Python 3.13 673s ============================= test session starts ============================== 673s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 673s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp/cloudmanager 673s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 673s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 673s created: 2/2 workers 673s 2 workers [52 items] 673s 673s .................................................... [100%] 673s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp/cloudmanager/tests/output/junit/python3.13-module_utils-units.xml - 673s ============================== 52 passed in 0.80s ============================== 673s 673s 673s 673s ############################################################ 673s ############################################################ 673s #### Running tests in ansible_collections/netapp/storagegrid 673s ############################################################ 673s ############################################################ 673s Unit test modules with Python 3.13 674s ============================= test session starts ============================== 674s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 674s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp/storagegrid 674s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 674s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 674s created: 2/2 workers 674s 2 workers [154 items] 674s 675s ........................................................................ [ 46%] 675s ........................................................................ [ 93%] 675s .......... [100%] 675s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp/storagegrid/tests/output/junit/python3.13-modules-units.xml - 675s ============================= 154 passed in 1.48s ============================== 675s Skipping ansible_collections/netapp/ontap 675s 675s 675s 675s ############################################################ 675s ############################################################ 675s #### Running tests in ansible_collections/vyos/vyos 675s ############################################################ 675s ############################################################ 675s Unit test controller with Python 3.13 676s ============================= test session starts ============================== 676s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 676s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vyos/vyos 676s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 676s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 676s created: 2/2 workers 676s 2 workers [212 items] 676s 677s ........................................................................ [ 33%] 678s ........................................................................ [ 67%] 680s .................................................................... [100%] 680s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vyos/vyos/tests/output/junit/python3.13-controller-units.xml - 680s ============================= 212 passed in 4.33s ============================== 680s Skipping ansible_collections/netapp_eseries/santricity 680s Skipping ansible_collections/ansible/utils 680s 680s 680s 680s ############################################################ 680s ############################################################ 680s #### Running tests in ansible_collections/ansible/windows 680s ############################################################ 680s ############################################################ 680s Unit test controller with Python 3.13 681s ============================= test session starts ============================== 681s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 681s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ansible/windows 681s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 681s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 681s created: 2/2 workers 681s 2 workers [50 items] 681s 681s .................................................. [100%] 681s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ansible/windows/tests/output/junit/python3.13-controller-units.xml - 681s ============================== 50 passed in 0.91s ============================== 681s 681s 681s 681s ############################################################ 681s ############################################################ 681s #### Running tests in ansible_collections/ansible/posix 681s ############################################################ 681s ############################################################ 681s Unit test controller with Python 3.13 682s ============================= test session starts ============================== 682s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 682s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ansible/posix 682s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 682s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 682s created: 2/2 workers 682s 2 workers [14 items] 682s 682s .............. [100%] 682s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ansible/posix/tests/output/junit/python3.13-controller-units.xml - 682s ============================== 14 passed in 0.65s ============================== 682s 682s 682s 682s ############################################################ 682s ############################################################ 682s #### Running tests in ansible_collections/ansible/netcommon 682s ############################################################ 682s ############################################################ 683s Unit test controller with Python 3.13 684s ============================= test session starts ============================== 684s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 684s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ansible/netcommon 684s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 684s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 684s created: 2/2 workers 684s 2 workers [162 items] 684s 684s ........................................................................ [ 44%] 686s ..................................xx.................................... [ 88%] 686s ...............x.. [100%] 686s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ansible/netcommon/tests/output/junit/python3.13-controller-units.xml - 686s =========================== short test summary info ============================ 686s SKIPPED [1] tests/unit/plugins/cli_parsers/test_pyats_parser.py:21: could not import 'pyats': No module named 'pyats' 686s SKIPPED [1] tests/unit/plugins/connection/test_libssh.py:23: could not import 'pylibsshext': No module named 'pylibsshext' 686s SKIPPED [1] tests/unit/plugins/connection/test_netconf.py:19: could not import 'ncclient': No module named 'ncclient' 686s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[auto-response2] 686s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[paramiko-response2] 686s XFAIL tests/unit/plugins/connection/test_network_cli.py::test_network_cli_send[libssh-response2] 686s ================== 159 passed, 3 skipped, 3 xfailed in 3.07s =================== 686s 686s 686s 686s ############################################################ 686s ############################################################ 686s #### Running tests in ansible_collections/wti/remote 686s ############################################################ 686s ############################################################ 686s Unit test controller with Python 3.13 687s ============================= test session starts ============================== 687s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 687s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/wti/remote 687s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 687s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 687s created: 2/2 workers 687s 2 workers [1 item] 687s 687s . [100%] 687s =============================== warnings summary =============================== 687s tests/unit/test_example.py::test_example 687s /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`? 687s warnings.warn( 687s 687s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 687s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/wti/remote/tests/output/junit/python3.13-controller-units.xml - 687s ========================= 1 passed, 1 warning in 0.31s ========================= 687s 687s 687s 687s ############################################################ 687s ############################################################ 687s #### Running tests in ansible_collections/kubernetes/core 687s ############################################################ 687s ############################################################ 687s Unit test controller with Python 3.13 688s ============================= test session starts ============================== 688s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 688s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/kubernetes/core 688s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 688s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 688s created: 2/2 workers 688s 2 workers [172 items] 688s 689s ........................................................................ [ 41%] 694s ........................................................................ [ 83%] 698s ............................ [100%] 698s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/kubernetes/core/tests/output/junit/python3.13-controller-units.xml - 698s ============================= 172 passed in 10.91s ============================= 698s 698s 698s 698s ############################################################ 698s ############################################################ 698s #### Running tests in ansible_collections/kubevirt/core 698s ############################################################ 698s ############################################################ 698s Unit test controller with Python 3.13 700s ============================= test session starts ============================== 700s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 700s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/kubevirt/core 700s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 700s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 700s created: 2/2 workers 700s 2 workers [190 items] 700s 700s ........................................................................ [ 37%] 701s ........................................................................ [ 75%] 701s .............................................. [100%] 701s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/kubevirt/core/tests/output/junit/python3.13-controller-units.xml - 701s ============================= 190 passed in 1.88s ============================== 701s 701s 701s 701s ############################################################ 701s ############################################################ 701s #### Running tests in ansible_collections/dellemc/openmanage 701s ############################################################ 701s ############################################################ 701s Unit test modules with Python 3.13 705s ============================= test session starts ============================== 705s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 705s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/openmanage 705s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 705s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 705s created: 2/2 workers 705s 2 workers [2636 items] 705s 706s ........................................................................ [ 2%] 706s ........................................................................ [ 5%] 707s ........................................................................ [ 8%] 708s ........................................................................ [ 10%] 708s ........................................................................ [ 13%] 709s ........................................................................ [ 16%] 710s ........................................................................ [ 19%] 711s ........................................................................ [ 21%] 712s ........................................................................ [ 24%] 712s ........................................................................ [ 27%] 713s ........................................................................ [ 30%] 718s ........................................................................ [ 32%] 719s ........................................................................ [ 35%] 720s ........................................................................ [ 38%] 721s ........................................................................ [ 40%] 722s ........................................................................ [ 43%] 723s ........................................................................ [ 46%] 724s ........................................................................ [ 49%] 725s ........................................................................ [ 51%] 725s ........................................................................ [ 54%] 726s ........................................................................ [ 57%] 727s ........................................................................ [ 60%] 730s ........................................................................ [ 62%] 731s ........................................................................ [ 65%] 732s ........................................................................ [ 68%] 733s ........................................................................ [ 71%] 733s ........................................................................ [ 73%] 734s ........................................................................ [ 76%] 735s ........................................................................ [ 79%] 736s ........................................................................ [ 81%] 737s ........................................................................ [ 84%] 737s ........................................................................ [ 87%] 775s ........................................................................ [ 90%] 776s ........................................................................ [ 92%] 777s ........................................................................ [ 95%] 778s ........................................................................ [ 98%] 778s ............................................ [100%] 778s =============================== warnings summary =============================== 778s tests/unit/plugins/modules/test_idrac_support_assist.py: 30 warnings 778s tests/unit/plugins/modules/test_idrac_system_erase.py: 6 warnings 778s tests/unit/plugins/modules/test_idrac_diagnostics.py: 19 warnings 778s tests/unit/plugins/modules/test_idrac_firmware_info.py: 6 warnings 778s tests/unit/plugins/modules/test_ome_application_network_proxy.py: 1 warning 778s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/openmanage/plugins/module_utils/utils.py:117: DeprecationWarning: 'count' is passed as positional argument 778s ipv6_short = re.sub(r'(:0)+', ':', tempstr, 1) 778s 778s tests/unit/plugins/modules/test_idrac_server_config_profile.py::TestServerConfigProfile::test_compare_custom_default_configs[params0] 778s tests/unit/plugins/modules/test_idrac_server_config_profile.py::TestServerConfigProfile::test_compare_custom_default_configs[params0] 778s /tmp/autopkgtest.HRV60t/build.QGA/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. 778s if component: 778s 778s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 778s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/openmanage/tests/output/junit/python3.13-modules-units.xml - 778s =========================== short test summary info ============================ 778s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_configure_idrac_eventing.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_configure_idrac_services.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_idrac_lc_attributes.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_idrac_storage_volume.py:22: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_dellemc_system_lockdown_mode.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_idrac_firmware.py:27: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_job_status_info.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_jobs.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_logs.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_idrac_lifecycle_controller_status_info.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_idrac_network.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_idrac_os_deployment.py:22: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_idrac_syslog.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_idrac_system_info.py:26: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s SKIPPED [1] tests/unit/plugins/modules/test_idrac_timezone_ntp.py:25: could not import 'omsdk.sdkfile': No module named 'omsdk' 778s =========== 2636 passed, 15 skipped, 64 warnings in 76.68s (0:01:16) =========== 778s Unit test module_utils with Python 3.13 779s ============================= test session starts ============================== 779s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 779s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/openmanage 779s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 779s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 779s created: 2/2 workers 779s 2 workers [121 items] 779s 779s ........................................................................ [ 59%] 780s ................................................. [100%] 780s =============================== warnings summary =============================== 780s tests/unit/plugins/module_utils/test_idrac_redfish.py::TestIdracRedfishRest::test_invoke_request_without_session 780s tests/unit/plugins/module_utils/test_ome.py::TestOMERest::test_invoke_request_with_session 780s tests/unit/plugins/module_utils/test_redfish.py::TestRedfishRest::test_invoke_request_without_session 780s tests/unit/plugins/module_utils/test_rest_api.py::TestRestAPI::test_invoke_request_with_session 780s tests/unit/plugins/module_utils/test_session_utils.py::TestSessionRest::test_invoke_request_without_session 780s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/openmanage/plugins/module_utils/utils.py:117: DeprecationWarning: 'count' is passed as positional argument 780s ipv6_short = re.sub(r'(:0)+', ':', tempstr, 1) 780s 780s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 780s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/openmanage/tests/output/junit/python3.13-module_utils-units.xml - 780s ======================= 121 passed, 5 warnings in 1.22s ======================== 780s 780s 780s 780s ############################################################ 780s ############################################################ 780s #### Running tests in ansible_collections/dellemc/enterprise_sonic 780s ############################################################ 780s ############################################################ 780s Unit test controller with Python 3.13 782s ============================= test session starts ============================== 782s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 782s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/enterprise_sonic 782s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 782s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 782s created: 2/2 workers 782s 2 workers [404 items] 782s 784s ........................................................................ [ 17%] 786s ........................................................................ [ 35%] 788s ........................................................................ [ 53%] 791s ........................................................................ [ 71%] 795s ........................................................................ [ 89%] 796s ............................................ [100%] 796s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/enterprise_sonic/tests/output/junit/python3.13-controller-units.xml - 796s ============================= 404 passed in 16.07s ============================= 796s 796s 796s 796s ############################################################ 796s ############################################################ 796s #### Running tests in ansible_collections/dellemc/powerflex 796s ############################################################ 796s ############################################################ 797s Unit test modules with Python 3.13 797s ============================= test session starts ============================== 797s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 797s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/powerflex 797s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 797s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 797s created: 2/2 workers 797s 2 workers [405 items] 797s 798s ........................................................................ [ 17%] 799s ........................................................................ [ 35%] 799s ........................................................................ [ 53%] 800s ........................................................................ [ 71%] 800s ........................................................................ [ 88%] 801s ............................................. [100%] 801s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/powerflex/tests/output/junit/python3.13-modules-units.xml - 801s ============================= 405 passed in 4.03s ============================== 801s 801s 801s 801s ############################################################ 801s ############################################################ 801s #### Running tests in ansible_collections/dellemc/unity 801s ############################################################ 801s ############################################################ 801s Unit test modules with Python 3.13 802s ============================= test session starts ============================== 802s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 802s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/unity 802s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 802s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 802s created: 2/2 workers 802s 2 workers [92 items] 802s 802s ........................................................................ [ 78%] 803s .................... [100%] 803s =============================== warnings summary =============================== 803s plugins/module_utils/storage/dell/utils.py:72 803s plugins/module_utils/storage/dell/utils.py:72 803s /tmp/autopkgtest.HRV60t/build.QGA/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 803s from pkg_resources import parse_version 803s 803s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 803s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/dellemc/unity/tests/output/junit/python3.13-modules-units.xml - 803s ======================== 92 passed, 2 warnings in 1.41s ======================== 803s 803s 803s 803s ############################################################ 803s ############################################################ 803s #### Running tests in ansible_collections/google/cloud 803s ############################################################ 803s ############################################################ 803s Unit test controller with Python 3.13 804s ============================= test session starts ============================== 804s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 804s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/google/cloud 804s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 804s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 804s created: 2/2 workers 804s 2 workers [17 items] 804s 804s ................. [100%] 804s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/google/cloud/tests/output/junit/python3.13-controller-units.xml - 804s ============================== 17 passed in 0.55s ============================== 804s autopkgtest [15:03:27]: test unit-tests-stable.py: -----------------------] 805s unit-tests-stable.py PASS 805s autopkgtest [15:03:28]: test unit-tests-stable.py: - - - - - - - - - - results - - - - - - - - - - 805s autopkgtest [15:03:28]: test unit-tests-flaky.py: preparing testbed 895s autopkgtest [15:04:58]: testbed dpkg architecture: s390x 895s autopkgtest [15:04:58]: testbed apt version: 3.0.0 895s autopkgtest [15:04:58]: @@@@@@@@@@@@@@@@@@@@ test bed setup 896s autopkgtest [15:04:59]: testbed release detected to be: questing 896s autopkgtest [15:04:59]: updating testbed package index (apt update) 897s Get:1 http://ftpmaster.internal/ubuntu questing-proposed InRelease [110 kB] 897s Hit:2 http://ftpmaster.internal/ubuntu questing InRelease 897s Hit:3 http://ftpmaster.internal/ubuntu questing-updates InRelease 897s Hit:4 http://ftpmaster.internal/ubuntu questing-security InRelease 897s Get:5 http://ftpmaster.internal/ubuntu questing-proposed/universe Sources [2024 kB] 897s Get:6 http://ftpmaster.internal/ubuntu questing-proposed/main Sources [164 kB] 897s Get:7 http://ftpmaster.internal/ubuntu questing-proposed/multiverse Sources [44.2 kB] 897s Get:8 http://ftpmaster.internal/ubuntu questing-proposed/main s390x Packages [194 kB] 897s Get:9 http://ftpmaster.internal/ubuntu questing-proposed/universe s390x Packages [1236 kB] 897s Get:10 http://ftpmaster.internal/ubuntu questing-proposed/multiverse s390x Packages [8572 B] 898s Fetched 3781 kB in 1s (3073 kB/s) 898s Reading package lists... 899s autopkgtest [15:05:02]: upgrading testbed (apt dist-upgrade and autopurge) 899s Reading package lists... 900s Building dependency tree... 900s Reading state information... 900s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 900s Starting 2 pkgProblemResolver with broken count: 0 900s Done 900s Entering ResolveByKeep 900s 900s Calculating upgrade... 900s The following packages will be upgraded: 900s fwupd htop libftdi1-2 libfwupd3 libnpth0t64 libsensors-config libsensors5 900s liburcu8t64 nano usb.ids 900s 10 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 900s Need to get 2536 kB of archives. 900s After this operation, 3749 kB disk space will be freed. 900s Get:1 http://ftpmaster.internal/ubuntu questing/main s390x libnpth0t64 s390x 1.8-3 [8778 B] 900s Get:2 http://ftpmaster.internal/ubuntu questing/main s390x libsensors-config all 1:3.6.2-2 [6756 B] 900s Get:3 http://ftpmaster.internal/ubuntu questing/main s390x libsensors5 s390x 1:3.6.2-2 [29.2 kB] 901s Get:4 http://ftpmaster.internal/ubuntu questing/main s390x liburcu8t64 s390x 0.15.2-2 [66.3 kB] 901s Get:5 http://ftpmaster.internal/ubuntu questing/main s390x nano s390x 8.4-1 [299 kB] 901s Get:6 http://ftpmaster.internal/ubuntu questing/main s390x usb.ids all 2025.04.01-1 [223 kB] 901s Get:7 http://ftpmaster.internal/ubuntu questing/main s390x fwupd s390x 2.0.8-3 [1548 kB] 901s Get:8 http://ftpmaster.internal/ubuntu questing/main s390x libfwupd3 s390x 2.0.8-3 [135 kB] 901s Get:9 http://ftpmaster.internal/ubuntu questing/main s390x htop s390x 3.4.1-4 [189 kB] 901s Get:10 http://ftpmaster.internal/ubuntu questing/main s390x libftdi1-2 s390x 1.5-10 [31.4 kB] 901s Fetched 2536 kB in 1s (3608 kB/s) 901s (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 ... 81472 files and directories currently installed.) 901s Preparing to unpack .../libnpth0t64_1.8-3_s390x.deb ... 901s Unpacking libnpth0t64:s390x (1.8-3) over (1.8-2) ... 901s Setting up libnpth0t64:s390x (1.8-3) ... 901s (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 ... 81472 files and directories currently installed.) 901s Preparing to unpack .../0-libsensors-config_1%3a3.6.2-2_all.deb ... 901s Unpacking libsensors-config (1:3.6.2-2) over (1:3.6.0-10) ... 901s Preparing to unpack .../1-libsensors5_1%3a3.6.2-2_s390x.deb ... 901s Unpacking libsensors5:s390x (1:3.6.2-2) over (1:3.6.0-10) ... 901s Preparing to unpack .../2-liburcu8t64_0.15.2-2_s390x.deb ... 901s Unpacking liburcu8t64:s390x (0.15.2-2) over (0.15.1-1) ... 901s Preparing to unpack .../3-nano_8.4-1_s390x.deb ... 901s Unpacking nano (8.4-1) over (8.3-1) ... 901s Preparing to unpack .../4-usb.ids_2025.04.01-1_all.deb ... 901s Unpacking usb.ids (2025.04.01-1) over (2025.01.14-1) ... 902s Preparing to unpack .../5-fwupd_2.0.8-3_s390x.deb ... 902s Unpacking fwupd (2.0.8-3) over (2.0.7-1) ... 902s dpkg: warning: unable to delete old directory '/etc/grub.d': Directory not empty 902s Preparing to unpack .../6-libfwupd3_2.0.8-3_s390x.deb ... 902s Unpacking libfwupd3:s390x (2.0.8-3) over (2.0.7-1) ... 902s Preparing to unpack .../7-htop_3.4.1-4_s390x.deb ... 902s Unpacking htop (3.4.1-4) over (3.4.0-2) ... 902s Preparing to unpack .../8-libftdi1-2_1.5-10_s390x.deb ... 902s Unpacking libftdi1-2:s390x (1.5-10) over (1.5-8build1) ... 902s Setting up liburcu8t64:s390x (0.15.2-2) ... 902s Setting up htop (3.4.1-4) ... 902s Setting up libsensors-config (1:3.6.2-2) ... 902s Installing new version of config file /etc/sensors3.conf ... 902s Setting up libfwupd3:s390x (2.0.8-3) ... 902s Setting up libftdi1-2:s390x (1.5-10) ... 902s Setting up usb.ids (2025.04.01-1) ... 902s Setting up libsensors5:s390x (1:3.6.2-2) ... 902s Setting up nano (8.4-1) ... 902s Installing new version of config file /etc/nanorc ... 902s Setting up fwupd (2.0.8-3) ... 902s fwupd-refresh.service is a disabled or a static unit not running, not starting it. 902s fwupd.service is a disabled or a static unit not running, not starting it. 902s Processing triggers for man-db (2.13.0-1) ... 903s Processing triggers for dbus (1.16.2-2ubuntu1) ... 903s Processing triggers for install-info (7.1.1-1) ... 903s Processing triggers for libc-bin (2.41-6ubuntu1) ... 904s Reading package lists... 904s Building dependency tree... 904s Reading state information... 904s Starting pkgProblemResolver with broken count: 0 904s Starting 2 pkgProblemResolver with broken count: 0 904s Done 904s Solving dependencies... 904s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 904s autopkgtest [15:05:07]: rebooting testbed after setup commands that affected boot 928s Reading package lists... 928s Building dependency tree... 928s Reading state information... 928s Starting pkgProblemResolver with broken count: 0 928s Starting 2 pkgProblemResolver with broken count: 0 928s Done 928s The following NEW packages will be installed: 928s ansible ansible-core fontconfig-config fonts-dejavu-core fonts-dejavu-mono 928s gir1.2-secret-1 git git-man libcairo-gobject2 libcairo2 liberror-perl 928s libfontconfig1 libfreetype6 libpixman-1-0 libsecret-1-0 libsecret-common 928s libsodium23 libxcb-render0 libxcb-shm0 libxrender1 libxslt1.1 python3-adal 928s python3-aiohappyeyeballs python3-aiohttp python3-aiosignal 928s python3-async-timeout python3-avro python3-azure python3-azure-storage 928s python3-boto3 python3-botocore python3-cachetools python3-cairo 928s python3-click python3-colorama python3-dateutil python3-dnspython 928s python3-execnet python3-flake8 python3-freezegun python3-frozenlist 928s python3-gi-cairo python3-gitlab python3-google-auth python3-httmock 928s python3-hvac python3-iniconfig python3-isodate python3-jmespath 928s python3-joblib python3-kubernetes python3-lxml python3-marshmallow 928s python3-mccabe python3-mock python3-msal python3-msal-extensions 928s python3-msrest python3-msrestazure python3-multidict python3-nacl 928s python3-nltk python3-packaging python3-paramiko python3-pathspec 928s python3-pluggy python3-portalocker python3-proxmoxer python3-psutil 928s python3-py python3-pyasn1 python3-pyasn1-modules python3-pycodestyle 928s python3-pydash python3-pyflakes python3-pyhcl python3-pytest 928s python3-pytest-forked python3-pytest-mock python3-pytest-xdist python3-pyu2f 928s python3-pyvmomi python3-redis python3-regex python3-requests-oauthlib 928s python3-requests-toolbelt python3-resolvelib python3-responses python3-rsa 928s python3-ruamel.yaml python3-ruamel.yaml.clib python3-s3transfer python3-six 928s python3-strictyaml python3-textfsm python3-tqdm python3-websocket 928s python3-xmltodict python3-yarl yamllint 929s 0 upgraded, 100 newly installed, 0 to remove and 0 not upgraded. 929s Need to get 59.4 MB of archives. 929s After this operation, 994 MB of additional disk space will be used. 929s Get:1 http://ftpmaster.internal/ubuntu questing/main s390x python3-packaging all 24.2-1 [51.5 kB] 929s Get:2 http://ftpmaster.internal/ubuntu questing/universe s390x python3-resolvelib all 1.1.0-1 [25.8 kB] 929s Get:3 http://ftpmaster.internal/ubuntu questing/main s390x libsodium23 s390x 1.0.18-1build3 [138 kB] 929s Get:4 http://ftpmaster.internal/ubuntu questing/main s390x python3-nacl s390x 1.5.0-7 [59.3 kB] 929s Get:5 http://ftpmaster.internal/ubuntu questing/main s390x python3-paramiko all 3.5.1-2ubuntu1 [147 kB] 929s Get:6 http://ftpmaster.internal/ubuntu questing/main s390x python3-dnspython all 2.7.0-1ubuntu1 [167 kB] 929s Get:7 http://ftpmaster.internal/ubuntu questing/universe s390x ansible-core all 2.18.1-4ubuntu1 [1273 kB] 929s Get:8 http://ftpmaster.internal/ubuntu questing/universe s390x ansible all 11.2.0+dfsg-1 [18.1 MB] 930s Get:9 http://ftpmaster.internal/ubuntu questing/main s390x fonts-dejavu-mono all 2.37-8 [502 kB] 930s Get:10 http://ftpmaster.internal/ubuntu questing/main s390x fonts-dejavu-core all 2.37-8 [835 kB] 930s Get:11 http://ftpmaster.internal/ubuntu questing/main s390x fontconfig-config s390x 2.15.0-2.2ubuntu1 [37.9 kB] 930s Get:12 http://ftpmaster.internal/ubuntu questing/main s390x libsecret-common all 0.21.7-1 [5160 B] 930s Get:13 http://ftpmaster.internal/ubuntu questing/main s390x libsecret-1-0 s390x 0.21.7-1 [115 kB] 930s Get:14 http://ftpmaster.internal/ubuntu questing/main s390x gir1.2-secret-1 s390x 0.21.7-1 [9338 B] 930s Get:15 http://ftpmaster.internal/ubuntu questing/main s390x liberror-perl all 0.17030-1 [23.5 kB] 930s Get:16 http://ftpmaster.internal/ubuntu questing/main s390x git-man all 1:2.48.1-0ubuntu1 [1148 kB] 930s Get:17 http://ftpmaster.internal/ubuntu questing/main s390x git s390x 1:2.48.1-0ubuntu1 [4284 kB] 930s Get:18 http://ftpmaster.internal/ubuntu questing/main s390x libfreetype6 s390x 2.13.3+dfsg-1 [431 kB] 930s Get:19 http://ftpmaster.internal/ubuntu questing/main s390x libfontconfig1 s390x 2.15.0-2.2ubuntu1 [150 kB] 930s Get:20 http://ftpmaster.internal/ubuntu questing/main s390x libpixman-1-0 s390x 0.44.0-3 [201 kB] 930s Get:21 http://ftpmaster.internal/ubuntu questing/main s390x libxcb-render0 s390x 1.17.0-2 [17.0 kB] 930s Get:22 http://ftpmaster.internal/ubuntu questing/main s390x libxcb-shm0 s390x 1.17.0-2 [5862 B] 930s Get:23 http://ftpmaster.internal/ubuntu questing/main s390x libxrender1 s390x 1:0.9.10-1.1build1 [20.4 kB] 930s Get:24 http://ftpmaster.internal/ubuntu questing/main s390x libcairo2 s390x 1.18.4-1 [580 kB] 930s Get:25 http://ftpmaster.internal/ubuntu questing/main s390x libcairo-gobject2 s390x 1.18.4-1 [127 kB] 930s Get:26 http://ftpmaster.internal/ubuntu questing/main s390x libxslt1.1 s390x 1.1.39-0exp1ubuntu4 [170 kB] 930s Get:27 http://ftpmaster.internal/ubuntu questing/main s390x python3-dateutil all 2.9.0-4 [80.3 kB] 930s Get:28 http://ftpmaster.internal/ubuntu questing/universe s390x python3-adal all 1.2.7-5 [33.0 kB] 930s Get:29 http://ftpmaster.internal/ubuntu questing/universe s390x python3-aiohappyeyeballs all 2.6.1-1 [11.1 kB] 930s Get:30 http://ftpmaster.internal/ubuntu questing/universe s390x python3-multidict s390x 6.2.0-2 [35.4 kB] 930s Get:31 http://ftpmaster.internal/ubuntu questing/universe s390x python3-yarl s390x 1.13.1-1build2 [96.1 kB] 930s Get:32 http://ftpmaster.internal/ubuntu questing/universe s390x python3-async-timeout all 5.0.1-1 [6830 B] 930s Get:33 http://ftpmaster.internal/ubuntu questing/universe s390x python3-frozenlist s390x 1.5.0-1build2 [50.3 kB] 930s Get:34 http://ftpmaster.internal/ubuntu questing/universe s390x python3-aiosignal all 1.3.2-1 [5182 B] 930s Get:35 http://ftpmaster.internal/ubuntu questing/universe s390x python3-aiohttp s390x 3.10.11-1build1 [313 kB] 930s Get:36 http://ftpmaster.internal/ubuntu questing/universe s390x python3-avro all 1.12.0+dfsg-1 [75.3 kB] 930s Get:37 http://ftpmaster.internal/ubuntu questing/universe s390x python3-isodate all 0.7.0-1 [18.6 kB] 930s Get:38 http://ftpmaster.internal/ubuntu questing/universe s390x python3-requests-oauthlib all 1.3.1-1 [18.8 kB] 930s Get:39 http://ftpmaster.internal/ubuntu questing/universe s390x python3-msrest all 0.6.21-5 [48.7 kB] 930s Get:40 http://ftpmaster.internal/ubuntu questing/universe s390x python3-msrestazure all 0.6.4-4 [27.1 kB] 930s Get:41 http://ftpmaster.internal/ubuntu questing/universe s390x python3-azure-storage all 20250304+git-1 [300 kB] 930s Get:42 http://ftpmaster.internal/ubuntu questing/universe s390x python3-colorama all 0.4.6-4 [32.1 kB] 930s Get:43 http://ftpmaster.internal/ubuntu questing/universe s390x python3-marshmallow all 3.26.1-0.2 [47.5 kB] 930s Get:44 http://ftpmaster.internal/ubuntu questing/universe s390x python3-msal all 1.32.0-1 [100 kB] 930s Get:45 http://ftpmaster.internal/ubuntu questing/main s390x python3-cairo s390x 1.27.0-2 [120 kB] 930s Get:46 http://ftpmaster.internal/ubuntu questing/main s390x python3-gi-cairo s390x 3.50.0-4build1 [8072 B] 930s Get:47 http://ftpmaster.internal/ubuntu questing/universe s390x python3-portalocker all 2.2.1-1 [17.2 kB] 930s Get:48 http://ftpmaster.internal/ubuntu questing/universe s390x python3-msal-extensions all 1.3.1-1 [18.2 kB] 930s Get:49 http://ftpmaster.internal/ubuntu questing/main s390x python3-click all 8.2.0+0.really.8.1.8-1 [80.0 kB] 930s Get:50 http://ftpmaster.internal/ubuntu questing/universe s390x python3-joblib all 1.4.2-3 [205 kB] 930s Get:51 http://ftpmaster.internal/ubuntu questing/universe s390x python3-regex s390x 0.1.20241106-1build1 [304 kB] 931s Get:52 http://ftpmaster.internal/ubuntu questing/universe s390x python3-tqdm all 4.67.1-3 [91.6 kB] 931s Get:53 http://ftpmaster.internal/ubuntu questing/universe s390x python3-nltk all 3.9.1-2 [1006 kB] 931s Get:54 http://ftpmaster.internal/ubuntu questing/main s390x python3-psutil s390x 5.9.8-2build3 [195 kB] 931s Get:55 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pydash all 8.0.3-3 [93.0 kB] 931s Get:56 http://ftpmaster.internal/ubuntu questing/main s390x python3-six all 1.17.0-1 [13.2 kB] 931s Get:57 http://ftpmaster.internal/ubuntu questing/universe s390x python3-ruamel.yaml.clib s390x 0.2.12+ds-1build1 [151 kB] 931s Get:58 http://ftpmaster.internal/ubuntu questing/universe s390x python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 931s Get:59 http://ftpmaster.internal/ubuntu questing/universe s390x python3-strictyaml all 1.6.1-3 [89.1 kB] 931s Get:60 http://ftpmaster.internal/ubuntu questing/universe s390x python3-websocket all 1.8.0-2 [38.5 kB] 931s Get:61 http://ftpmaster.internal/ubuntu questing/universe s390x python3-azure all 20250304+git-1 [15.9 MB] 932s Get:62 http://ftpmaster.internal/ubuntu questing/main s390x python3-jmespath all 1.0.1-1 [21.3 kB] 932s Get:63 http://ftpmaster.internal/ubuntu questing/main s390x python3-botocore all 1.37.9+repack-1 [6982 kB] 932s Get:64 http://ftpmaster.internal/ubuntu questing/main s390x python3-s3transfer all 0.11.2-2 [55.5 kB] 932s Get:65 http://ftpmaster.internal/ubuntu questing/main s390x python3-boto3 all 1.37.9-1 [73.0 kB] 932s Get:66 http://ftpmaster.internal/ubuntu questing/main s390x python3-cachetools all 5.3.3-1 [10.3 kB] 932s Get:67 http://ftpmaster.internal/ubuntu questing/universe s390x python3-execnet all 2.1.1-1 [33.4 kB] 932s Get:68 http://ftpmaster.internal/ubuntu questing/universe s390x python3-mccabe all 0.7.0-1 [8678 B] 932s Get:69 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pycodestyle all 2.12.1-2 [30.2 kB] 932s Get:70 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pyflakes all 3.2.0-3 [53.0 kB] 932s Get:71 http://ftpmaster.internal/ubuntu questing/universe s390x python3-flake8 all 7.1.1-3 [44.0 kB] 932s Get:72 http://ftpmaster.internal/ubuntu questing/universe s390x python3-freezegun all 1.5.1-1.2 [15.9 kB] 932s Get:73 http://ftpmaster.internal/ubuntu questing/universe s390x python3-requests-toolbelt all 1.0.0-4 [37.0 kB] 932s Get:74 http://ftpmaster.internal/ubuntu questing/universe s390x python3-gitlab all 1:4.9.0-1 [75.0 kB] 932s Get:75 http://ftpmaster.internal/ubuntu questing/main s390x python3-pyasn1 all 0.6.1-1 [56.4 kB] 932s Get:76 http://ftpmaster.internal/ubuntu questing/main s390x python3-pyasn1-modules all 0.4.1-2 [80.3 kB] 932s Get:77 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pyu2f all 0.1.5-4 [22.9 kB] 932s Get:78 http://ftpmaster.internal/ubuntu questing/universe s390x python3-responses all 0.25.6-1 [40.5 kB] 932s Get:79 http://ftpmaster.internal/ubuntu questing/universe s390x python3-rsa all 4.9-2 [28.2 kB] 932s Get:80 http://ftpmaster.internal/ubuntu questing/universe s390x python3-google-auth all 2.28.2-3 [91.0 kB] 932s Get:81 http://ftpmaster.internal/ubuntu questing/universe s390x python3-httmock all 1.4.0-5 [6544 B] 932s Get:82 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pyhcl all 0.4.4-6 [43.1 kB] 932s Get:83 http://ftpmaster.internal/ubuntu questing/universe s390x python3-hvac all 2.3.0-3 [88.1 kB] 932s Get:84 http://ftpmaster.internal/ubuntu questing/universe s390x python3-iniconfig all 1.1.1-2 [6024 B] 932s Get:85 http://ftpmaster.internal/ubuntu questing/universe s390x python3-kubernetes all 30.1.0-2 [385 kB] 932s Get:86 http://ftpmaster.internal/ubuntu questing/main s390x python3-lxml s390x 5.3.2-1 [1370 kB] 932s Get:87 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pathspec all 0.12.1-1 [24.5 kB] 932s Get:88 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pluggy all 1.5.0-1 [21.0 kB] 932s Get:89 http://ftpmaster.internal/ubuntu questing/universe s390x python3-proxmoxer all 2.2.0-1 [16.2 kB] 932s Get:90 http://ftpmaster.internal/ubuntu questing/universe s390x python3-py all 1.11.0-4 [72.7 kB] 932s Get:91 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pytest all 8.3.5-1 [252 kB] 932s Get:92 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pytest-forked all 1.6.0-3 [7470 B] 932s Get:93 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pytest-mock all 3.14.0-2 [11.7 kB] 932s Get:94 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pytest-xdist all 3.6.1-1 [33.8 kB] 932s Get:95 http://ftpmaster.internal/ubuntu questing/universe s390x python3-pyvmomi all 8.0.3.0.1-1 [532 kB] 932s Get:96 http://ftpmaster.internal/ubuntu questing-proposed/universe s390x python3-redis all 5.2.1-1 [221 kB] 932s Get:97 http://ftpmaster.internal/ubuntu questing/universe s390x python3-textfsm all 1.1.3-3 [29.3 kB] 932s Get:98 http://ftpmaster.internal/ubuntu questing/main s390x python3-xmltodict all 0.13.0-1 [13.4 kB] 932s Get:99 http://ftpmaster.internal/ubuntu questing/universe s390x yamllint all 1.35.1-2 [43.6 kB] 932s Get:100 http://ftpmaster.internal/ubuntu questing/universe s390x python3-mock all 5.1.0-1 [64.1 kB] 933s Fetched 59.4 MB in 4s (14.4 MB/s) 933s Selecting previously unselected package python3-packaging. 933s (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 ... 81470 files and directories currently installed.) 933s Preparing to unpack .../00-python3-packaging_24.2-1_all.deb ... 933s Unpacking python3-packaging (24.2-1) ... 933s Selecting previously unselected package python3-resolvelib. 933s Preparing to unpack .../01-python3-resolvelib_1.1.0-1_all.deb ... 933s Unpacking python3-resolvelib (1.1.0-1) ... 933s Selecting previously unselected package libsodium23:s390x. 933s Preparing to unpack .../02-libsodium23_1.0.18-1build3_s390x.deb ... 933s Unpacking libsodium23:s390x (1.0.18-1build3) ... 933s Selecting previously unselected package python3-nacl. 933s Preparing to unpack .../03-python3-nacl_1.5.0-7_s390x.deb ... 933s Unpacking python3-nacl (1.5.0-7) ... 933s Selecting previously unselected package python3-paramiko. 933s Preparing to unpack .../04-python3-paramiko_3.5.1-2ubuntu1_all.deb ... 933s Unpacking python3-paramiko (3.5.1-2ubuntu1) ... 933s Selecting previously unselected package python3-dnspython. 933s Preparing to unpack .../05-python3-dnspython_2.7.0-1ubuntu1_all.deb ... 933s Unpacking python3-dnspython (2.7.0-1ubuntu1) ... 933s Selecting previously unselected package ansible-core. 933s Preparing to unpack .../06-ansible-core_2.18.1-4ubuntu1_all.deb ... 933s Unpacking ansible-core (2.18.1-4ubuntu1) ... 933s Selecting previously unselected package ansible. 933s Preparing to unpack .../07-ansible_11.2.0+dfsg-1_all.deb ... 933s Unpacking ansible (11.2.0+dfsg-1) ... 935s Selecting previously unselected package fonts-dejavu-mono. 935s Preparing to unpack .../08-fonts-dejavu-mono_2.37-8_all.deb ... 935s Unpacking fonts-dejavu-mono (2.37-8) ... 935s Selecting previously unselected package fonts-dejavu-core. 935s Preparing to unpack .../09-fonts-dejavu-core_2.37-8_all.deb ... 935s Unpacking fonts-dejavu-core (2.37-8) ... 935s Selecting previously unselected package fontconfig-config. 935s Preparing to unpack .../10-fontconfig-config_2.15.0-2.2ubuntu1_s390x.deb ... 935s Unpacking fontconfig-config (2.15.0-2.2ubuntu1) ... 935s Selecting previously unselected package libsecret-common. 935s Preparing to unpack .../11-libsecret-common_0.21.7-1_all.deb ... 935s Unpacking libsecret-common (0.21.7-1) ... 935s Selecting previously unselected package libsecret-1-0:s390x. 935s Preparing to unpack .../12-libsecret-1-0_0.21.7-1_s390x.deb ... 935s Unpacking libsecret-1-0:s390x (0.21.7-1) ... 935s Selecting previously unselected package gir1.2-secret-1:s390x. 935s Preparing to unpack .../13-gir1.2-secret-1_0.21.7-1_s390x.deb ... 935s Unpacking gir1.2-secret-1:s390x (0.21.7-1) ... 935s Selecting previously unselected package liberror-perl. 935s Preparing to unpack .../14-liberror-perl_0.17030-1_all.deb ... 935s Unpacking liberror-perl (0.17030-1) ... 935s Selecting previously unselected package git-man. 935s Preparing to unpack .../15-git-man_1%3a2.48.1-0ubuntu1_all.deb ... 935s Unpacking git-man (1:2.48.1-0ubuntu1) ... 935s Selecting previously unselected package git. 935s Preparing to unpack .../16-git_1%3a2.48.1-0ubuntu1_s390x.deb ... 935s Unpacking git (1:2.48.1-0ubuntu1) ... 935s Selecting previously unselected package libfreetype6:s390x. 935s Preparing to unpack .../17-libfreetype6_2.13.3+dfsg-1_s390x.deb ... 935s Unpacking libfreetype6:s390x (2.13.3+dfsg-1) ... 935s Selecting previously unselected package libfontconfig1:s390x. 935s Preparing to unpack .../18-libfontconfig1_2.15.0-2.2ubuntu1_s390x.deb ... 935s Unpacking libfontconfig1:s390x (2.15.0-2.2ubuntu1) ... 935s Selecting previously unselected package libpixman-1-0:s390x. 935s Preparing to unpack .../19-libpixman-1-0_0.44.0-3_s390x.deb ... 935s Unpacking libpixman-1-0:s390x (0.44.0-3) ... 935s Selecting previously unselected package libxcb-render0:s390x. 935s Preparing to unpack .../20-libxcb-render0_1.17.0-2_s390x.deb ... 935s Unpacking libxcb-render0:s390x (1.17.0-2) ... 935s Selecting previously unselected package libxcb-shm0:s390x. 935s Preparing to unpack .../21-libxcb-shm0_1.17.0-2_s390x.deb ... 935s Unpacking libxcb-shm0:s390x (1.17.0-2) ... 935s Selecting previously unselected package libxrender1:s390x. 935s Preparing to unpack .../22-libxrender1_1%3a0.9.10-1.1build1_s390x.deb ... 935s Unpacking libxrender1:s390x (1:0.9.10-1.1build1) ... 935s Selecting previously unselected package libcairo2:s390x. 935s Preparing to unpack .../23-libcairo2_1.18.4-1_s390x.deb ... 935s Unpacking libcairo2:s390x (1.18.4-1) ... 935s Selecting previously unselected package libcairo-gobject2:s390x. 935s Preparing to unpack .../24-libcairo-gobject2_1.18.4-1_s390x.deb ... 935s Unpacking libcairo-gobject2:s390x (1.18.4-1) ... 935s Selecting previously unselected package libxslt1.1:s390x. 935s Preparing to unpack .../25-libxslt1.1_1.1.39-0exp1ubuntu4_s390x.deb ... 935s Unpacking libxslt1.1:s390x (1.1.39-0exp1ubuntu4) ... 935s Selecting previously unselected package python3-dateutil. 935s Preparing to unpack .../26-python3-dateutil_2.9.0-4_all.deb ... 935s Unpacking python3-dateutil (2.9.0-4) ... 935s Selecting previously unselected package python3-adal. 935s Preparing to unpack .../27-python3-adal_1.2.7-5_all.deb ... 935s Unpacking python3-adal (1.2.7-5) ... 935s Selecting previously unselected package python3-aiohappyeyeballs. 935s Preparing to unpack .../28-python3-aiohappyeyeballs_2.6.1-1_all.deb ... 935s Unpacking python3-aiohappyeyeballs (2.6.1-1) ... 935s Selecting previously unselected package python3-multidict. 935s Preparing to unpack .../29-python3-multidict_6.2.0-2_s390x.deb ... 935s Unpacking python3-multidict (6.2.0-2) ... 935s Selecting previously unselected package python3-yarl. 935s Preparing to unpack .../30-python3-yarl_1.13.1-1build2_s390x.deb ... 935s Unpacking python3-yarl (1.13.1-1build2) ... 935s Selecting previously unselected package python3-async-timeout. 935s Preparing to unpack .../31-python3-async-timeout_5.0.1-1_all.deb ... 935s Unpacking python3-async-timeout (5.0.1-1) ... 935s Selecting previously unselected package python3-frozenlist. 935s Preparing to unpack .../32-python3-frozenlist_1.5.0-1build2_s390x.deb ... 935s Unpacking python3-frozenlist (1.5.0-1build2) ... 935s Selecting previously unselected package python3-aiosignal. 935s Preparing to unpack .../33-python3-aiosignal_1.3.2-1_all.deb ... 935s Unpacking python3-aiosignal (1.3.2-1) ... 935s Selecting previously unselected package python3-aiohttp. 935s Preparing to unpack .../34-python3-aiohttp_3.10.11-1build1_s390x.deb ... 935s Unpacking python3-aiohttp (3.10.11-1build1) ... 935s Selecting previously unselected package python3-avro. 935s Preparing to unpack .../35-python3-avro_1.12.0+dfsg-1_all.deb ... 935s Unpacking python3-avro (1.12.0+dfsg-1) ... 935s Selecting previously unselected package python3-isodate. 935s Preparing to unpack .../36-python3-isodate_0.7.0-1_all.deb ... 935s Unpacking python3-isodate (0.7.0-1) ... 935s Selecting previously unselected package python3-requests-oauthlib. 935s Preparing to unpack .../37-python3-requests-oauthlib_1.3.1-1_all.deb ... 935s Unpacking python3-requests-oauthlib (1.3.1-1) ... 935s Selecting previously unselected package python3-msrest. 935s Preparing to unpack .../38-python3-msrest_0.6.21-5_all.deb ... 935s Unpacking python3-msrest (0.6.21-5) ... 935s Selecting previously unselected package python3-msrestazure. 935s Preparing to unpack .../39-python3-msrestazure_0.6.4-4_all.deb ... 935s Unpacking python3-msrestazure (0.6.4-4) ... 935s Selecting previously unselected package python3-azure-storage. 935s Preparing to unpack .../40-python3-azure-storage_20250304+git-1_all.deb ... 935s Unpacking python3-azure-storage (20250304+git-1) ... 936s Selecting previously unselected package python3-colorama. 936s Preparing to unpack .../41-python3-colorama_0.4.6-4_all.deb ... 936s Unpacking python3-colorama (0.4.6-4) ... 936s Selecting previously unselected package python3-marshmallow. 936s Preparing to unpack .../42-python3-marshmallow_3.26.1-0.2_all.deb ... 936s Unpacking python3-marshmallow (3.26.1-0.2) ... 936s Selecting previously unselected package python3-msal. 936s Preparing to unpack .../43-python3-msal_1.32.0-1_all.deb ... 936s Unpacking python3-msal (1.32.0-1) ... 936s Selecting previously unselected package python3-cairo. 936s Preparing to unpack .../44-python3-cairo_1.27.0-2_s390x.deb ... 936s Unpacking python3-cairo (1.27.0-2) ... 936s Selecting previously unselected package python3-gi-cairo. 936s Preparing to unpack .../45-python3-gi-cairo_3.50.0-4build1_s390x.deb ... 936s Unpacking python3-gi-cairo (3.50.0-4build1) ... 936s Selecting previously unselected package python3-portalocker. 936s Preparing to unpack .../46-python3-portalocker_2.2.1-1_all.deb ... 936s Unpacking python3-portalocker (2.2.1-1) ... 936s Selecting previously unselected package python3-msal-extensions. 936s Preparing to unpack .../47-python3-msal-extensions_1.3.1-1_all.deb ... 936s Unpacking python3-msal-extensions (1.3.1-1) ... 936s Selecting previously unselected package python3-click. 936s Preparing to unpack .../48-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... 936s Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... 936s Selecting previously unselected package python3-joblib. 936s Preparing to unpack .../49-python3-joblib_1.4.2-3_all.deb ... 936s Unpacking python3-joblib (1.4.2-3) ... 936s Selecting previously unselected package python3-regex. 936s Preparing to unpack .../50-python3-regex_0.1.20241106-1build1_s390x.deb ... 936s Unpacking python3-regex (0.1.20241106-1build1) ... 936s Selecting previously unselected package python3-tqdm. 936s Preparing to unpack .../51-python3-tqdm_4.67.1-3_all.deb ... 936s Unpacking python3-tqdm (4.67.1-3) ... 936s Selecting previously unselected package python3-nltk. 936s Preparing to unpack .../52-python3-nltk_3.9.1-2_all.deb ... 936s Unpacking python3-nltk (3.9.1-2) ... 936s Selecting previously unselected package python3-psutil. 936s Preparing to unpack .../53-python3-psutil_5.9.8-2build3_s390x.deb ... 936s Unpacking python3-psutil (5.9.8-2build3) ... 936s Selecting previously unselected package python3-pydash. 936s Preparing to unpack .../54-python3-pydash_8.0.3-3_all.deb ... 936s Unpacking python3-pydash (8.0.3-3) ... 936s Selecting previously unselected package python3-six. 936s Preparing to unpack .../55-python3-six_1.17.0-1_all.deb ... 936s Unpacking python3-six (1.17.0-1) ... 936s Selecting previously unselected package python3-ruamel.yaml.clib. 936s Preparing to unpack .../56-python3-ruamel.yaml.clib_0.2.12+ds-1build1_s390x.deb ... 936s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 936s Selecting previously unselected package python3-ruamel.yaml. 936s Preparing to unpack .../57-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 936s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 936s Selecting previously unselected package python3-strictyaml. 936s Preparing to unpack .../58-python3-strictyaml_1.6.1-3_all.deb ... 936s Unpacking python3-strictyaml (1.6.1-3) ... 936s Selecting previously unselected package python3-websocket. 936s Preparing to unpack .../59-python3-websocket_1.8.0-2_all.deb ... 936s Unpacking python3-websocket (1.8.0-2) ... 936s Selecting previously unselected package python3-azure. 936s Preparing to unpack .../60-python3-azure_20250304+git-1_all.deb ... 936s Unpacking python3-azure (20250304+git-1) ... 939s Selecting previously unselected package python3-jmespath. 939s Preparing to unpack .../61-python3-jmespath_1.0.1-1_all.deb ... 939s Unpacking python3-jmespath (1.0.1-1) ... 939s Selecting previously unselected package python3-botocore. 939s Preparing to unpack .../62-python3-botocore_1.37.9+repack-1_all.deb ... 939s Unpacking python3-botocore (1.37.9+repack-1) ... 939s Selecting previously unselected package python3-s3transfer. 939s Preparing to unpack .../63-python3-s3transfer_0.11.2-2_all.deb ... 939s Unpacking python3-s3transfer (0.11.2-2) ... 939s Selecting previously unselected package python3-boto3. 939s Preparing to unpack .../64-python3-boto3_1.37.9-1_all.deb ... 939s Unpacking python3-boto3 (1.37.9-1) ... 939s Selecting previously unselected package python3-cachetools. 939s Preparing to unpack .../65-python3-cachetools_5.3.3-1_all.deb ... 939s Unpacking python3-cachetools (5.3.3-1) ... 939s Selecting previously unselected package python3-execnet. 939s Preparing to unpack .../66-python3-execnet_2.1.1-1_all.deb ... 939s Unpacking python3-execnet (2.1.1-1) ... 939s Selecting previously unselected package python3-mccabe. 939s Preparing to unpack .../67-python3-mccabe_0.7.0-1_all.deb ... 939s Unpacking python3-mccabe (0.7.0-1) ... 939s Selecting previously unselected package python3-pycodestyle. 939s Preparing to unpack .../68-python3-pycodestyle_2.12.1-2_all.deb ... 939s Unpacking python3-pycodestyle (2.12.1-2) ... 939s Selecting previously unselected package python3-pyflakes. 939s Preparing to unpack .../69-python3-pyflakes_3.2.0-3_all.deb ... 939s Unpacking python3-pyflakes (3.2.0-3) ... 939s Selecting previously unselected package python3-flake8. 939s Preparing to unpack .../70-python3-flake8_7.1.1-3_all.deb ... 939s Unpacking python3-flake8 (7.1.1-3) ... 939s Selecting previously unselected package python3-freezegun. 939s Preparing to unpack .../71-python3-freezegun_1.5.1-1.2_all.deb ... 939s Unpacking python3-freezegun (1.5.1-1.2) ... 939s Selecting previously unselected package python3-requests-toolbelt. 940s Preparing to unpack .../72-python3-requests-toolbelt_1.0.0-4_all.deb ... 940s Unpacking python3-requests-toolbelt (1.0.0-4) ... 940s Selecting previously unselected package python3-gitlab. 940s Preparing to unpack .../73-python3-gitlab_1%3a4.9.0-1_all.deb ... 940s Unpacking python3-gitlab (1:4.9.0-1) ... 940s Selecting previously unselected package python3-pyasn1. 940s Preparing to unpack .../74-python3-pyasn1_0.6.1-1_all.deb ... 940s Unpacking python3-pyasn1 (0.6.1-1) ... 940s Selecting previously unselected package python3-pyasn1-modules. 940s Preparing to unpack .../75-python3-pyasn1-modules_0.4.1-2_all.deb ... 940s Unpacking python3-pyasn1-modules (0.4.1-2) ... 940s Selecting previously unselected package python3-pyu2f. 940s Preparing to unpack .../76-python3-pyu2f_0.1.5-4_all.deb ... 940s Unpacking python3-pyu2f (0.1.5-4) ... 940s Selecting previously unselected package python3-responses. 940s Preparing to unpack .../77-python3-responses_0.25.6-1_all.deb ... 940s Unpacking python3-responses (0.25.6-1) ... 940s Selecting previously unselected package python3-rsa. 940s Preparing to unpack .../78-python3-rsa_4.9-2_all.deb ... 940s Unpacking python3-rsa (4.9-2) ... 940s Selecting previously unselected package python3-google-auth. 940s Preparing to unpack .../79-python3-google-auth_2.28.2-3_all.deb ... 940s Unpacking python3-google-auth (2.28.2-3) ... 940s Selecting previously unselected package python3-httmock. 940s Preparing to unpack .../80-python3-httmock_1.4.0-5_all.deb ... 940s Unpacking python3-httmock (1.4.0-5) ... 940s Selecting previously unselected package python3-pyhcl. 940s Preparing to unpack .../81-python3-pyhcl_0.4.4-6_all.deb ... 940s Unpacking python3-pyhcl (0.4.4-6) ... 940s Selecting previously unselected package python3-hvac. 940s Preparing to unpack .../82-python3-hvac_2.3.0-3_all.deb ... 940s Unpacking python3-hvac (2.3.0-3) ... 940s Selecting previously unselected package python3-iniconfig. 940s Preparing to unpack .../83-python3-iniconfig_1.1.1-2_all.deb ... 940s Unpacking python3-iniconfig (1.1.1-2) ... 940s Selecting previously unselected package python3-kubernetes. 940s Preparing to unpack .../84-python3-kubernetes_30.1.0-2_all.deb ... 940s Unpacking python3-kubernetes (30.1.0-2) ... 940s Selecting previously unselected package python3-lxml:s390x. 940s Preparing to unpack .../85-python3-lxml_5.3.2-1_s390x.deb ... 940s Unpacking python3-lxml:s390x (5.3.2-1) ... 940s Selecting previously unselected package python3-pathspec. 940s Preparing to unpack .../86-python3-pathspec_0.12.1-1_all.deb ... 940s Unpacking python3-pathspec (0.12.1-1) ... 940s Selecting previously unselected package python3-pluggy. 940s Preparing to unpack .../87-python3-pluggy_1.5.0-1_all.deb ... 940s Unpacking python3-pluggy (1.5.0-1) ... 940s Selecting previously unselected package python3-proxmoxer. 940s Preparing to unpack .../88-python3-proxmoxer_2.2.0-1_all.deb ... 940s Unpacking python3-proxmoxer (2.2.0-1) ... 940s Selecting previously unselected package python3-py. 940s Preparing to unpack .../89-python3-py_1.11.0-4_all.deb ... 940s Unpacking python3-py (1.11.0-4) ... 940s Selecting previously unselected package python3-pytest. 940s Preparing to unpack .../90-python3-pytest_8.3.5-1_all.deb ... 940s Unpacking python3-pytest (8.3.5-1) ... 940s Selecting previously unselected package python3-pytest-forked. 940s Preparing to unpack .../91-python3-pytest-forked_1.6.0-3_all.deb ... 940s Unpacking python3-pytest-forked (1.6.0-3) ... 940s Selecting previously unselected package python3-pytest-mock. 940s Preparing to unpack .../92-python3-pytest-mock_3.14.0-2_all.deb ... 940s Unpacking python3-pytest-mock (3.14.0-2) ... 940s Selecting previously unselected package python3-pytest-xdist. 940s Preparing to unpack .../93-python3-pytest-xdist_3.6.1-1_all.deb ... 940s Unpacking python3-pytest-xdist (3.6.1-1) ... 940s Selecting previously unselected package python3-pyvmomi. 940s Preparing to unpack .../94-python3-pyvmomi_8.0.3.0.1-1_all.deb ... 940s Unpacking python3-pyvmomi (8.0.3.0.1-1) ... 940s Selecting previously unselected package python3-redis. 940s Preparing to unpack .../95-python3-redis_5.2.1-1_all.deb ... 940s Unpacking python3-redis (5.2.1-1) ... 940s Selecting previously unselected package python3-textfsm. 940s Preparing to unpack .../96-python3-textfsm_1.1.3-3_all.deb ... 940s Unpacking python3-textfsm (1.1.3-3) ... 940s Selecting previously unselected package python3-xmltodict. 940s Preparing to unpack .../97-python3-xmltodict_0.13.0-1_all.deb ... 940s Unpacking python3-xmltodict (0.13.0-1) ... 940s Selecting previously unselected package yamllint. 940s Preparing to unpack .../98-yamllint_1.35.1-2_all.deb ... 940s Unpacking yamllint (1.35.1-2) ... 940s Selecting previously unselected package python3-mock. 940s Preparing to unpack .../99-python3-mock_5.1.0-1_all.deb ... 940s Unpacking python3-mock (5.1.0-1) ... 940s Setting up python3-iniconfig (1.1.1-2) ... 940s Setting up libpixman-1-0:s390x (0.44.0-3) ... 940s Setting up libsodium23:s390x (1.0.18-1build3) ... 940s Setting up python3-requests-toolbelt (1.0.0-4) ... 940s Setting up libxrender1:s390x (1:0.9.10-1.1build1) ... 940s Setting up python3-py (1.11.0-4) ... 941s Setting up python3-joblib (1.4.2-3) ... 941s Setting up python3-cachetools (5.3.3-1) ... 941s Setting up python3-colorama (0.4.6-4) ... 941s Setting up libxcb-render0:s390x (1.17.0-2) ... 941s Setting up python3-tqdm (4.67.1-3) ... 941s Setting up python3-pyflakes (3.2.0-3) ... 941s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 941s Setting up python3-resolvelib (1.1.0-1) ... 941s Setting up python3-msal (1.32.0-1) ... 941s Setting up libxcb-shm0:s390x (1.17.0-2) ... 941s Setting up python3-httmock (1.4.0-5) ... 941s Setting up python3-click (8.2.0+0.really.8.1.8-1) ... 942s Setting up python3-psutil (5.9.8-2build3) ... 942s Setting up python3-multidict (6.2.0-2) ... 942s Setting up python3-frozenlist (1.5.0-1build2) ... 942s Setting up python3-aiosignal (1.3.2-1) ... 942s Setting up python3-mock (5.1.0-1) ... 942s Setting up python3-async-timeout (5.0.1-1) ... 942s Setting up liberror-perl (0.17030-1) ... 942s Setting up python3-six (1.17.0-1) ... 942s Setting up python3-responses (0.25.6-1) ... 942s Setting up python3-pyvmomi (8.0.3.0.1-1) ... 943s Setting up python3-isodate (0.7.0-1) ... 943s Setting up python3-pycodestyle (2.12.1-2) ... 943s Setting up python3-xmltodict (0.13.0-1) ... 943s Setting up python3-packaging (24.2-1) ... 943s Setting up python3-pyu2f (0.1.5-4) ... 943s Setting up libfreetype6:s390x (2.13.3+dfsg-1) ... 943s Setting up python3-avro (1.12.0+dfsg-1) ... 943s Setting up python3-jmespath (1.0.1-1) ... 944s Setting up fonts-dejavu-mono (2.37-8) ... 944s Setting up fonts-dejavu-core (2.37-8) ... 944s Setting up python3-redis (5.2.1-1) ... 944s Setting up python3-aiohappyeyeballs (2.6.1-1) ... 944s Setting up python3-regex (0.1.20241106-1build1) ... 944s Setting up python3-pluggy (1.5.0-1) ... 944s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 944s Setting up python3-dnspython (2.7.0-1ubuntu1) ... 944s Setting up python3-portalocker (2.2.1-1) ... 945s Setting up libxslt1.1:s390x (1.1.39-0exp1ubuntu4) ... 945s Setting up python3-pyasn1 (0.6.1-1) ... 945s Setting up python3-proxmoxer (2.2.0-1) ... 945s Setting up git-man (1:2.48.1-0ubuntu1) ... 945s Setting up python3-dateutil (2.9.0-4) ... 945s Setting up python3-textfsm (1.1.3-3) ... 945s Setting up python3-mccabe (0.7.0-1) ... 945s Setting up python3-execnet (2.1.1-1) ... 945s Setting up python3-pathspec (0.12.1-1) ... 945s Setting up python3-pydash (8.0.3-3) ... 945s Setting up python3-nltk (3.9.1-2) ... 946s Setting up python3-yarl (1.13.1-1build2) ... 946s Setting up python3-pyhcl (0.4.4-6) ... 946s Setting up python3-gitlab (1:4.9.0-1) ... 946s Setting up python3-websocket (1.8.0-2) ... 947s Setting up libsecret-common (0.21.7-1) ... 947s Setting up python3-freezegun (1.5.1-1.2) ... 947s Setting up python3-nacl (1.5.0-7) ... 947s Setting up python3-requests-oauthlib (1.3.1-1) ... 947s Setting up fontconfig-config (2.15.0-2.2ubuntu1) ... 947s Setting up python3-pytest (8.3.5-1) ... 947s Setting up python3-aiohttp (3.10.11-1build1) ... 947s Setting up python3-marshmallow (3.26.1-0.2) ... 947s Setting up ansible-core (2.18.1-4ubuntu1) ... 948s Setting up python3-flake8 (7.1.1-3) ... 948s Setting up python3-msrest (0.6.21-5) ... 949s Setting up python3-pytest-forked (1.6.0-3) ... 949s Setting up python3-strictyaml (1.6.1-3) ... 949s Setting up libsecret-1-0:s390x (0.21.7-1) ... 949s Setting up yamllint (1.35.1-2) ... 949s Setting up gir1.2-secret-1:s390x (0.21.7-1) ... 949s Setting up python3-pyasn1-modules (0.4.1-2) ... 949s Setting up python3-botocore (1.37.9+repack-1) ... 949s Setting up python3-hvac (2.3.0-3) ... 949s Setting up git (1:2.48.1-0ubuntu1) ... 949s Setting up python3-adal (1.2.7-5) ... 950s Setting up python3-pytest-mock (3.14.0-2) ... 950s Setting up python3-lxml:s390x (5.3.2-1) ... 950s Setting up python3-rsa (4.9-2) ... 950s Setting up libfontconfig1:s390x (2.15.0-2.2ubuntu1) ... 950s Setting up python3-msrestazure (0.6.4-4) ... 950s Setting up ansible (11.2.0+dfsg-1) ... 965s Setting up python3-paramiko (3.5.1-2ubuntu1) ... 965s Setting up python3-pytest-xdist (3.6.1-1) ... 965s Setting up python3-s3transfer (0.11.2-2) ... 965s Setting up libcairo2:s390x (1.18.4-1) ... 965s Setting up python3-google-auth (2.28.2-3) ... 965s Setting up python3-boto3 (1.37.9-1) ... 965s Setting up libcairo-gobject2:s390x (1.18.4-1) ... 965s Setting up python3-cairo (1.27.0-2) ... 965s Setting up python3-kubernetes (30.1.0-2) ... 966s Setting up python3-gi-cairo (3.50.0-4build1) ... 966s Setting up python3-msal-extensions (1.3.1-1) ... 966s Setting up python3-azure-storage (20250304+git-1) ... 967s Setting up python3-azure (20250304+git-1) ... 976s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:80: SyntaxWarning: invalid escape sequence '\ ' 976s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 976s /usr/lib/python3/dist-packages/azure/ai/ml/_vendor/azure_resources/aio/operations/_resources_operations.py:405: SyntaxWarning: invalid escape sequence '\ ' 976s Valid values include ``createdTime``\ , ``changedTime`` and ``provisioningState``. For example, 977s /usr/lib/python3/dist-packages/azure/appconfiguration/_generated/models/_models.py:238: SyntaxWarning: invalid escape sequence '\ ' 977s """An error, available when the status is ``Failed``\ , describing why the operation 978s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9067: SyntaxWarning: invalid escape sequence '\ ' 978s """The source port ranges to match for the rule. Valid values are '\ *' (for all ports 0 - 65535), 978s /usr/lib/python3/dist-packages/azure/batch/models/_models.py:9235: SyntaxWarning: invalid escape sequence '\ ' 978s using brackets (for example abc[\ *] would match a file named abc*\ ). Note that both and / are 978s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2326: SyntaxWarning: invalid escape sequence '\ ' 978s payload to scoring rule. If not set, a job's labels (sent in the payload as ``job``\ ) and a 978s /usr/lib/python3/dist-packages/azure/communication/jobrouter/models/_models.py:2346: SyntaxWarning: invalid escape sequence '\ ' 978s If not set, a job's labels (sent in the payload as ``job``\ ) and a job's worker selectors 980s /usr/lib/python3/dist-packages/azure/mgmt/advisor/aio/operations/_recommendations_operations.py:190: SyntaxWarning: invalid escape sequence '\ ' 980s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 980s /usr/lib/python3/dist-packages/azure/mgmt/advisor/operations/_recommendations_operations.py:303: SyntaxWarning: invalid escape sequence '\ ' 980s properties ['ResourceId', 'ResourceGroup', 'RecommendationTypeGuid', '\ `Category 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:3917: SyntaxWarning: invalid escape sequence '\ ' 981s Possible Values::code:`
`:code:`
` **Standard**\ :code:`
`:code:`
` 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10212: SyntaxWarning: invalid escape sequence '\ ' 981s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10255: SyntaxWarning: invalid escape sequence '\ ' 981s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10284: SyntaxWarning: invalid escape sequence '\ ' 981s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10320: SyntaxWarning: invalid escape sequence '\ ' 981s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10342: SyntaxWarning: invalid escape sequence '\ ' 981s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10375: SyntaxWarning: invalid escape sequence '\ ' 981s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10396: SyntaxWarning: invalid escape sequence '\ ' 981s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:10429: SyntaxWarning: invalid escape sequence '\ ' 981s ``aad://.onmicrosoft.com/groups/``\ ; otherwise the value is null. 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14746: SyntaxWarning: invalid escape sequence '\ ' 981s :ivar allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 981s /usr/lib/python3/dist-packages/azure/mgmt/apimanagement/models/_models_py3.py:14771: SyntaxWarning: invalid escape sequence '\ ' 981s :keyword allowed_sources: Allowed sources, e.g. ``*.trusted.com``\ , ``trusted.com``\ , 984s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:1420: SyntaxWarning: invalid escape sequence '\ ' 984s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 984s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models.py:2310: SyntaxWarning: invalid escape sequence '\ ' 984s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 984s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:1547: SyntaxWarning: invalid escape sequence '\ ' 984s :param id: Required. The ID for the input directory. The job can use AZ_BATCHAI\ *INPUT*\ 984s /usr/lib/python3/dist-packages/azure/mgmt/batchai/models/_models_py3.py:2524: SyntaxWarning: invalid escape sequence '\ ' 984s :param id: Required. The ID of the output directory. The job can use AZ_BATCHAI\ *OUTPUT*\ 987s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:624: SyntaxWarning: invalid escape sequence '\ ' 987s and Screenshot to diagnose VM status. **NOTE**\ : If storageUri is being 987s /usr/lib/python3/dist-packages/azure/mgmt/computefleet/models/_models.py:3707: SyntaxWarning: invalid escape sequence '\W' 987s characters :code:`
` Has a digit :code:`
` Has a special character (Regex match [\W_]) 991s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16843: SyntaxWarning: invalid escape sequence '\S' 991s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 991s /usr/lib/python3/dist-packages/azure/mgmt/datamigration/models/_models_py3.py:16916: SyntaxWarning: invalid escape sequence '\S' 991s Protocol:MachineName\SQLServerInstanceName,PortNumber. Required. 992s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:63: SyntaxWarning: invalid escape sequence '\w' 992s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 992s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:130: SyntaxWarning: invalid escape sequence '\w' 992s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 992s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:224: SyntaxWarning: invalid escape sequence '\w' 992s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 992s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:312: SyntaxWarning: invalid escape sequence '\w' 992s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 992s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:398: SyntaxWarning: invalid escape sequence '\w' 992s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 992s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:543: SyntaxWarning: invalid escape sequence '\w' 992s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 992s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:612: SyntaxWarning: invalid escape sequence '\w' 992s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 992s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:675: SyntaxWarning: invalid escape sequence '\w' 992s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 992s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:738: SyntaxWarning: invalid escape sequence '\w' 992s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 992s /usr/lib/python3/dist-packages/azure/mgmt/documentdb/operations/database_accounts_operations.py:807: SyntaxWarning: invalid escape sequence '\w' 992s 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=90, min_length=1, pattern='^[-\w\._\(\)]+$'), 995s /usr/lib/python3/dist-packages/azure/mgmt/hybridnetwork/models/_models_py3.py:6032: SyntaxWarning: invalid escape sequence '\ ' 995s :ivar provisioning_state: The provisioning state of the site resource. **TODO**\ : Confirm if 996s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3866: SyntaxWarning: invalid escape sequence '\ ' 996s pattern set glob-style pattern (e.g., '\ *', 'clients/*\ '). Required.""" 996s /usr/lib/python3/dist-packages/azure/mgmt/iotoperations/models/_models.py:3868: SyntaxWarning: invalid escape sequence '\ ' 996s """Give access for ``Read``\ , ``Write`` and ``ReadWrite`` access level. Required. Known values 998s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:169: SyntaxWarning: invalid escape sequence '\ ' 998s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 998s /usr/lib/python3/dist-packages/azure/mgmt/machinelearningservices/models/_machine_learning_services_mgmt_client_enums.py:1032: SyntaxWarning: invalid escape sequence '\ ' 998s #: The "forest"\ it builds, is an ensemble of decision trees, usually trained with the “bagging”\ 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2542: SyntaxWarning: invalid escape sequence '\R' 1004s """Execute Reverse Replication\Reprotect. 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2583: SyntaxWarning: invalid escape sequence '\R' 1004s """Execute Reverse Replication\Reprotect. 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/aio/operations/_replication_protected_items_operations.py:2622: SyntaxWarning: invalid escape sequence '\R' 1004s """Execute Reverse Replication\Reprotect. 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5397: SyntaxWarning: invalid escape sequence '\L' 1004s :ivar lun_id: Ordinal\LunId of the disk for the Azure VM. 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:5448: SyntaxWarning: invalid escape sequence '\L' 1004s :keyword lun_id: Ordinal\LunId of the disk for the Azure VM. 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8836: SyntaxWarning: invalid escape sequence '\S' 1004s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:8978: SyntaxWarning: invalid escape sequence '\S' 1004s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9510: SyntaxWarning: invalid escape sequence '\S' 1004s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:9675: SyntaxWarning: invalid escape sequence '\S' 1004s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11412: SyntaxWarning: invalid escape sequence '\S' 1004s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:11541: SyntaxWarning: invalid escape sequence '\S' 1004s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target VM after 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12193: SyntaxWarning: invalid escape sequence '\S' 1004s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:12516: SyntaxWarning: invalid escape sequence '\S' 1004s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26323: SyntaxWarning: invalid escape sequence '\S' 1004s :ivar enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/models/_models_py3.py:26382: SyntaxWarning: invalid escape sequence '\S' 1004s :keyword enable_rdp_on_target_option: The selected option to enable RDP\SSH on target vm after 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3476: SyntaxWarning: invalid escape sequence '\R' 1004s """Execute Reverse Replication\Reprotect. 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3517: SyntaxWarning: invalid escape sequence '\R' 1004s """Execute Reverse Replication\Reprotect. 1004s /usr/lib/python3/dist-packages/azure/mgmt/recoveryservicessiterecovery/operations/_replication_protected_items_operations.py:3556: SyntaxWarning: invalid escape sequence '\R' 1004s """Execute Reverse Replication\Reprotect. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_azure_reservation_api_operations.py:163: SyntaxWarning: invalid escape sequence '\ ' 1004s """Get list of applicable ``Reservation``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:377: SyntaxWarning: invalid escape sequence '\ ' 1004s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:407: SyntaxWarning: invalid escape sequence '\ ' 1004s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:437: SyntaxWarning: invalid escape sequence '\ ' 1004s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:583: SyntaxWarning: invalid escape sequence '\ ' 1004s """Merges two ``Reservation``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:614: SyntaxWarning: invalid escape sequence '\ ' 1004s """Merges two ``Reservation``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:645: SyntaxWarning: invalid escape sequence '\ ' 1004s """Merges two ``Reservation``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_operations.py:721: SyntaxWarning: invalid escape sequence '\ ' 1004s """Get ``Reservation``\ s in a given reservation Order. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/aio/operations/_reservation_order_operations.py:183: SyntaxWarning: invalid escape sequence '\ ' 1004s """Get all ``ReservationOrder``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3172: SyntaxWarning: invalid escape sequence '\ ' 1004s """List of ``Reservation``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/models/_models_py3.py:3288: SyntaxWarning: invalid escape sequence '\ ' 1004s """List of ``ReservationOrder``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_azure_reservation_api_operations.py:239: SyntaxWarning: invalid escape sequence '\ ' 1004s """Get list of applicable ``Reservation``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:662: SyntaxWarning: invalid escape sequence '\ ' 1004s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:692: SyntaxWarning: invalid escape sequence '\ ' 1004s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:722: SyntaxWarning: invalid escape sequence '\ ' 1004s Split a ``Reservation`` into two ``Reservation``\ s with specified quantity distribution. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:868: SyntaxWarning: invalid escape sequence '\ ' 1004s """Merges two ``Reservation``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:899: SyntaxWarning: invalid escape sequence '\ ' 1004s """Merges two ``Reservation``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:930: SyntaxWarning: invalid escape sequence '\ ' 1004s """Merges two ``Reservation``\ s. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_operations.py:1006: SyntaxWarning: invalid escape sequence '\ ' 1004s """Get ``Reservation``\ s in a given reservation Order. 1004s /usr/lib/python3/dist-packages/azure/mgmt/reservations/operations/_reservation_order_operations.py:299: SyntaxWarning: invalid escape sequence '\ ' 1004s """Get all ``ReservationOrder``\ s. 1007s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:68: SyntaxWarning: invalid escape sequence '\ ' 1007s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 1007s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:90: SyntaxWarning: invalid escape sequence '\ ' 1007s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 1007s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1141: SyntaxWarning: invalid escape sequence '\ ' 1007s **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after ``end`` 1007s /usr/lib/python3/dist-packages/azure/mgmt/resourcegraph/models/_models_py3.py:1163: SyntaxWarning: invalid escape sequence '\ ' 1007s ``[``\ **\ ``start``\ **\ ``, end)``. Specifying a ``start`` that occurs chronologically after 1010s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2858: SyntaxWarning: invalid escape sequence '\ ' 1010s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 1010s /usr/lib/python3/dist-packages/azure/mgmt/signalr/models/_models_py3.py:2925: SyntaxWarning: invalid escape sequence '\ ' 1010s For example, if the urlTemplate is ``http://example.com/{hub}/api/{event}``\ , with a client 1011s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_functions_operations.py:595: SyntaxWarning: invalid escape sequence '\ ' 1011s properties to include in the response, or "\ *" to include all properties. By default, all 1011s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_inputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 1011s properties to include in the response, or "\ *" to include all properties. By default, all 1011s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/aio/operations/_outputs_operations.py:593: SyntaxWarning: invalid escape sequence '\ ' 1011s properties to include in the response, or "\ *" to include all properties. By default, all 1011s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/models/_stream_analytics_management_client_enums.py:14: SyntaxWarning: invalid escape sequence '\ ' 1011s """Authentication Mode. Valid modes are ``ConnectionString``\ , ``Msi`` and 'UserToken'.""" 1011s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_functions_operations.py:859: SyntaxWarning: invalid escape sequence '\ ' 1011s properties to include in the response, or "\ *" to include all properties. By default, all 1011s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_inputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 1011s properties to include in the response, or "\ *" to include all properties. By default, all 1011s /usr/lib/python3/dist-packages/azure/mgmt/streamanalytics/operations/_outputs_operations.py:821: SyntaxWarning: invalid escape sequence '\ ' 1011s properties to include in the response, or "\ *" to include all properties. By default, all 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_no_subscription_operations.py:193: SyntaxWarning: invalid escape sequence '\ ' 1012s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_communications_operations.py:194: SyntaxWarning: invalid escape sequence '\ ' 1012s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:177: SyntaxWarning: invalid escape sequence '\ ' 1012s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:540: SyntaxWarning: invalid escape sequence '\ ' 1012s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:582: SyntaxWarning: invalid escape sequence '\ ' 1012s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/aio/operations/_support_tickets_operations.py:622: SyntaxWarning: invalid escape sequence '\ ' 1012s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_no_subscription_operations.py:308: SyntaxWarning: invalid escape sequence '\ ' 1012s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_communications_operations.py:326: SyntaxWarning: invalid escape sequence '\ ' 1012s a paged result with *nextLink*\ , using which you can retrieve the next set of Communication 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:319: SyntaxWarning: invalid escape sequence '\ ' 1012s tickets by *Status*\ , *CreatedDate*\ , *ServiceId*\ , and *ProblemClassificationId* using the 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:681: SyntaxWarning: invalid escape sequence '\ ' 1012s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:723: SyntaxWarning: invalid escape sequence '\ ' 1012s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1012s /usr/lib/python3/dist-packages/azure/mgmt/support/operations/_support_tickets_operations.py:763: SyntaxWarning: invalid escape sequence '\ ' 1012s information from your Azure resources.:code:`
`:code:`
`\ **Creating a support ticket 1012s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6232: SyntaxWarning: invalid escape sequence '\ ' 1012s :ivar maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 1012s /usr/lib/python3/dist-packages/azure/mgmt/synapse/models/_models_py3.py:6288: SyntaxWarning: invalid escape sequence '\ ' 1012s :keyword maintenance_window_cycles: Available maintenance cycles e.g. {Saturday, 0, 48\ *60}, 1016s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2909: SyntaxWarning: invalid escape sequence '\W' 1016s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1016s /usr/lib/python3/dist-packages/azure/mgmt/workloads/models/_models_py3.py:2954: SyntaxWarning: invalid escape sequence '\W' 1016s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1016s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:1980: SyntaxWarning: invalid escape sequence '\W' 1016s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1016s /usr/lib/python3/dist-packages/azure/mgmt/workloadssapvirtualinstance/models/_models_py3.py:2025: SyntaxWarning: invalid escape sequence '\W' 1016s digit :code:`
` Has a special character (Regex match [\W_]) :code:`
`:code:`
` 1017s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:2732: SyntaxWarning: invalid escape sequence '\:' 1017s attr:\:code:``=:code:``. 1017s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:3537: SyntaxWarning: invalid escape sequence '\:' 1017s attr:\:code:``=\:code:``. 1017s /usr/lib/python3/dist-packages/azure/purview/catalog/aio/operations/_operations.py:4216: SyntaxWarning: invalid escape sequence '\:' 1017s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 1017s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:6219: SyntaxWarning: invalid escape sequence '\:' 1017s attr:\:code:``=:code:``. 1017s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7024: SyntaxWarning: invalid escape sequence '\:' 1017s attr:\:code:``=\:code:``. 1017s /usr/lib/python3/dist-packages/azure/purview/catalog/operations/_operations.py:7703: SyntaxWarning: invalid escape sequence '\:' 1017s typeName=\:code:``&attr_1:\:code:``=\:code:``&attr_2:\:code:``=\:code:``&attr_3:\:code:``=\:code:`` 1018s /usr/lib/python3/dist-packages/azure/servicemanagement/schedulermanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 1018s CURRENT_USER\my\CertificateName format. 1018s /usr/lib/python3/dist-packages/azure/servicemanagement/servicebusmanagementservice.py:59: SyntaxWarning: invalid escape sequence '\m' 1018s CURRENT_USER\my\CertificateName format. 1018s /usr/lib/python3/dist-packages/azure/servicemanagement/servicemanagementservice.py:81: SyntaxWarning: invalid escape sequence '\m' 1018s CURRENT_USER\my\CertificateName format. 1018s /usr/lib/python3/dist-packages/azure/servicemanagement/sqldatabasemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 1018s CURRENT_USER\my\CertificateName format. 1018s /usr/lib/python3/dist-packages/azure/servicemanagement/websitemanagementservice.py:55: SyntaxWarning: invalid escape sequence '\m' 1018s CURRENT_USER\my\CertificateName format. 1018s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:110: SyntaxWarning: invalid escape sequence '\d' 1018s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1018s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:1328: SyntaxWarning: invalid escape sequence '\d' 1018s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..). 1018s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4218: SyntaxWarning: invalid escape sequence '\d' 1018s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1018s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:4280: SyntaxWarning: invalid escape sequence '\d' 1018s string), pattern: ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1018s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:18198: SyntaxWarning: invalid escape sequence '\d' 1018s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1018s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19096: SyntaxWarning: invalid escape sequence '\d' 1018s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with 1018s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19185: SyntaxWarning: invalid escape sequence '\d' 1018s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1018s /usr/lib/python3/dist-packages/azure/synapse/artifacts/models/_models.py:19749: SyntaxWarning: invalid escape sequence '\d' 1018s ((\d+).)?(\d\d):(60|([0-5][0-9])):(60|([0-5][0-9])). 1018s Processing triggers for libc-bin (2.41-6ubuntu1) ... 1018s Processing triggers for man-db (2.13.0-1) ... 1171s autopkgtest [15:09:34]: test unit-tests-flaky.py: [----------------------- 1172s 1172s 1172s 1172s ############################################################ 1172s ############################################################ 1172s #### Running FLAKY tests in ansible_collections/ansible/utils 1172s ############################################################ 1172s ############################################################ 1172s Unit test controller with Python 3.13 1173s ============================= test session starts ============================== 1173s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1173s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ansible/utils 1173s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1173s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1173s created: 2/2 workers 1173s 2 workers [383 items] 1173s 1174s ........................................................................ [ 18%] 1175s ....................................................F................... [ 37%] 1175s ...................................................F...F...F............ [ 56%] 1177s ........................................................................ [ 75%] 1186s ........................................................................ [ 93%] 1187s ....................... [100%] 1187s =================================== FAILURES =================================== 1187s ___________________ TestIpFilter.test_ipaddr_undefined_value ___________________ 1187s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1187s 1187s self = 1187s 1187s def test_ipaddr_undefined_value(self): 1187s """Check ipaddr filter undefined value""" 1187s args = ["", AnsibleUndefined(name="my_ip"), ""] 1187s with pytest.raises( 1187s AnsibleFilterError, 1187s match="Unrecognized type <> for ipaddr filter ", 1187s ): 1187s > _ipaddr(*args) 1187s 1187s tests/unit/plugins/filter/test_ipaddr.py:75: 1187s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1187s 1187s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1187s kwargs = {}, keys = ['value', 'query', 'version', 'alias'] 1187s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1187s 1187s @pass_environment 1187s def _ipaddr(*args, **kwargs): 1187s """This filter is designed to return the input value if a query is True, and False if a query is False""" 1187s keys = ["value", "query", "version", "alias"] 1187s data = dict(zip(keys, args[1:])) 1187s data.update(kwargs) 1187s try: 1187s if isinstance(data["value"], str): 1187s pass 1187s elif isinstance(data["value"], list): 1187s pass 1187s elif isinstance(data["value"], int): 1187s pass 1187s else: 1187s > raise AnsibleFilterError( 1187s "Unrecognized type <{0}> for ipaddr filter <{1}>".format( 1187s type(data["value"]), 1187s "value", 1187s ), 1187s ) 1187s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipaddr filter 1187s 1187s plugins/filter/ipaddr.py:268: AnsibleFilterError 1187s 1187s During handling of the above exception, another exception occurred: 1187s 1187s self = 1187s 1187s def test_ipaddr_undefined_value(self): 1187s """Check ipaddr filter undefined value""" 1187s args = ["", AnsibleUndefined(name="my_ip"), ""] 1187s > with pytest.raises( 1187s AnsibleFilterError, 1187s match="Unrecognized type <> for ipaddr filter ", 1187s ): 1187s E AssertionError: Regex pattern did not match. 1187s E Regex: "Unrecognized type <> for ipaddr filter " 1187s E Input: "Unrecognized type <> for ipaddr filter " 1187s 1187s tests/unit/plugins/filter/test_ipaddr.py:71: AssertionError 1187s ______________________ TestIp4.test_ipv4_undefined_value _______________________ 1187s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1187s 1187s self = 1187s 1187s def test_ipv4_undefined_value(self): 1187s """Check ipv4 filter undefined value""" 1187s args = ["", AnsibleUndefined(name="my_ip"), ""] 1187s with pytest.raises( 1187s AnsibleFilterError, 1187s match="Unrecognized type <> for ipv4 filter ", 1187s ): 1187s > _ipv4(*args) 1187s 1187s tests/unit/plugins/filter/test_ipv4.py:55: 1187s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1187s 1187s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1187s kwargs = {}, keys = ['value', 'query'] 1187s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1187s 1187s @pass_environment 1187s def _ipv4(*args, **kwargs): 1187s """This filter is designed to return the input value if a query is True, and False if a query is False""" 1187s keys = ["value", "query"] 1187s data = dict(zip(keys, args[1:])) 1187s data.update(kwargs) 1187s try: 1187s if isinstance(data["value"], str): 1187s pass 1187s elif isinstance(data["value"], list): 1187s pass 1187s elif isinstance(data["value"], int): 1187s pass 1187s else: 1187s > raise AnsibleFilterError( 1187s "Unrecognized type <{0}> for ipv4 filter <{1}>".format( 1187s type(data["value"]), 1187s "value", 1187s ), 1187s ) 1187s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipv4 filter 1187s 1187s plugins/filter/ipv4.py:143: AnsibleFilterError 1187s 1187s During handling of the above exception, another exception occurred: 1187s 1187s self = 1187s 1187s def test_ipv4_undefined_value(self): 1187s """Check ipv4 filter undefined value""" 1187s args = ["", AnsibleUndefined(name="my_ip"), ""] 1187s > with pytest.raises( 1187s AnsibleFilterError, 1187s match="Unrecognized type <> for ipv4 filter ", 1187s ): 1187s E AssertionError: Regex pattern did not match. 1187s E Regex: "Unrecognized type <> for ipv4 filter " 1187s E Input: "Unrecognized type <> for ipv4 filter " 1187s 1187s tests/unit/plugins/filter/test_ipv4.py:51: AssertionError 1187s ______________________ TestIp6.test_ipv6_undefined_value _______________________ 1187s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1187s 1187s self = 1187s 1187s def test_ipv6_undefined_value(self): 1187s """Check ipv6 filter undefined value""" 1187s args = ["", AnsibleUndefined(name="my_ip"), ""] 1187s with pytest.raises( 1187s AnsibleFilterError, 1187s match="Unrecognized type <> for ipv6 filter ", 1187s ): 1187s > _ipv6(*args) 1187s 1187s tests/unit/plugins/filter/test_ipv6.py:58: 1187s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1187s 1187s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1187s kwargs = {}, keys = ['value', 'query'] 1187s data = {'query': '', 'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1187s 1187s @pass_environment 1187s def _ipv6(*args, **kwargs): 1187s """This filter is designed to return the input value if a query is True, and False if a query is False""" 1187s keys = ["value", "query"] 1187s data = dict(zip(keys, args[1:])) 1187s data.update(kwargs) 1187s try: 1187s if isinstance(data["value"], str): 1187s pass 1187s elif isinstance(data["value"], list): 1187s pass 1187s elif isinstance(data["value"], int): 1187s pass 1187s else: 1187s > raise AnsibleFilterError( 1187s "Unrecognized type <{0}> for ipv6 filter <{1}>".format( 1187s type(data["value"]), 1187s "value", 1187s ), 1187s ) 1187s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipv6 filter 1187s 1187s plugins/filter/ipv6.py:161: AnsibleFilterError 1187s 1187s During handling of the above exception, another exception occurred: 1187s 1187s self = 1187s 1187s def test_ipv6_undefined_value(self): 1187s """Check ipv6 filter undefined value""" 1187s args = ["", AnsibleUndefined(name="my_ip"), ""] 1187s > with pytest.raises( 1187s AnsibleFilterError, 1187s match="Unrecognized type <> for ipv6 filter ", 1187s ): 1187s E AssertionError: Regex pattern did not match. 1187s E Regex: "Unrecognized type <> for ipv6 filter " 1187s E Input: "Unrecognized type <> for ipv6 filter " 1187s 1187s tests/unit/plugins/filter/test_ipv6.py:54: AssertionError 1187s ____________________ TestIpWrap.test_ipwrap_undefined_value ____________________ 1187s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1187s 1187s self = 1187s 1187s def test_ipwrap_undefined_value(self): 1187s """Check ipwrap filter undefined value""" 1187s args = ["", AnsibleUndefined(name="my_ip"), ""] 1187s with pytest.raises( 1187s AnsibleFilterError, 1187s match="Unrecognized type <> for ipwrap filter ", 1187s ): 1187s > _ipwrap(*args) 1187s 1187s tests/unit/plugins/filter/test_ipwrap.py:60: 1187s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1187s 1187s args = ('', AnsibleUndefined(hint=None, obj=missing, name='my_ip'), '') 1187s kwargs = {}, keys = ['value'] 1187s data = {'value': AnsibleUndefined(hint=None, obj=missing, name='my_ip')} 1187s 1187s @pass_environment 1187s def _ipwrap(*args, **kwargs): 1187s """This filter is designed to Wrap IPv6 addresses in [ ] brackets.""" 1187s keys = ["value"] 1187s data = dict(zip(keys, args[1:])) 1187s data.update(kwargs) 1187s try: 1187s if isinstance(data["value"], str): 1187s pass 1187s elif isinstance(data["value"], list): 1187s pass 1187s elif isinstance(data["value"], bool): 1187s pass 1187s else: 1187s > raise AnsibleFilterError( 1187s "Unrecognized type <{0}> for ipwrap filter <{1}>".format( 1187s type(data["value"]), 1187s "value", 1187s ), 1187s ) 1187s E ansible.errors.AnsibleFilterError: Unrecognized type <> for ipwrap filter 1187s 1187s plugins/filter/ipwrap.py:162: AnsibleFilterError 1187s 1187s During handling of the above exception, another exception occurred: 1187s 1187s self = 1187s 1187s def test_ipwrap_undefined_value(self): 1187s """Check ipwrap filter undefined value""" 1187s args = ["", AnsibleUndefined(name="my_ip"), ""] 1187s > with pytest.raises( 1187s AnsibleFilterError, 1187s match="Unrecognized type <> for ipwrap filter ", 1187s ): 1187s E AssertionError: Regex pattern did not match. 1187s E Regex: "Unrecognized type <> for ipwrap filter " 1187s E Input: "Unrecognized type <> for ipwrap filter " 1187s 1187s tests/unit/plugins/filter/test_ipwrap.py:56: AssertionError 1187s =============================== warnings summary =============================== 1187s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_disabled_format_with_invalid_data 1187s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_format 1187s tests/unit/plugins/action/test_validate.py::TestValidate::test_support_for_format_with_invalid_data 1187s /tmp/autopkgtest.HRV60t/build.QGA/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. 1187s validator_class = jsonschema.validators.validator_for(criteria) 1187s 1187s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1187s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml - 1187s =========================== short test summary info ============================ 1187s SKIPPED [1] tests/unit/plugins/sub_plugins/cli_parsers/test_ttp_parser.py:18: could not import 'ttp': No module named 'ttp' 1187s FAILED tests/unit/plugins/filter/test_ipaddr.py::TestIpFilter::test_ipaddr_undefined_value 1187s FAILED tests/unit/plugins/filter/test_ipv4.py::TestIp4::test_ipv4_undefined_value 1187s FAILED tests/unit/plugins/filter/test_ipv6.py::TestIp6::test_ipv6_undefined_value 1187s FAILED tests/unit/plugins/filter/test_ipwrap.py::TestIpWrap::test_ipwrap_undefined_value 1187s ============ 4 failed, 379 passed, 1 skipped, 3 warnings in 14.47s ============= 1187s ## return code is 1 1187s 1187s 1187s 1187s ############################################################ 1187s ############################################################ 1187s #### Running FLAKY tests in ansible_collections/cisco/aci 1187s ############################################################ 1187s ############################################################ 1187s 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.HRV60t/build.QGA/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ansible/utils --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1187s Unit test controller with Python 3.13 1188s ============================= test session starts ============================== 1188s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1188s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/aci 1188s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1188s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1188s created: 2/2 workers 1188s 2 workers [5 items] 1188s 1188s .F.F. [100%] 1188s =================================== FAILURES =================================== 1188s __________________________ AciRest.test_invalid_input __________________________ 1188s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1188s 1188s self = 1188s 1188s def test_invalid_input(self): 1188s self.maxDiff = None 1188s 1188s error = dict( 1188s code="401", 1188s text=("Username or password is incorrect - " "FAILED local authentication"), 1188s ) 1188s 1188s imdata = [ 1188s { 1188s "error": { 1188s "attributes": { 1188s "code": "401", 1188s "text": ("Username or password is incorrect - " "FAILED local authentication"), 1188s }, 1188s }, 1188s } 1188s ] 1188s 1188s totalCount = 1 1188s 1188s json_response = '{"totalCount":"1","imdata":[{"error":{"attributes":{"code":"401","text":"Username or password is incorrect - FAILED local authentication"}}}]}' # NOQA 1188s aci.response_json(json_response) 1188s self.assertEqual(aci.error, error) 1188s self.assertEqual(aci.imdata, imdata) 1188s self.assertEqual(aci.totalCount, totalCount) 1188s 1188s # Python 2.7+ is needed for xmljson 1188s if sys.version_info < (2, 7): 1188s return 1188s 1188s xml_response = """ 1188s 1188s 1188s """ 1188s aci.response_xml(xml_response) 1188s > self.assertEqual(aci.error, error) 1188s 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'} 1188s E - {'code': -1, 1188s E ? ^ 1188s E 1188s E + {'code': '401', 1188s E ? ^^^ + 1188s E 1188s E + 'text': 'Username or password is incorrect - FAILED local authentication'} 1188s E - 'text': "Unable to parse output as XML, see 'raw' output. name 'cobra' is not " 1188s E - 'defined'} 1188s 1188s tests/unit/module_utils/test_aci.py:237: AssertionError 1188s ________________________ AciRest.test_invalid_aci_login ________________________ 1188s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1188s 1188s self = 1188s 1188s def test_invalid_aci_login(self): 1188s self.maxDiff = None 1188s 1188s error = dict( 1188s code="401", 1188s text=("Username or password is incorrect - " "FAILED local authentication"), 1188s ) 1188s 1188s imdata = [ 1188s { 1188s "error": { 1188s "attributes": { 1188s "code": "401", 1188s "text": ("Username or password is incorrect - " "FAILED local authentication"), 1188s }, 1188s }, 1188s } 1188s ] 1188s 1188s totalCount = 1 1188s 1188s json_response = '{"totalCount":"1","imdata":[{"error":{"attributes":{"code":"401","text":"Username or password is incorrect - FAILED local authentication"}}}]}' # NOQA 1188s aci.response_json(json_response) 1188s self.assertEqual(aci.error, error) 1188s self.assertEqual(aci.imdata, imdata) 1188s self.assertEqual(aci.totalCount, totalCount) 1188s 1188s # Python 2.7+ is needed for xmljson 1188s if sys.version_info < (2, 7): 1188s return 1188s 1188s xml_response = """ 1188s 1188s 1188s 1188s """ 1188s aci.response_xml(xml_response) 1188s > self.assertEqual(aci.error, error) 1188s 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'} 1188s E - {'code': -1, 1188s E ? ^ 1188s E 1188s E + {'code': '401', 1188s E ? ^^^ + 1188s E 1188s E + 'text': 'Username or password is incorrect - FAILED local authentication'} 1188s E - 'text': "Unable to parse output as XML, see 'raw' output. name 'cobra' is not " 1188s E - 'defined'} 1188s 1188s tests/unit/module_utils/test_aci.py:89: AssertionError 1188s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml - 1188s =========================== short test summary info ============================ 1188s FAILED tests/unit/module_utils/test_aci.py::AciRest::test_invalid_input - Ass... 1188s FAILED tests/unit/module_utils/test_aci.py::AciRest::test_invalid_aci_login 1188s ========================= 2 failed, 3 passed in 0.52s ========================== 1188s 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.HRV60t/build.QGA/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/aci --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/aci tests/unit/module_utils/test_aci.py" returned exit status 1. 1188s ## return code is 1 1188s 1188s 1188s 1188s ############################################################ 1188s ############################################################ 1188s #### Running FLAKY tests in ansible_collections/cisco/dnac 1188s ############################################################ 1188s ############################################################ 1188s Unit test controller with Python 3.13 1189s ============================= test session starts ============================== 1189s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1189s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/dnac 1189s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1189s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1189s created: 2/2 workers 1189s 2 workers [167 items] 1189s 1196s ..FFF.FFFFFFF.F.FFFFFFF.FFF.FFFFFFFFFFFFFFF.FFFFFFFFFFFFFFFFFFFFFFFF.FFF [ 43%] 1202s FF.F..F.FFF.FFFFFFFFFF.....FF.FFFFF.F.FF.FFFFFFF..FFFFFF....F..FFFFF.FFF [ 86%] 1203s FFFFFFF.FFFFFFFFFFFFFFF [100%] 1203s ==================================== ERRORS ==================================== 1203s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1203s result: TResult | None = func() 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1203s return list(collector.collect()) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1203s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1203s return self.obj("runTest") 1203s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1203s ______ ERROR collecting tests/unit/modules/dnac/test_discovery_intent.py _______ 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1203s result: TResult | None = func() 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1203s return list(collector.collect()) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1203s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1203s return self.obj("runTest") 1203s E TypeError: TestDnacDiscoveryIntent.__init__() takes 1 positional argument but 2 were given 1203s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1203s result: TResult | None = func() 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1203s return list(collector.collect()) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1203s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1203s return self.obj("runTest") 1203s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1203s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1203s result: TResult | None = func() 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1203s return list(collector.collect()) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1203s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1203s return self.obj("runTest") 1203s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1203s _________ ERROR collecting tests/unit/modules/dnac/test_pnp_intent.py __________ 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1203s result: TResult | None = func() 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1203s return list(collector.collect()) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1203s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1203s return self.obj("runTest") 1203s E TypeError: TestDnacPnPIntent.__init__() takes 1 positional argument but 2 were given 1203s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1203s result: TResult | None = func() 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1203s return list(collector.collect()) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1203s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1203s return self.obj("runTest") 1203s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1203s _________ ERROR collecting tests/unit/modules/dnac/test_site_intent.py _________ 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1203s result: TResult | None = func() 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1203s return list(collector.collect()) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1203s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1203s return self.obj("runTest") 1203s E TypeError: TestDnacSiteIntent.__init__() takes 1 positional argument but 2 were given 1203s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1203s result: TResult | None = func() 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1203s return list(collector.collect()) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1203s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1203s return self.obj("runTest") 1203s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1203s _________ ERROR collecting tests/unit/modules/dnac/test_swim_intent.py _________ 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1203s result: TResult | None = func() 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1203s return list(collector.collect()) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1203s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1203s return self.obj("runTest") 1203s E TypeError: TestDnacSwimIntent.__init__() takes 1 positional argument but 2 were given 1203s _______ ERROR collecting tests/unit/modules/dnac/test_template_intent.py _______ 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:341: in from_call 1203s result: TResult | None = func() 1203s /usr/lib/python3/dist-packages/_pytest/runner.py:389: in collect 1203s return list(collector.collect()) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:97: in collect 1203s self.session._fixturemanager.parsefactories(self.newinstance(), self.nodeid) 1203s /usr/lib/python3/dist-packages/_pytest/unittest.py:82: in newinstance 1203s return self.obj("runTest") 1203s E TypeError: TestDnacTemplateIntent.__init__() takes 1 positional argument but 2 were given 1203s =================================== FAILURES =================================== 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_null_sync_status _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_null_sync_status(self): 1203s """ 1203s Test case for device credential workflow manager when exception occured during sync credential. 1203s 1203s This test case checks the behavior of the device credential workflow manager, when exception occured during sync credential in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_apply 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result['msg'], 1203s "Exception occurred while getting global device credentials sync status: " 1203s ) 1203s E AssertionError: 'An exception occurred while retrieving Si[515 chars]rue}' != 'Exception occurred while getting global d[27 chars]us: ' 1203s 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} 1203s E + Exception occurred while getting global device credentials sync status: 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:411: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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: . 1203s 1203s 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} 1203s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_negative_config_input _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_accesspoint_workflow_manager_negative_config_input(self): 1203s """ 1203s Test case for access point workfollow manager and negative test verify ap update 1203s 1203s This test case checks the behavior of the update access point data in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s dnac_version="2.3.7.6", 1203s config=self.playbook_config_update_some_missing_data 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s self.maxDiff = None 1203s > self.assertEqual( 1203s result.get('msg'), 1203s 'Invalid parameters in playbook config: \'[["Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1203s 'for the radio type xor_radio allowed series 280", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1203s 'for the radio type xor_radio allowed series 380", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1203s 'for the radio type xor_radio allowed series 480", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1203s 'for the radio type xor_radio allowed series 9120", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1203s 'for the radio type xor_radio allowed series 9166", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1203s 'for the radio type xor_radio allowed series IW9167EH", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1203s 'for the radio type xor_radio allowed series IW9165E", "Access Point series \'Cisco 9164I Series Unified Access Points\' not supported ' + 1203s 'for the radio type xor_radio allowed series IW9165DH"], "management_ip_address: Invalid Management IP ' + 1203s 'Address \'204.192.12.201dsd\' in playbook.", \'ap_name:hostname,family,type,mac_address,management_ip_address,' + 1203s 'ap_ethernet_mac_address : The string exceeds the allowed range of max 32 char\', "led_status: Invalid LED Status \'Enableddd\' in ' + 1203s 'playbook.", "ap_mode: Invalid value \'Monitorw\' for ap_mode in playbook. Must be one of: Local, Monitor, Sniffer or ' + 1203s 'Bridge.", "failover_priority: Invalid value \'Lossw\' for failover_priority in playbook. Must be one of: Low, Medium, High or ' + 1203s 'Critical.", "clean_air_si_2.4ghz: Invalid value \'Disableds\' in playbook. Must be ' + 1203s 'either \'Enabled\' or \'Disabled\'.", "clean_air_si_5ghz: Invalid value \'Disableds\' in playbook. Must be ' + 1203s 'either \'Enabled\' or \'Disabled\'.", "clean_air_si_6ghz: Invalid value \'Enableds\' in playbook. Must be ' + 1203s 'either \'Enabled\' or \'Disabled\'.", "primary_ip_address: Invalid primary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in ' + 1203s 'playbook", "secondary_ip_address: Invalid secondary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in playbook", "tertiary_ip_address: ' + 1203s 'Invalid tertiary_ip_address \'{\'address\': \'204.192.4.20dfasd0\'}\' in playbook", \'Radio Params cannot be changed when AP mode is in ' + 1203s 'Monitorw.\', "admin_status: Invalid value \'Enabledsds\' for admin_status in playbook. Must be ' + 1203s 'either \'Enabled\' or \'Disabled\'.", "channel_assignment_mode: Invalid value \'any\' for Channel Assignment Mode in playbook. Must be ' + 1203s 'either \'Global\' or \'Custom\'.", "channel_number: Invalid value \'22\' for Channel Number in playbook. Must be one of: ' + 1203s '[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 ' + 1203s 'of: \'20 MHz\', \'40 MHz\', \'80 MHz\', \'160 MHz\', or \'320 MHz\'.", "power_assignment_mode: Invalid ' + 1203s 'value \'any\' for Power assignment mode in ' + 1203s 'playbook. Must be either \'Global\' or \'Custom\'.", \'powerlevel: This configuration is only supported with Client-Serving Radio Role ' + 1203s 'Assignment None \', "radio_role_assignment: Invalid value \'any\' for radio role assignment in playbook. Must be one ' + 1203s 'of: \'Auto\', \'Monitor\' or \'Client-Serving\'.", \'Radio Params cannot be changed when AP mode is in Monitorw.\', "admin_status: ' + 1203s 'Invalid value \'Enabledsds\' for admin_status in playbook. Must be either \'Enabled\' or \'Disabled\'.", "antenna_gain: Invalid \'41\' in ' + 1203s 'playbook, allowed range of min: 0 and max: 40", "channel_assignment_mode: Invalid value \'any\' for Channel Assignment Mode in playbook. ' + 1203s 'Must be either \'Global\' or \'Custom\'.", ' + 1203s '"radio_role_assignment: Invalid value \'Client-Serving\'. Hence, AP mode is not Local. Kindly change the AP mode to Local then ' + 1203s 'change the radio_role_assignment to Auto."]\' ' 1203s ) 1203s 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]]\' ' 1203s 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'."]' 1203s E ? ^^^^^^^^^^ ^^^ ^^^^^^^^^^ ^^^ ^^^^^^^^^^ ^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ --------------------------------------------------------------------------------------------------- 1203s 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."]' 1203s E ? ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1203s 1203s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:221: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s 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'."]' 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_update_verify _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s def get_tasks_by_id(self, task_id): 1203s """ 1203s Get the tasks of a task ID in Cisco Catalyst Center. 1203s Args: 1203s self (object): An instance of a class that provides access to Cisco Catalyst Center. 1203s task_id (str): The unique identifier of the task for which you want to retrieve details. 1203s Returns: 1203s dict or None: A dictionary status information about the specified task, 1203s or None if the task with the given task_id is not found. 1203s Description: 1203s Call the API 'get_tasks_by_id' to get the status of the task. 1203s Return the details along with the status of the task. 1203s """ 1203s # Need to handle exception 1203s task_status = None 1203s try: 1203s > response = self.dnac._exec( 1203s family="task", 1203s function="get_tasks_by_id", 1203s params={"id": task_id} 1203s ) 1203s 1203s plugins/module_utils/dnac.py:1662: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1203s return self._mock_call(*args, **kwargs) 1203s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1203s return self._execute_mock_call(*args, **kwargs) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s self = , args = () 1203s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191e542-b3fb-7ac8-ae85-81e461c8b022'}} 1203s effect = 1203s 1203s def _execute_mock_call(self, /, *args, **kwargs): 1203s # separate from _increment_mock_call so that awaited functions are 1203s # executed separately from their call, also AsyncMock overrides this method 1203s 1203s effect = self.side_effect 1203s if effect is not None: 1203s if _is_exception(effect): 1203s raise effect 1203s elif not _callable(effect): 1203s > result = next(effect) 1203s E StopIteration 1203s 1203s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration 1203s 1203s During handling of the above exception, another exception occurred: 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_update_verify(self): 1203s """ 1203s Test case for device credential workflow manager when updating a device credential. 1203s 1203s This test case checks the behavior of the device credential workflow manager when updating a new device credentials in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_creation 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:336: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/device_credential_workflow_manager.py:3277: in main 1203s ccc_credential.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/device_credential_workflow_manager.py:2977: in get_diff_merged 1203s self.update_device_credentials().check_return_status() 1203s plugins/modules/device_credential_workflow_manager.py:2684: in update_device_credentials 1203s self.check_tasks_response_status(response, "update_global_credentials_v2").check_return_status() 1203s plugins/module_utils/dnac.py:1730: in check_tasks_response_status 1203s task_details = self.get_tasks_by_id(task_id) 1203s plugins/module_utils/dnac.py:1684: in get_tasks_by_id 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s 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: . 1203s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_provision_device _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_accesspoint_workflow_manager_provision_device(self): 1203s """ 1203s Test case for access point workfollow manager provision and update device. 1203s 1203s This test case checks the behavior of the access point workflow when provisioned in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s dnac_version="2.3.7.6", 1203s config_verify=True, 1203s config=self.playbook_config_complete 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:145: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/accesspoint_workflow_manager.py:4190: in main 1203s ccc_network.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/accesspoint_workflow_manager.py:1894: in get_diff_merged 1203s self.validate_ap_config_parameters(ap_config).check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s 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']' 1203s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_add_existing_devices _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_inventory_workflow_manager_playbook_add_existing_devices(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.5.3", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_add_existing_devices 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=False) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center." 1203s ) 1203s 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." 1203s E - No changes were made. No inventory actions were performed in Cisco Catalyst Center. 1203s E + device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center. 1203s 1203s tests/unit/modules/dnac/test_inventory_workflow_manager.py:282: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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.'} 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1203s 1203s 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'} 1203s 1203s WARNING logger:dnac.py:294 Inventory: verify_diff_merged: 3882: verify starts here verify diff merged 1203s __ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_add_udf __ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_inventory_workflow_manager_playbook_add_udf(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_add_udf 1203s ) 1203s ) 1203s result = self.execute_module(changed=True, failed=False) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center." 1203s ) 1203s 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." 1203s E - Global User Defined Field(UDF) named 'Test123' has been successfully added to the device. 1203s E + device(s) '70.2.2.2', '80.2.2.2' already present in Cisco Catalyst Center. 1203s 1203s tests/unit/modules/dnac/test_inventory_workflow_manager.py:306: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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."} 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1203s 1203s 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']} 1203s 1203s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3570: udf_field_list 1203s 1203s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3571: [{'name': 'Test123'}] 1203s 1203s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3584: False 1203s 1203s WARNING logger:dnac.py:294 Inventory: verify_diff_merged: 3882: verify starts here verify diff merged 1203s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_del_provisioned_device_2353 _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_inventory_workflow_manager_playbook_del_provisioned_device_2353(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.5.3", 1203s state="deleted", 1203s config_verify=True, 1203s config=self.playbook_del_provisioned_device_2353 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_inventory_workflow_manager.py:553: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/inventory_workflow_manager.py:4197: in main 1203s ccc_device.get_diff_state_apply[state](config).check_return_status() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_diff_deleted(self, config): 1203s """ 1203s Main function to delete devices in Cisco Catalyst Center based on device IP address. 1203s Parameters: 1203s config (dict): The configuration settings for the deletion process. 1203s Returns: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s Description: 1203s This method compares the provided configuration against the current 1203s devices in the Cisco Catalyst Center and deletes devices based on 1203s their IP addresses. It returns a success status indicating whether 1203s the deletion process was completed successfully. 1203s """ 1203s 1203s device_to_delete = self.get_device_ips_from_config_priority() 1203s self.result['msg'] = [] 1203s 1203s # Handle Global User Defined Fields (UDF) Deletion 1203s if self.config[0].get('add_user_defined_field'): 1203s return self.delete_user_defined_fields() 1203s 1203s # Loop over devices to delete them 1203s for device_ip in device_to_delete: 1203s if device_ip not in self.have.get("device_in_ccc"): 1203s self.status = "success" 1203s self.result['changed'] = False 1203s self.msg = "Device '{0}' is not present in Cisco Catalyst Center so can't perform delete operation".format(device_ip) 1203s self.no_device_to_delete.append(device_ip) 1203s self.result['msg'].append(self.msg) 1203s self.result['response'] = self.msg 1203s self.log(self.msg, "INFO") 1203s continue 1203s device_ids = self.get_device_ids([device_ip]) 1203s > device_id = device_ids[0] 1203s E IndexError: list index out of range 1203s 1203s plugins/modules/inventory_workflow_manager.py:3665: IndexError 1203s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_a_device _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_inventory_workflow_manager_playbook_delete_a_device(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="deleted", 1203s config_verify=True, 1203s config=self.playbook_delete_a_device 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_inventory_workflow_manager.py:329: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/inventory_workflow_manager.py:4197: in main 1203s ccc_device.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/inventory_workflow_manager.py:3668: in get_diff_deleted 1203s self.handle_device_deletion(device_ip) 1203s plugins/modules/inventory_workflow_manager.py:3857: in handle_device_deletion 1203s self.check_tasks_response_status(response, api_name='deleted_device_by_id') 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def check_tasks_response_status(self, response, api_name): 1203s """ 1203s Get the task response status from taskId 1203s Args: 1203s self: The current object details. 1203s response (dict): API response. 1203s api_name (str): API name. 1203s Returns: 1203s self (object): The current object with updated desired Fabric Transits information. 1203s Description: 1203s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1203s state or till it reaches the maximum timeout. 1203s Log the task details and return self. 1203s """ 1203s 1203s if not response: 1203s self.msg = "response is empty" 1203s self.status = "exited" 1203s return self 1203s 1203s if not isinstance(response, dict): 1203s self.msg = "response is not a dictionary" 1203s self.status = "exited" 1203s return self 1203s 1203s task_info = response.get("response") 1203s if task_info.get("errorcode") is not None: 1203s self.msg = response.get("response").get("detail") 1203s self.status = "failed" 1203s return self 1203s 1203s task_id = task_info.get("taskId") 1203s start_time = time.time() 1203s while True: 1203s elapsed_time = time.time() - start_time 1203s if elapsed_time >= self.max_timeout: 1203s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1203s .format(self.max_timeout, task_id) + \ 1203s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1203s self.log(self.msg, "WARNING") 1203s self.status = "failed" 1203s break 1203s 1203s task_details = self.get_tasks_by_id(task_id) 1203s self.log('Getting tasks details from task ID {0}: {1}' 1203s .format(task_id, task_details), "DEBUG") 1203s 1203s > task_status = task_details.get("status") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/module_utils/dnac.py:1734: AttributeError 1203s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_provision_old_version _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_accesspoint_workflow_manager_provision_old_version(self): 1203s """ 1203s Test case for access point workfollow manager provision device old version. 1203s 1203s This test case checks the behavior of the access point workflow when provisioned in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s dnac_version="2.3.5.3", 1203s config_verify=True, 1203s config=self.playbook_config_provision_old_version 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s self.maxDiff = None 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center." 1203s ) 1203s E AssertionError: 'AP - LTTS_Test_9124_T2 does not need any update' != "The provided site name 'Global/Chennai/L[94 chars]ter." 1203s E - AP - LTTS_Test_9124_T2 does not need any update 1203s E + The provided site name 'Global/Chennai/LTTS/FLOOR1' is either invalid or not present in the Cisco Catalyst Center. 1203s 1203s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:302: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s 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' 1203s 1203s 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. 1203s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_device_udf _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_inventory_workflow_manager_playbook_delete_device_udf(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="deleted", 1203s config_verify=True, 1203s config=self.playbook_delete_device_udf 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_inventory_workflow_manager.py:478: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/inventory_workflow_manager.py:4197: in main 1203s ccc_device.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/inventory_workflow_manager.py:3668: in get_diff_deleted 1203s self.handle_device_deletion(device_ip) 1203s plugins/modules/inventory_workflow_manager.py:3857: in handle_device_deletion 1203s self.check_tasks_response_status(response, api_name='deleted_device_by_id') 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def check_tasks_response_status(self, response, api_name): 1203s """ 1203s Get the task response status from taskId 1203s Args: 1203s self: The current object details. 1203s response (dict): API response. 1203s api_name (str): API name. 1203s Returns: 1203s self (object): The current object with updated desired Fabric Transits information. 1203s Description: 1203s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1203s state or till it reaches the maximum timeout. 1203s Log the task details and return self. 1203s """ 1203s 1203s if not response: 1203s self.msg = "response is empty" 1203s self.status = "exited" 1203s return self 1203s 1203s if not isinstance(response, dict): 1203s self.msg = "response is not a dictionary" 1203s self.status = "exited" 1203s return self 1203s 1203s task_info = response.get("response") 1203s if task_info.get("errorcode") is not None: 1203s self.msg = response.get("response").get("detail") 1203s self.status = "failed" 1203s return self 1203s 1203s task_id = task_info.get("taskId") 1203s start_time = time.time() 1203s while True: 1203s elapsed_time = time.time() - start_time 1203s if elapsed_time >= self.max_timeout: 1203s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1203s .format(self.max_timeout, task_id) + \ 1203s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1203s self.log(self.msg, "WARNING") 1203s self.status = "failed" 1203s break 1203s 1203s task_details = self.get_tasks_by_id(task_id) 1203s self.log('Getting tasks details from task ID {0}: {1}' 1203s .format(task_id, task_details), "DEBUG") 1203s 1203s > task_status = task_details.get("status") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/module_utils/dnac.py:1734: AttributeError 1203s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_delete_provisioned_device _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_inventory_workflow_manager_playbook_delete_provisioned_device(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="deleted", 1203s config_verify=True, 1203s config=self.playbook_delete_provisioned_device 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_inventory_workflow_manager.py:354: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/inventory_workflow_manager.py:4197: in main 1203s ccc_device.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/inventory_workflow_manager.py:3675: in get_diff_deleted 1203s self.delete_provisioned_device_v2(device_ip) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def delete_provisioned_device_v2(self, device_ip): 1203s """ 1203s Deletes provisioned devices for versions > 2.3.5.3. 1203s 1203s Parameters: 1203s device_ip (str): The IP address of the device to be deleted. 1203s 1203s Description: 1203s This method deletes a provisioned device with the specified IP address 1203s for software versions greater than 2.3.5.3. It ensures that the device 1203s is properly removed from the Cisco Catalyst Center, handling any 1203s required validations and API interactions. 1203s """ 1203s 1203s device_ids = self.get_device_ids([device_ip]) 1203s > device_id = device_ids[0] 1203s E IndexError: list index out of range 1203s 1203s plugins/modules/inventory_workflow_manager.py:3801: IndexError 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 Inventory: get_device_ids: 2403: Error while fetching device '204.1.2.4' from Cisco Catalyst Center: 0 1203s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_some_error_data_update_accesspoint _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_accesspoint_workflow_manager_some_error_data_update_accesspoint(self): 1203s """ 1203s Test case for access point workfollow manager negative case. 1203s 1203s This test case checks the behavior of the access point workflow when wrong data passed in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s dnac_version="2.3.7.6", 1203s config=self.playbook_config_update_some_error_data 1203s ) 1203s ) 1203s result = self.execute_module(changed=True, failed=True) 1203s self.maxDiff = None 1203s > self.assertEqual( 1203s result.get('msg'), 1203s 'The provided site name \'Global/USA/New York/BLDNYCGlobal/USA/New York/BLDNYCGlobal/USA/iikk/FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOOR2FLOO\' ' + 1203s 'is either invalid or not present in the Cisco Catalyst Center.' 1203s ) 1203s E AssertionError: "An error occurred while executing GET API[211 chars]n: ." != "The provided site name 'Global/USA/New Yo[175 chars]ter." 1203s 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: . 1203s 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. 1203s 1203s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:195: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s 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: . 1203s 1203s 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} 1203s 1203s 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. 1203s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_prov_device_2353 _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_inventory_workflow_manager_playbook_prov_device_2353(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.5.3", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_prov_device_2353 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_inventory_workflow_manager.py:578: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/inventory_workflow_manager.py:4197: in main 1203s ccc_device.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/inventory_workflow_manager.py:3613: in get_diff_merged 1203s self.provisioned_wired_device().check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1203s 1203s 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'}]} 1203s 1203s ERROR logger:dnac.py:294 Inventory: provisioned_wired_device: 1720: Cannot do Provisioning for device 204.1.2.4. 1203s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_provision_device _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_inventory_workflow_manager_playbook_provision_device(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_provision_device 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_inventory_workflow_manager.py:528: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/inventory_workflow_manager.py:4197: in main 1203s ccc_device.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/inventory_workflow_manager.py:3613: in get_diff_merged 1203s self.provisioned_wired_device().check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Inventory: get_diff_merged: 3566: self.config 1203s 1203s 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'}]} 1203s 1203s WARNING logger:dnac.py:294 Inventory: is_device_assigned_to_site: 1876: Response collected from the API 'get_device_detail' {'response': [], 'version': '1.0'} 1203s 1203s 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' 1203s 1203s 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} 1203s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_provision_failed_for_site _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_inventory_workflow_manager_playbook_provision_failed_for_site(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_provision_failed_for_site 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Wired Device Provisioning failed for all devices" 1203s ) 1203s E AssertionError: "An exception occurred while retrieving S[136 chars]able" != 'Wired Device Provisioning failed for all devices' 1203s 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 1203s E + Wired Device Provisioning failed for all devices 1203s 1203s tests/unit/modules/dnac/test_inventory_workflow_manager.py:380: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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 1203s _ TestDnacAccesspointWorkflow.test_accesspoint_workflow_manager_task_error_update_accesspoint _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_accesspoint_workflow_manager_task_error_update_accesspoint(self): 1203s """ 1203s Test case for access point workfollow manager and negative test verify ap update. 1203s 1203s This test case checks the behavior of the nagative test case of update in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s dnac_version="2.3.7.6", 1203s config=self.playbook_config 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Unable to get success response, hence AP config not updated" 1203s ) 1203s E AssertionError: "An error occurred while executing API ca[74 chars]n: ." != 'Unable to get success response, hence AP[15 chars]ated' 1203s E - An error occurred while executing API call to Function: 'get_task_details_by_id' due to the the following exception: . 1203s E + Unable to get success response, hence AP config not updated 1203s 1203s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:326: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Accesspoint: update_ap_configuration: 3501: No AP name or MAC address found in ap_config. 1203s 1203s 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: . 1203s ___________ TestDnacAccesspointWorkflow.test_invalid_get_site_device ___________ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_invalid_get_site_device(self): 1203s """ 1203s Test case for access point workfollow manager get device details from site 1203s 1203s This test case checks the behavior of the access point workflow when check the devices in the site on the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s dnac_version="2.3.7.6", 1203s config=self.get_membership_empty 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Required param of mac_address,ip_address or hostname is not in playbook config" 1203s ) 1203s E AssertionError: 'Successfully validated playbook config pa[1253 chars]}\n]' != 'Required param of mac_address,ip_address [33 chars]nfig' 1203s E Diff is 1423 characters long. Set self.maxDiff to None to see it. 1203s 1203s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:399: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Accesspoint: get_accesspoint_details: 2688: Required param of mac_address,ip_address or hostname is not in playbook config 1203s 1203s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Required param of mac_address,ip_address or hostname is not in playbook config 1203s _____________ TestDnacAccesspointWorkflow.test_invalid_site_exists _____________ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_invalid_site_exists(self): 1203s """ 1203s Test case for access point workfollow manager check site exists. 1203s 1203s This test case checks the behavior of the access point workflow when site exist in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s dnac_version="2.3.7.6", 1203s config=self.playbook_config_provision 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "MAC Address is not Access point" 1203s ) 1203s E AssertionError: 'Provided device is not Access Point.' != 'MAC Address is not Access point' 1203s E - Provided device is not Access Point. 1203s E + MAC Address is not Access point 1203s 1203s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:350: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'msg': 'Provided device is not Access Point.', 'response': 'Provided device is not Access Point.', 'failed': True} 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Provided device is not Access Point. 1203s _____________ TestDnacAccesspointWorkflow.test_invalid_wlc_device ______________ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_invalid_wlc_device(self): 1203s """ 1203s Test case for access point workfollow manager check invalid wireless controller. 1203s 1203s This test case checks the behavior of the access point workflow of invalid wlc specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s dnac_version="2.3.7.6", 1203s config=self.playbook_config_provision 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s self.maxDiff = None 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Wireles controller is not provisioned:" 1203s ) 1203s E AssertionError: "An error occurred while executing GET AP[157 chars]n: ." != 'Wireles controller is not provisioned:' 1203s 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: . 1203s E + Wireles controller is not provisioned: 1203s 1203s tests/unit/modules/dnac/test_accesspoint_workflow_manager.py:170: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s 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: . 1203s 1203s 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} 1203s 1203s ERROR logger:dnac.py:294 Accesspoint: verify_ap_provision: 3010: Wireles controller is not provisioned: 1203s 1203s ERROR logger:dnac.py:294 Accesspoint: set_operation_result: 1780: Wireles controller is not provisioned: 1203s _ TestDnacInventoryWorkflow.test_inventory_workflow_manager_playbook_update_mgmt_ip _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_inventory_workflow_manager_playbook_update_mgmt_ip(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_update_mgmt_ip 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_inventory_workflow_manager.py:503: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/inventory_workflow_manager.py:4197: in main 1203s ccc_device.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/inventory_workflow_manager.py:3391: in get_diff_merged 1203s csv_reader = self.decrypt_and_read_csv(export_response, password) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def decrypt_and_read_csv(self, response, password): 1203s """ 1203s Parameters: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s response (requests.Response): HTTP response object containing the encrypted CSV file. 1203s password (str): Password used for decrypting the CSV file. 1203s Returns: 1203s csv.DictReader: A CSV reader object for the decrypted content, allowing iteration over rows as dictionaries. 1203s Description: 1203s Decrypts and reads a CSV-like file from the given HTTP response using the provided password. 1203s """ 1203s 1203s > zip_data = BytesIO(response.data) 1203s E AttributeError: 'NoneType' object has no attribute 'data' 1203s 1203s plugins/modules/inventory_workflow_manager.py:1132: AttributeError 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_already_sync_cred _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_already_sync_cred(self): 1203s """ 1203s Test case for device credential workflow manager when applying a device credential to site devices where sync is already applied. 1203s 1203s This test case checks the behavior of the device credential workflow manager when applying a device credential to site devices 1203s 1203s where sync is already applied in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_apply 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=False) 1203s print(result) 1203s self.assertEqual( 1203s > result['response'][0]['applyCredential']['Applied Credentials']['msg'], 1203s "Provided credentials category is/are already synced." 1203s ) 1203s E KeyError: 'applyCredential' 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:314: KeyError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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': []} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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'} 1203s _________ TestNetworkCompliance.test_run_compliance_categories_iplist __________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_categories_iplist(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_categories_iplist") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:412: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_run_compliance_categories: 510: Validating the provided run compliance categories: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_run_compliance_categories: 518: Validation successful: valid run compliance categorites provided: ['INTENT', 'RUNNING_CONFIG', 'IMAGE', 'PSIRT'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s 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). 1203s 1203s 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). 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_apply_sync _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s def get_tasks_by_id(self, task_id): 1203s """ 1203s Get the tasks of a task ID in Cisco Catalyst Center. 1203s Args: 1203s self (object): An instance of a class that provides access to Cisco Catalyst Center. 1203s task_id (str): The unique identifier of the task for which you want to retrieve details. 1203s Returns: 1203s dict or None: A dictionary status information about the specified task, 1203s or None if the task with the given task_id is not found. 1203s Description: 1203s Call the API 'get_tasks_by_id' to get the status of the task. 1203s Return the details along with the status of the task. 1203s """ 1203s # Need to handle exception 1203s task_status = None 1203s try: 1203s > response = self.dnac._exec( 1203s family="task", 1203s function="get_tasks_by_id", 1203s params={"id": task_id} 1203s ) 1203s 1203s plugins/module_utils/dnac.py:1662: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1203s return self._mock_call(*args, **kwargs) 1203s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1203s return self._execute_mock_call(*args, **kwargs) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s self = , args = () 1203s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191ea00-6acf-7863-83c3-638499ad0aff'}} 1203s effect = 1203s 1203s def _execute_mock_call(self, /, *args, **kwargs): 1203s # separate from _increment_mock_call so that awaited functions are 1203s # executed separately from their call, also AsyncMock overrides this method 1203s 1203s effect = self.side_effect 1203s if effect is not None: 1203s if _is_exception(effect): 1203s raise effect 1203s elif not _callable(effect): 1203s > result = next(effect) 1203s E StopIteration 1203s 1203s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration 1203s 1203s During handling of the above exception, another exception occurred: 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_apply_sync(self): 1203s """ 1203s Test case for device credential workflow manager when applying a device credential to site devices. 1203s 1203s This test case checks the behavior of the device credential workflow manager when applying a device credential 1203s 1203s to site devices in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_apply 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:362: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/device_credential_workflow_manager.py:3277: in main 1203s ccc_credential.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/device_credential_workflow_manager.py:2983: in get_diff_merged 1203s self.apply_credentials_to_site().check_return_status() 1203s plugins/modules/device_credential_workflow_manager.py:2936: in apply_credentials_to_site 1203s self.check_tasks_response_status(response, 1203s plugins/module_utils/dnac.py:1730: in check_tasks_response_status 1203s task_details = self.get_tasks_by_id(task_id) 1203s plugins/module_utils/dnac.py:1684: in get_tasks_by_id 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s 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: . 1203s ____________ TestNetworkCompliance.test_run_compliance_with_iplist _____________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_iplist(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=False, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_iplist") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:349: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_1 ________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_iplist_failure_1(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=False, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_iplist") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:541: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_2 ________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_iplist_failure_2(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_iplist") 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertIn( 1203s "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call", 1203s result.get('msg') 1203s ) 1203s 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)." 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:563: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s 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). 1203s 1203s 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). 1203s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_3 ________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_iplist_failure_3(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_iplist") 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertEqual( 1203s "An error occurred while retrieving the task_id of the run_compliance operation.", 1203s result.get('msg') 1203s ) 1203s E AssertionError: 'An error occurred while retrieving the t[35 chars]ion.' != "No device UUIDs were fetched for network[153 chars]Ps)." 1203s E - An error occurred while retrieving the task_id of the run_compliance operation. 1203s 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). 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:584: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s 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). 1203s 1203s 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). 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_assign_cred_1 _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s def get_tasks_by_id(self, task_id): 1203s """ 1203s Get the tasks of a task ID in Cisco Catalyst Center. 1203s Args: 1203s self (object): An instance of a class that provides access to Cisco Catalyst Center. 1203s task_id (str): The unique identifier of the task for which you want to retrieve details. 1203s Returns: 1203s dict or None: A dictionary status information about the specified task, 1203s or None if the task with the given task_id is not found. 1203s Description: 1203s Call the API 'get_tasks_by_id' to get the status of the task. 1203s Return the details along with the status of the task. 1203s """ 1203s # Need to handle exception 1203s task_status = None 1203s try: 1203s > response = self.dnac._exec( 1203s family="task", 1203s function="get_tasks_by_id", 1203s params={"id": task_id} 1203s ) 1203s 1203s plugins/module_utils/dnac.py:1662: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1203s return self._mock_call(*args, **kwargs) 1203s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1203s return self._execute_mock_call(*args, **kwargs) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s self = , args = () 1203s kwargs = {'family': 'task', 'function': 'get_tasks_by_id', 'params': {'id': '0191e691-f5f5-7c89-9cf4-099515272844'}} 1203s effect = 1203s 1203s def _execute_mock_call(self, /, *args, **kwargs): 1203s # separate from _increment_mock_call so that awaited functions are 1203s # executed separately from their call, also AsyncMock overrides this method 1203s 1203s effect = self.side_effect 1203s if effect is not None: 1203s if _is_exception(effect): 1203s raise effect 1203s elif not _callable(effect): 1203s > result = next(effect) 1203s E StopIteration 1203s 1203s /usr/lib/python3.13/unittest/mock.py:1230: StopIteration 1203s 1203s During handling of the above exception, another exception occurred: 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_assign_cred_1(self): 1203s """ 1203s Test case for device credential workflow manager when assigning a device credential to site in dnac_version="2.3.7.6". 1203s 1203s This test case checks the behavior of the device credential workflow manager when assigning a device credential to site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_assign 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:261: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/device_credential_workflow_manager.py:3277: in main 1203s ccc_credential.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/device_credential_workflow_manager.py:2980: in get_diff_merged 1203s self.assign_credentials_to_site().check_return_status() 1203s plugins/modules/device_credential_workflow_manager.py:2757: in assign_credentials_to_site 1203s self.check_tasks_response_status( 1203s plugins/module_utils/dnac.py:1730: in check_tasks_response_status 1203s task_details = self.get_tasks_by_id(task_id) 1203s plugins/module_utils/dnac.py:1684: in get_tasks_by_id 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s 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: . 1203s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_4 ________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_iplist_failure_4(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_iplist") 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertIn( 1203s "Error occurred while retrieving 'get_task_by_id' for Task Run Compliance Check with Task id", 1203s result.get('msg') 1203s ) 1203s 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)." 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:605: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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' 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s 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). 1203s 1203s 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). 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_assign_cred_2 _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_assign_cred_2(self): 1203s """ 1203s Test case for device credential workflow manager when assigning a device credential to site in dnac_version="2.3.5.3". 1203s 1203s This test case checks the behavior of the device credential workflow manager when assigning a device credential to site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.5.3", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_assign 1203s ) 1203s ) 1203s result = self.execute_module(changed=True, failed=False) 1203s print(result) 1203s self.assertEqual( 1203s > result['response'][0]['assignCredential']['Assign Credentials']['msg'], 1203s "Device Credential Assigned to a site is Successfully" 1203s ) 1203s E KeyError: 'assignCredential' 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:288: KeyError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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': []} 1203s _______ TestNetworkCompliance.test_run_compliance_with_iplist_failure_5 ________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_iplist_failure_5(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_iplist") 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertIn( 1203s "An error occurred while retrieving Compliance Details for device:192.168.0.0 using 'compliance_details_of_device' API call", 1203s result.get('msg') 1203s ) 1203s 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)." 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:626: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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' 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s 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). 1203s 1203s 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). 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_creation _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_creation(self): 1203s """ 1203s Test case for device credential workflow manager when creating a device credential. 1203s 1203s This test case checks the behavior of the device credential workflow manager when creating a new device credentials in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_creation 1203s ) 1203s ) 1203s result = self.execute_module(changed=True, failed=False) 1203s print(result) 1203s self.assertEqual( 1203s > result['response'][0]['globalCredential']['Creation']['msg'], 1203s "Global Credential Created Successfully" 1203s ) 1203s E KeyError: 'globalCredential' 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:216: KeyError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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': []} 1203s __________ TestNetworkCompliance.test_run_compliance_with_iplist_site __________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_iplist_site(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_iplist_site") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:391: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 serialFATAL: 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.HRV60t/build.QGA/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/dnac --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1203s 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'}]} 1203s 1203s 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 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1203s 1203s 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'}. 1203s 1203s 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'}]} 1203s 1203s 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'}]} 1203s 1203s 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'. 1203s 1203s 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'. 1203s 1203s 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'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1203s 1203s 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'}. 1203s 1203s 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'} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1203s 1203s 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'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b 1203s 1203s 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). 1203s 1203s 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). 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_deletion _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_deletion(self): 1203s """ 1203s Test case for device credential workflow manager when deleting a device credential. 1203s 1203s This test case checks the behavior of the device credential workflow manager when deleting a device credentials in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="deleted", 1203s config_verify=True, 1203s config=self.playbook_config_deletion 1203s ) 1203s ) 1203s result = self.execute_module(changed=True, failed=False) 1203s print(result) 1203s self.assertEqual( 1203s > result['response'][0]['globalCredential']['Deletion']['msg'], 1203s "Global Device Credentials Deleted Successfully" 1203s ) 1203s E KeyError: 'globalCredential' 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:240: KeyError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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': []} 1203s _____________ TestNetworkCompliance.test_run_compliance_with_site ______________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_site(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=False, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_site") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:370: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1203s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_reachable_devices_from_site(self, site_name): 1203s """ 1203s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1203s Args: 1203s site_id (str): The ID of the site from which to retrieve device details. 1203s Returns: 1203s tuple: A tuple containing: 1203s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1203s - list: A list of management IP addresses of skipped devices. 1203s """ 1203s mgmt_ip_to_instance_id_map = {} 1203s skipped_devices_list = [] 1203s 1203s (site_exists, site_id) = self.get_site_id(site_name) 1203s if not site_exists: 1203s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1203s self.fail_and_exit(self.msg) 1203s 1203s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1203s 1203s # Retrieve the list of device details from the specified site 1203s device_details_list = self.get_device_details_from_site(site_name, site_id) 1203s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1203s 1203s # Iterate through each device's details 1203s for device_info in device_details_list: 1203s > management_ip = device_info.get("managementIpAddress") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/module_utils/dnac.py:767: AttributeError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_1 _________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_site_failure_1(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=False, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_site") 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertIn( 1203s "An error occurred while retrieving site details for Site 'Global'. Please verify that the site exists.", 1203s result.get('msg') 1203s ) 1203s 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}' 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:647: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_invalid_site(self): 1203s """ 1203s Test case for device credential workflow manager when provided site is invalid. 1203s 1203s This test case checks the behavior of the device credential workflow manager, when provided site is invalid in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_assign 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result['msg'], 1203s "The site_name 'Global/Vietnam/halong/Hanoi' is invalid in 'assign_credentials_to_site'" 1203s ) 1203s E AssertionError: 'An exception occurred while retrieving S[516 chars]rue}' != "The site_name 'Global/Vietnam/halong/Han[42 chars]ite'" 1203s 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} 1203s E + The site_name 'Global/Vietnam/halong/Hanoi' is invalid in 'assign_credentials_to_site' 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:435: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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: . 1203s 1203s 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} 1203s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_2 _________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s def execute_get_request(self, api_family, api_function, api_parameters): 1203s """ 1203s Makes a GET API call to the specified function within a given family and returns the response. 1203s Args: 1203s api_family (str): The family of the API to call. 1203s api_function (str): The specific function of the API to call. 1203s api_parameters (dict): Parameters to pass to the API call. 1203s Returns: 1203s dict or None: The response from the API call if successful, otherwise None. 1203s Logs detailed information about the API call, including responses and errors. 1203s """ 1203s self.log( 1203s "Initiating GET API call for Function: {0} from Family: {1} with Parameters: {2}.".format( 1203s api_function, api_family, api_parameters 1203s ), 1203s "DEBUG" 1203s ) 1203s try: 1203s # Execute the API call 1203s > response = self.dnac._exec( 1203s family=api_family, 1203s function=api_function, 1203s op_modifies=False, 1203s params=api_parameters, 1203s ) 1203s 1203s plugins/module_utils/dnac.py:1840: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1203s return self._mock_call(*args, **kwargs) 1203s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1203s return self._execute_mock_call(*args, **kwargs) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s self = , args = () 1203s kwargs = {'family': 'sites', 'function': 'get_membership', 'op_modifies': False, 'params': {'site_id': '3cf15665-7b7b-4b29-82a9-75b8d094b602'}} 1203s effect = 1203s result = Exception('Simulated exception') 1203s 1203s def _execute_mock_call(self, /, *args, **kwargs): 1203s # separate from _increment_mock_call so that awaited functions are 1203s # executed separately from their call, also AsyncMock overrides this method 1203s 1203s effect = self.side_effect 1203s if effect is not None: 1203s if _is_exception(effect): 1203s raise effect 1203s elif not _callable(effect): 1203s result = next(effect) 1203s if _is_exception(result): 1203s > raise result 1203s E Exception: Simulated exception 1203s 1203s /usr/lib/python3.13/unittest/mock.py:1232: Exception 1203s 1203s During handling of the above exception, another exception occurred: 1203s 1203s self = 1203s 1203s def test_run_compliance_with_site_failure_2(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=False, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_site") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:667: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1203s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1203s plugins/module_utils/dnac.py:762: in get_reachable_devices_from_site 1203s device_details_list = self.get_device_details_from_site(site_name, site_id) 1203s plugins/module_utils/dnac.py:716: in get_device_details_from_site 1203s api_response, device_ids = self.get_device_ids_from_site(site_name, site_id) 1203s plugins/module_utils/dnac.py:666: in get_device_ids_from_site 1203s api_response = self.execute_get_request("sites", "get_membership", get_membership_params) 1203s plugins/module_utils/dnac.py:1882: in execute_get_request 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site_response _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_invalid_site_response(self): 1203s """ 1203s Test case for device credential workflow manager when provided site response is invalid. 1203s 1203s This test case checks the behavior of the device credential workflow manager when provided site response is invalid in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_apply 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result['msg'], 1203s "Exception occurred while getting global device credentials: " 1203s ) 1203s E AssertionError: "An exception occurred while retrieving S[137 chars]able" != 'Exception occurred while getting global [16 chars]ls: ' 1203s 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 1203s E + Exception occurred while getting global device credentials: 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:481: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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 1203s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_3 _________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_site_failure_3(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=False, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_site") 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertIn( 1203s "An error occurred while retrieving Compliance Details for device:192.168.0.3 using 'compliance_details_of_device' API call", 1203s result.get('msg') 1203s ) 1203s 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." 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:689: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_4 _________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_site_failure_4(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=False, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_site") 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertIn( 1203s "An error occurred while retrieving the task_id of the run_compliance operation.", 1203s result.get('msg') 1203s ) 1203s 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." 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:710: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s _ TestDnacCredentialWorkflow.test_device_credentials_workflow_manager_invalid_site_response_2 _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_device_credentials_workflow_manager_invalid_site_response_2(self): 1203s """ 1203s Test case for device credential workflow manager when provided site response is invalid. 1203s 1203s This test case checks the behavior of the device credential workflow manager when provided site response is invalid in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_apply 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result['msg'], 1203s "Exception occurred while getting global device credentials: " 1203s ) 1203s E AssertionError: "An exception occurred while retrieving S[278 chars]rue}" != 'Exception occurred while getting global [16 chars]ls: ' 1203s 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} 1203s E + Exception occurred while getting global device credentials: 1203s 1203s tests/unit/modules/dnac/test_device_credential_workflow_manager.py:504: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 DeviceCredential: execute_get_request: 1857: No response received from GET API call to Function: 'get_site' from Family: 'sites'. 1203s 1203s ERROR logger:dnac.py:294 DeviceCredential: set_operation_result: 1780: No site details retrieved for site name: Global/Vietnam/halong/Hanoi 1203s 1203s 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} 1203s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_5 _________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_site_failure_5(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=False, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_site") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=True) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:730: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1203s result = self.failed() 1203s tests/unit/modules/dnac/dnac_module.py:125: in failed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1203s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_reachable_devices_from_site(self, site_name): 1203s """ 1203s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1203s Args: 1203s site_id (str): The ID of the site from which to retrieve device details. 1203s Returns: 1203s tuple: A tuple containing: 1203s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1203s - list: A list of management IP addresses of skipped devices. 1203s """ 1203s mgmt_ip_to_instance_id_map = {} 1203s skipped_devices_list = [] 1203s 1203s (site_exists, site_id) = self.get_site_id(site_name) 1203s if not site_exists: 1203s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1203s self.fail_and_exit(self.msg) 1203s 1203s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1203s 1203s # Retrieve the list of device details from the specified site 1203s device_details_list = self.get_device_details_from_site(site_name, site_id) 1203s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1203s 1203s # Iterate through each device's details 1203s for device_info in device_details_list: 1203s > management_ip = device_info.get("managementIpAddress") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/module_utils/dnac.py:767: AttributeError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_aaa_get _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_aaa_get(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while getting AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "Exception occurred while getting AAA set[72 chars]7): " != 'Exception occurred while getting AAA set[49 chars]a7: ' 1203s E - Exception occurred while getting AAA settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1203s E ? ---------------------- - 1203s E + Exception occurred while getting AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:879: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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): 1203s ________ TestNetworkCompliance.test_run_compliance_with_site_failure_6 _________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_run_compliance_with_site_failure_6(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=False, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_site") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=True) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:751: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1203s result = self.failed() 1203s tests/unit/modules/dnac/dnac_module.py:125: in failed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1203s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_reachable_devices_from_site(self, site_name): 1203s """ 1203s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1203s Args: 1203s site_id (str): The ID of the site from which to retrieve device details. 1203s Returns: 1203s tuple: A tuple containing: 1203s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1203s - list: A list of management IP addresses of skipped devices. 1203s """ 1203s mgmt_ip_to_instance_id_map = {} 1203s skipped_devices_list = [] 1203s 1203s (site_exists, site_id) = self.get_site_id(site_name) 1203s if not site_exists: 1203s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1203s self.fail_and_exit(self.msg) 1203s 1203s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1203s 1203s # Retrieve the list of device details from the specified site 1203s device_details_list = self.get_device_details_from_site(site_name, site_id) 1203s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1203s 1203s # Iterate through each device's details 1203s for device_info in device_details_list: 1203s > management_ip = device_info.get("managementIpAddress") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/module_utils/dnac.py:767: AttributeError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_banner_get _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_banner_get(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while getting banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "Exception occurred while getting banner [75 chars]7): " != 'Exception occurred while getting banner [52 chars]a7: ' 1203s E - Exception occurred while getting banner settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1203s E ? ---------------------- - 1203s E + Exception occurred while getting banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:854: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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): 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_dhcp_gett _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_dhcp_gett(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while getting DHCP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "Exception occurred while getting DHCP se[73 chars]7): " != 'Exception occurred while getting DHCP se[50 chars]a7: ' 1203s E - Exception occurred while getting DHCP settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1203s E ? ---------------------- - 1203s E + Exception occurred while getting DHCP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:829: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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): 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_dns_get _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_dns_get(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while getting DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "Exception occurred while getting DNS set[72 chars]7): " != 'Exception occurred while getting DNS set[49 chars]a7: ' 1203s E - Exception occurred while getting DNS settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1203s E ? ---------------------- - 1203s E + Exception occurred while getting DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:754: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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): 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_ntp_get _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_ntp_get(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while getting NTP server settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "Exception occurred while getting NTP ser[79 chars]7): " != 'Exception occurred while getting NTP ser[56 chars]a7: ' 1203s E - Exception occurred while getting NTP server settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1203s E ? ---------------------- - 1203s E + Exception occurred while getting NTP server settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:779: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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): 1203s _______________ TestNetworkCompliance.test_scale_run_compliance ________________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_scale_run_compliance(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_run_compliance_scale_iplist") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:433: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0', '192.168.0.1'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0', '192.168.0.1'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s 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' 1203s 1203s 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'] 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s 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 1203s 1203s 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'] 1203s 1203s 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']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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' 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s 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). 1203s 1203s 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). 1203s _____________ TestNetworkCompliance.test_sync_device_config_iplist _____________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_sync_device_config_iplist(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_sync_device_config_iplist") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:455: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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' 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s 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). 1203s 1203s 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). 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_site_not_exist _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_site_not_exist(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "An exception occurred: Site 'Global/Vietnam' does not exist in the Cisco Catalyst Center." 1203s ) 1203s E AssertionError: "An error occurred while executing API call to[62 chars]n: ." != "An exception occurred: Site 'Global/Vietnam' [40 chars]ter." 1203s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1203s E + An exception occurred: Site 'Global/Vietnam' does not exist in the Cisco Catalyst Center. 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:704: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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: . 1203s ________ TestNetworkCompliance.test_sync_device_config_iplist_failure_1 ________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_sync_device_config_iplist_failure_1(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_sync_device_config_iplist") 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertIn( 1203s "Error occurred while synchronizing device configuration for parameters - {'deviceId':", 1203s result.get('msg') 1203s ) 1203s 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)." 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:773: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 788: Error fetching device IDs from Cisco Catalyst Center. Error details: Simulated exception 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s 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). 1203s 1203s 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). 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_telemetry_get _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_telemetry_get(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while getting telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "Exception occurred while getting telemet[78 chars]7): " != 'Exception occurred while getting telemet[55 chars]a7: ' 1203s E - Exception occurred while getting telemetry settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1203s E ? ---------------------- - 1203s E + Exception occurred while getting telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:729: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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): 1203s ________ TestNetworkCompliance.test_sync_device_config_iplist_failure_2 ________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_sync_device_config_iplist_failure_2(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_sync_device_config_iplist") 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertIn( 1203s "Error occurred while retrieving 'get_task_tree' for Task Sync Device Configuration with task id", 1203s result.get('msg') 1203s ) 1203s 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)." 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:794: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'None' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'} 1203s 1203s 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' 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s 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). 1203s 1203s 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). 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_timezone_get _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_timezone_get(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while getting time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "Exception occurred while getting time zo[78 chars]7): " != 'Exception occurred while getting time zo[55 chars]a7: ' 1203s E - Exception occurred while getting time zone settings for site 'Global/Vietnam' (ID: b08d92c9-663f-43f3-9575-5af52d4d75a7): 1203s E ? ---------------------- - 1203s E + Exception occurred while getting time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:804: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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): 1203s __________ TestNetworkCompliance.test_sync_device_config_iplist_site ___________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_sync_device_config_iplist_site(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_sync_device_config_iplist_site") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:497: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1203s 1203s 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'}. 1203s 1203s 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'}]} 1203s 1203s 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'}]} 1203s 1203s 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'. 1203s 1203s 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'. 1203s 1203s 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'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1203s 1203s 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'}. 1203s 1203s 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'} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1203s 1203s 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'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b 1203s 1203s 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). 1203s 1203s 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). 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_aaa _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_update_aaa(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_update_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while updating AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating AAA se[50 chars]a7: ' 1203s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1203s E + Exception occurred while updating AAA settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:654: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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: . 1203s _________ TestNetworkCompliance.test_sync_device_config_iplist_site_nr _________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_sync_device_config_iplist_site_nr(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_sync_device_config_iplist_site_nr") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:518: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:835: in get_device_id_list 1203s self.fail_and_exit(self.msg) 1203s plugins/module_utils/dnac.py:1787: in fail_and_exit 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1443: Deduplicated IP address list: ['192.168.0.0'] 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': '['192.168.0.0']' or 'site_name': 'Global' 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 437: Validating the IP addresses in the ip_address_list: ['192.168.0.0'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_ip4_address_list: 446: Successfully validated the IP address(es): 192.168.0.0 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 816: Retrieving device IDs for IP addresses: 192.168.0.0 1203s 1203s 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'] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_list_params: 682: Generated get_device_list_params: {'management_ip_address': ['192.168.0.0']} 1203s 1203s 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']} 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s 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. 1203s 1203s 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'}]} 1203s 1203s 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 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 782: Total number of devices received: 1 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 783: Number of devices that are Unreachable or APs: 1 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 784: Config Backup Operation can be performed on the following filtered devices: 0 1203s 1203s ERROR logger:dnac.py:294 NetworkCompliance: get_device_ids_from_ip: 792: No reachable devices found among the provided parameters: {} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1203s 1203s 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'}. 1203s 1203s 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'}]} 1203s 1203s 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'}]} 1203s 1203s 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'. 1203s 1203s 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'. 1203s 1203s 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'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1203s 1203s 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'}. 1203s 1203s 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'} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 674: Retrieved device IDs from membership for site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1203s 1203s 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'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 721: Device IDs retrieved from site '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 763: Device details retrieved for site ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b': [] 1203s 1203s INFO logger:dnac.py:294 NetworkCompliance: get_reachable_devices_from_site: 792: No reachable devices found at Site: 92ffce88-9fce-41d2-ae69-086fa74e9c4b 1203s 1203s 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). 1203s 1203s 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). 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_banner _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_update_banner(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_update_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while updating banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating banner[53 chars]a7: ' 1203s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1203s E + Exception occurred while updating banner settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:629: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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: . 1203s ______________ TestNetworkCompliance.test_sync_device_config_site ______________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_sync_device_config_site(self): 1203s 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_log_level="DEBUG", 1203s dnac_log_append=False, 1203s state="merged", 1203s config=self.test_data.get("playbook_config_sync_device_config_site") 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_compliance_workflow_manager.py:476: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_compliance_workflow_manager.py:1670: in main 1203s ccc_network_compliance.get_want(config).check_return_status() 1203s plugins/modules/network_compliance_workflow_manager.py:1454: in get_want 1203s mgmt_ip_to_instance_id_map = self.get_device_id_list(ip_address_list, site_name) 1203s plugins/modules/network_compliance_workflow_manager.py:824: in get_device_id_list 1203s site_mgmt_ip_to_instance_id_map, skipped_devices_list = self.get_reachable_devices_from_site(site_name) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_reachable_devices_from_site(self, site_name): 1203s """ 1203s Retrieves a mapping of management IP addresses to instance IDs for reachable devices from a specified site. 1203s Args: 1203s site_id (str): The ID of the site from which to retrieve device details. 1203s Returns: 1203s tuple: A tuple containing: 1203s - dict: A mapping of management IP addresses to instance IDs for reachable devices. 1203s - list: A list of management IP addresses of skipped devices. 1203s """ 1203s mgmt_ip_to_instance_id_map = {} 1203s skipped_devices_list = [] 1203s 1203s (site_exists, site_id) = self.get_site_id(site_name) 1203s if not site_exists: 1203s self.msg = "Site '{0}' does not exist in the Cisco Catalyst Center, cannot proceed with device(s) retrieval.".format(site_name) 1203s self.fail_and_exit(self.msg) 1203s 1203s self.log("Initiating retrieval of device details for site ID: '{0}'.".format(site_id), "INFO") 1203s 1203s # Retrieve the list of device details from the specified site 1203s device_details_list = self.get_device_details_from_site(site_name, site_id) 1203s self.log("Device details retrieved for site ID: '{0}': {1}".format(site_id, device_details_list), "DEBUG") 1203s 1203s # Iterate through each device's details 1203s for device_info in device_details_list: 1203s > management_ip = device_info.get("managementIpAddress") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/module_utils/dnac.py:767: AttributeError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s Inside load_fixtures 1203s Mock for DNACSDK._exec: 1203s Inside load_fixtures 1203s ------------------------------ Captured log call ------------------------------- 1203s DEBUG logger:dnac.py:294 NetworkCompliance: __init__: 110: Logging configured and initiated 1203s 1203s 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} 1203s 1203s 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}] 1203s 1203s 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}] 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_want: 1439: Original IP address list: None 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 460: Validating 'ip_address_list': 'None' or 'site_name': 'Global' 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_iplist_and_site_name: 472: Validation successful: Provided IP address list or Site name is valid 1203s 1203s 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 1203s 1203s WARNING logger:dnac.py:294 NetworkCompliance: validate_compliance_operation: 500: Validation successful: Network Compliance operation present 1203s 1203s 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} 1203s 1203s 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 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_id_list: 823: Retrieving device IDs for site: Global 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 809: Initiating retrieval of site details for site name: 'Global'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_site: 813: Using 'get_site' API for Catalyst Center version: '2233'. 1203s 1203s 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'}. 1203s 1203s 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'}]} 1203s 1203s 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'}]} 1203s 1203s 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'. 1203s 1203s 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'. 1203s 1203s 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'. 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 664: Using 'get_membership' API for Catalyst Center version: '2233'. 1203s 1203s 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'}. 1203s 1203s 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'}]} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_ids_from_site: 668: Received response from 'get_membership'. Extracting device IDs. 1203s 1203s 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'] 1203s 1203s 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'] 1203s 1203s 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'. 1203s 1203s 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'}. 1203s 1203s 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'} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '3bf3f269-88ae-48fc-910d-3263ba618f87'. 1203s 1203s 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'. 1203s 1203s 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'}. 1203s 1203s 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'} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '92ffce88-9fce-41d2-ae69-086fa74e9c4b'. 1203s 1203s 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'. 1203s 1203s 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'}. 1203s 1203s 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'} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '9db11f54-8007-438c-ba9b-711513deecc6'. 1203s 1203s 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'. 1203s 1203s 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'}. 1203s 1203s 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'} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: 'f490e92f-490e-4bb1-9519-770b1dc604c4'. 1203s 1203s 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'. 1203s 1203s 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'}. 1203s 1203s 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'} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: 'e0bdf3e1-fbcf-4faa-a11c-156e32e7ae38'. 1203s 1203s 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'. 1203s 1203s 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'}. 1203s 1203s 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'} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '37b05b0f-1b1e-496a-b101-8f277f0af8ff'. 1203s 1203s 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'. 1203s 1203s 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'}. 1203s 1203s 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'} 1203s 1203s DEBUG logger:dnac.py:294 NetworkCompliance: get_device_details_from_site: 737: Device details retrieved for device ID: '778a27bb-d795-4fa3-a321-f2e693ebe1f4'. 1203s 1203s 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'}] 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_Updation_not_req _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_global_pool_Updation_not_req(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_global_pool_updation 1203s ) 1203s ) 1203s result = self.execute_module(changed=True, failed=True) 1203s # print(result["response"][0].get("globalPool").get("msg")) 1203s # print(result) 1203s > self.assertEqual( 1203s result["response"][0].get("globalPool").get("msg"), 1203s {'Global_Pool2': "Global pool doesn't require an update", 'Global_Pool3': "Global pool doesn't require an update"} 1203s 1203s ) 1203s E AssertionError: {} != {'Global_Pool2': "Global pool doesn't requ[67 chars]ate"} 1203s E - {} 1203s E + {'Global_Pool2': "Global pool doesn't require an update", 1203s E + 'Global_Pool3': "Global pool doesn't require an update"} 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1003: AssertionError 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_creation _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_global_pool_creation(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_global_pool_creation 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:975: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_settings_workflow_manager.py:4301: in main 1203s ccc_network.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_dns _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_update_dns(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_update_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while updating DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating DNS se[50 chars]a7: ' 1203s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1203s E + Exception occurred while updating DNS settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:604: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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: . 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_global_pool_deletion _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_global_pool_deletion(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="deleted", 1203s config_verify=True, 1203s config=self.playbook_config_global_pool_deletion 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1026: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_settings_workflow_manager.py:4301: in main 1203s ccc_network.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_ntp _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_update_ntp(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_update_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while updating NTP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating NTP se[50 chars]a7: ' 1203s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1203s E + Exception occurred while updating NTP settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:554: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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: . 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_telemetry _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_update_telemetry(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while updating telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating teleme[56 chars]a7: ' 1203s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1203s E + Exception occurred while updating telemetry settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:679: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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: . 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_exception_update_timezone _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_exception_update_timezone(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_update_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while updating time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: " 1203s ) 1203s E AssertionError: "An error occurred while executing API ca[67 chars]n: ." != 'Exception occurred while updating time z[56 chars]a7: ' 1203s E - An error occurred while executing API call to Function: 'get_tasks_by_id' due to the the following exception: . 1203s E + Exception occurred while updating time zone settings for site b08d92c9-663f-43f3-9575-5af52d4d75a7: 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:579: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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: . 1203s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_assign_wired_device_to_site _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_provision_workflow_manager_playbook_assign_wired_device_to_site(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_assign_wired_device_to_site 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_provision_workflow_manager.py:152: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/provision_workflow_manager.py:1809: in main 1203s ccc_provision.get_diff_state_apply[state]().check_return_status() 1203s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged 1203s self.provision_wired_device(to_provisioning, to_force_provisioning) 1203s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device 1203s device_id = self.get_device_id() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_device_id(self): 1203s """ 1203s Fetches the UUID of the device added in the inventory 1203s 1203s Parameters: 1203s - self: The instance of the class containing the 'config' attribute 1203s to be validated. 1203s Returns: 1203s The method returns the serial number of the device as a string. If it fails, it returns None. 1203s Example: 1203s After creating the validated input, this method retrieves the 1203s UUID of the device. 1203s """ 1203s 1203s dev_response = self.dnac_apply['exec']( 1203s family="devices", 1203s function='get_network_device_by_ip', 1203s params={"ip_address": self.validated_config["management_ip_address"]} 1203s ) 1203s 1203s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1203s dev_dict = dev_response.get("response") 1203s > device_id = dev_dict.get("id") 1203s E AttributeError: 'NoneType' object has no attribute 'get' 1203s 1203s plugins/modules/provision_workflow_manager.py:490: AttributeError 1203s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_del_provision_device _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_provision_workflow_manager_playbook_del_provision_device(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="deleted", 1203s config_verify=True, 1203s config=self.playbook_del_provision_device 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_provision_workflow_manager.py:176: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/provision_workflow_manager.py:1809: in main 1203s ccc_provision.get_diff_state_apply[state]().check_return_status() 1203s plugins/modules/provision_workflow_manager.py:1596: in get_diff_deleted 1203s device_id = self.get_device_id() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_device_id(self): 1203s """ 1203s Fetches the UUID of the device added in the inventory 1203s 1203s Parameters: 1203s - self: The instance of the class containing the 'config' attribute 1203s to be validated. 1203s Returns: 1203s The method returns the serial number of the device as a string. If it fails, it returns None. 1203s Example: 1203s After creating the validated input, this method retrieves the 1203s UUID of the device. 1203s """ 1203s 1203s dev_response = self.dnac_apply['exec']( 1203s family="devices", 1203s function='get_network_device_by_ip', 1203s params={"ip_address": self.validated_config["management_ip_address"]} 1203s ) 1203s 1203s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1203s dev_dict = dev_response.get("response") 1203s > device_id = dev_dict.get("id") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/modules/provision_workflow_manager.py:490: AttributeError 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_mandatory_aaa_param _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_mandatory_aaa_param(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_aaa_req 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=True) 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:902: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1203s result = self.failed() 1203s tests/unit/modules/dnac/dnac_module.py:125: in failed 1203s self.module.main() 1203s plugins/modules/network_settings_workflow_manager.py:4316: in main 1203s ccc_network.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged 1203s self.update_network(network_management).check_return_status() 1203s plugins/modules/network_settings_workflow_manager.py:3790: in update_network 1203s self.check_tasks_response_status(response, "set_aaa_settings_for_a_site").check_return_status() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def check_tasks_response_status(self, response, api_name): 1203s """ 1203s Get the task response status from taskId 1203s Args: 1203s self: The current object details. 1203s response (dict): API response. 1203s api_name (str): API name. 1203s Returns: 1203s self (object): The current object with updated desired Fabric Transits information. 1203s Description: 1203s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1203s state or till it reaches the maximum timeout. 1203s Log the task details and return self. 1203s """ 1203s 1203s if not response: 1203s self.msg = "response is empty" 1203s self.status = "exited" 1203s return self 1203s 1203s if not isinstance(response, dict): 1203s self.msg = "response is not a dictionary" 1203s self.status = "exited" 1203s return self 1203s 1203s task_info = response.get("response") 1203s > if task_info.get("errorcode") is not None: 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/module_utils/dnac.py:1713: AttributeError 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_force_provision_device _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_provision_workflow_manager_playbook_force_provision_device(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_force_provision_device 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_provision_workflow_manager.py:248: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/provision_workflow_manager.py:1809: in main 1203s ccc_provision.get_diff_state_apply[state]().check_return_status() 1203s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged 1203s self.provision_wired_device(to_provisioning, to_force_provisioning) 1203s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device 1203s device_id = self.get_device_id() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_device_id(self): 1203s """ 1203s Fetches the UUID of the device added in the inventory 1203s 1203s Parameters: 1203s - self: The instance of the class containing the 'config' attribute 1203s to be validated. 1203s Returns: 1203s The method returns the serial number of the device as a string. If it fails, it returns None. 1203s Example: 1203s After creating the validated input, this method retrieves the 1203s UUID of the device. 1203s """ 1203s 1203s dev_response = self.dnac_apply['exec']( 1203s family="devices", 1203s function='get_network_device_by_ip', 1203s params={"ip_address": self.validated_config["management_ip_address"]} 1203s ) 1203s 1203s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1203s dev_dict = dev_response.get("response") 1203s > device_id = dev_dict.get("id") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/modules/provision_workflow_manager.py:490: AttributeError 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_network_not_need_update _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_network_not_need_update(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Successfully retrieved details from the playbook" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not[94 chars]ds. " != 'Successfully retrieved details from the playbook' 1203s 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. 1203s E + Successfully retrieved details from the playbook 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:454: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_provision_device _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_provision_workflow_manager_playbook_provision_device(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_provision_device 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_provision_workflow_manager.py:199: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/provision_workflow_manager.py:1809: in main 1203s ccc_provision.get_diff_state_apply[state]().check_return_status() 1203s plugins/modules/provision_workflow_manager.py:1044: in get_diff_merged 1203s self.provision_wired_device(to_provisioning, to_force_provisioning) 1203s plugins/modules/provision_workflow_manager.py:1143: in provision_wired_device 1203s device_id = self.get_device_id() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_device_id(self): 1203s """ 1203s Fetches the UUID of the device added in the inventory 1203s 1203s Parameters: 1203s - self: The instance of the class containing the 'config' attribute 1203s to be validated. 1203s Returns: 1203s The method returns the serial number of the device as a string. If it fails, it returns None. 1203s Example: 1203s After creating the validated input, this method retrieves the 1203s UUID of the device. 1203s """ 1203s 1203s dev_response = self.dnac_apply['exec']( 1203s family="devices", 1203s function='get_network_device_by_ip', 1203s params={"ip_address": self.validated_config["management_ip_address"]} 1203s ) 1203s 1203s self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") 1203s dev_dict = dev_response.get("response") 1203s > device_id = dev_dict.get("id") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/modules/provision_workflow_manager.py:490: AttributeError 1203s _ TestDnacProvisionWorkflow.test_provision_workflow_manager_playbook_wireless_provision _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_provision_workflow_manager_playbook_wireless_provision(self): 1203s """ 1203s Test case for add device with full crendentials. 1203s 1203s This test case checks the addition of new network device added with full credentials in Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s > config=self.playbook_wireless_provisionZ 1203s ) 1203s ) 1203s E AttributeError: 'TestDnacProvisionWorkflow' object has no attribute 'playbook_wireless_provisionZ'. Did you mean: 'playbook_wireless_provision'? 1203s 1203s tests/unit/modules/dnac/test_provision_workflow_manager.py:268: AttributeError 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_null_network_params _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_null_network_params(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.5.3", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_update_not_req 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Successfully retrieved details from the playbook" 1203s ) 1203s E AssertionError: "Exception occurred while updating the ne[37 chars]t': " != 'Successfully retrieved details from the playbook' 1203s E - Exception occurred while updating the network settings of 'Global/Testing/test': 1203s E + Successfully retrieved details from the playbook 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:953: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 NetworkSettings: update_network: 3730: 1203s _ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_failure_unmark_failure _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_rma_workflow_manager_deploy_workflow_failure_unmark_failure(self): 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="replaced", 1203s config=self.playbook_config_valid 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Error while unmarking device for replacement: Task failed. | Unmarking result: Error while unmarking device for replacement: Task failed." 1203s ) 1203s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'Error while unmarking device for replacem[92 chars]led.' 1203s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1203s E + Error while unmarking device for replacement: Task failed. | Unmarking result: Error while unmarking device for replacement: Task failed. 1203s 1203s tests/unit/modules/dnac/test_rma_workflow_manager.py:310: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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. 1203s _ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_failure_unmark_success _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_rma_workflow_manager_deploy_workflow_failure_unmark_success(self): 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="replaced", 1203s config=self.playbook_config_valid 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_rma_workflow_manager.py:326: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/rma_workflow_manager.py:1434: in main 1203s ccc_device_replacement.rma_device_replacement_pre_check().check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s 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. 1203s _____ TestDnacRmaIntent.test_rma_workflow_manager_deploy_workflow_success ______ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_rma_workflow_manager_deploy_workflow_success(self): 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="replaced", 1203s config=self.playbook_config_valid 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_rma_workflow_manager.py:290: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/rma_workflow_manager.py:1434: in main 1203s ccc_device_replacement.rma_device_replacement_pre_check().check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s 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. 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_network_update _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_network_update(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_update_network 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:502: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_settings_workflow_manager.py:4316: in main 1203s ccc_network.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged 1203s self.update_network(network_management).check_return_status() 1203s plugins/modules/network_settings_workflow_manager.py:3741: in update_network 1203s self.check_tasks_response_status(response, "set_dhcp_settings_for_a_site").check_return_status() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def check_tasks_response_status(self, response, api_name): 1203s """ 1203s Get the task response status from taskId 1203s Args: 1203s self: The current object details. 1203s response (dict): API response. 1203s api_name (str): API name. 1203s Returns: 1203s self (object): The current object with updated desired Fabric Transits information. 1203s Description: 1203s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1203s state or till it reaches the maximum timeout. 1203s Log the task details and return self. 1203s """ 1203s 1203s if not response: 1203s self.msg = "response is empty" 1203s self.status = "exited" 1203s return self 1203s 1203s if not isinstance(response, dict): 1203s self.msg = "response is not a dictionary" 1203s self.status = "exited" 1203s return self 1203s 1203s task_info = response.get("response") 1203s if task_info.get("errorcode") is not None: 1203s self.msg = response.get("response").get("detail") 1203s self.status = "failed" 1203s return self 1203s 1203s task_id = task_info.get("taskId") 1203s start_time = time.time() 1203s while True: 1203s elapsed_time = time.time() - start_time 1203s if elapsed_time >= self.max_timeout: 1203s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1203s .format(self.max_timeout, task_id) + \ 1203s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1203s self.log(self.msg, "WARNING") 1203s self.status = "failed" 1203s break 1203s 1203s task_details = self.get_tasks_by_id(task_id) 1203s self.log('Getting tasks details from task ID {0}: {1}' 1203s .format(task_id, task_details), "DEBUG") 1203s 1203s > task_status = task_details.get("status") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/module_utils/dnac.py:1734: AttributeError 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s _______ TestDnacRmaIntent.test_rma_workflow_manager_mark_device_failure ________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_rma_workflow_manager_mark_device_failure(self): 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="replaced", 1203s config=self.playbook_config_valid 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "An error occurred during the operation" 1203s ) 1203s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'An error occurred during the operation' 1203s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1203s E + An error occurred during the operation 1203s 1203s tests/unit/modules/dnac/test_rma_workflow_manager.py:274: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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. 1203s _ TestDnacRmaIntent.test_rma_workflow_manager_mark_device_for_replacement_exception _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_rma_workflow_manager_mark_device_for_replacement_exception(self): 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="replaced", 1203s config=self.playbook_config_valid 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Exception occurred while marking device for replacement: " 1203s ) 1203s E AssertionError: 'The replacement device is not reachable. [46 chars]ent.' != 'Exception occurred while marking device for replacement: ' 1203s E - The replacement device is not reachable. Unable to proceed with the RMA device replacement. 1203s E + Exception occurred while marking device for replacement: 1203s 1203s tests/unit/modules/dnac/test_rma_workflow_manager.py:256: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'msg': 'The replacement device is not reachable. Unable to proceed with the RMA device replacement.', 'response': [], 'failed': True} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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. 1203s ___ TestDnacRmaIntent.test_rma_workflow_manager_replacement_device_not_found ___ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_rma_workflow_manager_replacement_device_not_found(self): 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="replaced", 1203s config=self.playbook_config_device_not_found 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Replacement device '204.1.2.19' not found in Cisco Catalyst Center" 1203s ) 1203s E AssertionError: "Replacement device '204.1.2.19' not found in PnP" != "Replacement device '204.1.2.19' not found in Cisco Catalyst Center" 1203s E - Replacement device '204.1.2.19' not found in PnP 1203s E ? ^ ^ 1203s E + Replacement device '204.1.2.19' not found in Cisco Catalyst Center 1203s E ? ^^^^^^^^^^^^^^^^^ ^^^ 1203s 1203s tests/unit/modules/dnac/test_rma_workflow_manager.py:220: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'msg': "Replacement device '204.1.2.19' not found in PnP", 'response': [], 'failed': True} 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 DeviceReplacement: device_exists: 802: No valid response received from Cisco Catalyst Center 1203s 1203s ERROR logger:dnac.py:294 DeviceReplacement: pnp_device_exists: 713: Invalid identifier type provided 1203s 1203s ERROR logger:dnac.py:294 DeviceReplacement: get_have: 586: Replacement device '204.1.2.19' not found in PnP 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_not_verified __ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_not_verified(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s dnac_version="2.3.7.6", 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_network 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=True) 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:477: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1203s result = self.failed() 1203s tests/unit/modules/dnac/dnac_module.py:125: in failed 1203s self.module.main() 1203s plugins/modules/network_settings_workflow_manager.py:4316: in main 1203s ccc_network.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/network_settings_workflow_manager.py:3824: in get_diff_merged 1203s self.update_network(network_management).check_return_status() 1203s plugins/modules/network_settings_workflow_manager.py:3741: in update_network 1203s self.check_tasks_response_status(response, "set_dhcp_settings_for_a_site").check_return_status() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def check_tasks_response_status(self, response, api_name): 1203s """ 1203s Get the task response status from taskId 1203s Args: 1203s self: The current object details. 1203s response (dict): API response. 1203s api_name (str): API name. 1203s Returns: 1203s self (object): The current object with updated desired Fabric Transits information. 1203s Description: 1203s Poll the function 'get_tasks_by_id' until it returns either 'SUCCESS' or 'FAILURE' 1203s state or till it reaches the maximum timeout. 1203s Log the task details and return self. 1203s """ 1203s 1203s if not response: 1203s self.msg = "response is empty" 1203s self.status = "exited" 1203s return self 1203s 1203s if not isinstance(response, dict): 1203s self.msg = "response is not a dictionary" 1203s self.status = "exited" 1203s return self 1203s 1203s task_info = response.get("response") 1203s if task_info.get("errorcode") is not None: 1203s self.msg = response.get("response").get("detail") 1203s self.status = "failed" 1203s return self 1203s 1203s task_id = task_info.get("taskId") 1203s start_time = time.time() 1203s while True: 1203s elapsed_time = time.time() - start_time 1203s if elapsed_time >= self.max_timeout: 1203s self.msg = "Max timeout of {0} sec has reached for the task id '{1}'. " \ 1203s .format(self.max_timeout, task_id) + \ 1203s "Exiting the loop due to unexpected API '{0}' status.".format(api_name) 1203s self.log(self.msg, "WARNING") 1203s self.status = "failed" 1203s break 1203s 1203s task_details = self.get_tasks_by_id(task_id) 1203s self.log('Getting tasks details from task ID {0}: {1}' 1203s .format(task_id, task_details), "DEBUG") 1203s 1203s > task_status = task_details.get("status") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/module_utils/dnac.py:1734: AttributeError 1203s ------------------------------ Captured log call ------------------------------- 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s 1203s 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) 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_reserve_pool_creation _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_reserve_pool_creation(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_reserve_pool 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1075: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_settings_workflow_manager.py:4301: in main 1203s ccc_network.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _______ TestDnacSiteWorkflow.test_Site_workflow_manager_create_bulk_site _______ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_create_bulk_site(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.upload_floor_map_playbook 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:274: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/site_workflow_manager.py:2520: in main 1203s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1188: Missing 'name' field in entry. 1203s 1203s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1196: Missing 'parent_name' field in entry. 1203s 1203s 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' 1203s _ TestDnacNetworkSettings.test_Network_settings_workflow_manager_reserve_pool_deletion _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Network_settings_workflow_manager_reserve_pool_deletion(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="deleted", 1203s config_verify=True, 1203s config=self.playbook_config_reserve_pool_deletion 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_network_settings_workflow_manager.py:1050: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/network_settings_workflow_manager.py:4301: in main 1203s ccc_network.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _________ TestDnacSiteWorkflow.test_Site_workflow_manager_create_site __________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_create_site(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.5.3", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_site 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:297: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/site_workflow_manager.py:2539: in main 1203s ccc_site.get_diff_state_apply[state](config).check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1203s 1203s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1203s 1203s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1203s 1203s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: Parent name 'Global' does not exist in the Cisco Catalyst Center. 1203s 1203s 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} 1203s 1203s WARNING logger:dnac.py:294 Site: get_site_v1: 612: Empty response received for site: Global/japan8888 1203s 1203s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1203s __________ TestDnacPnpWorkflow.test_pnp_workflow_manager_claim_switch __________ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_pnp_workflow_manager_claim_switch(self): 1203s """ 1203s Test case for PNP workflow manager when add and claim switch device. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s config_verify=True, 1203s state="merged", 1203s config=self.playbook_config_switch 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=True) 1203s 1203s tests/unit/modules/dnac/test_pnp_workflow_manager.py:193: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1203s result = self.failed() 1203s tests/unit/modules/dnac/dnac_module.py:125: in failed 1203s self.module.main() 1203s plugins/modules/pnp_workflow_manager.py:1414: in main 1203s ccc_pnp.get_diff_state_apply[state]().check_return_status() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_diff_merged(self): 1203s """ 1203s If given device doesnot exist 1203s then add it to pnp database and get the device id 1203s Args: 1203s self: An instance of a class used for interacting with Cisco Catalyst Center. 1203s Returns: 1203s object: An instance of the class with updated results and status 1203s based on the processing of differences. Based on the length of devices passed 1203s it adds/claims or does both. 1203s Description: 1203s The function processes the differences and, depending on the 1203s changes required, it may add, update,or resynchronize devices in 1203s Cisco Catalyst Center. The updated results and status are stored in the 1203s class instance for further use. 1203s """ 1203s 1203s if not isinstance(self.want.get("pnp_params"), list): 1203s self.msg = "Device Info must be passed as a list" 1203s self.log(self.msg, "ERROR") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s 1203s if len(self.want.get("pnp_params")) > 1: 1203s devices_added = [] 1203s for device in self.want.get("pnp_params"): 1203s multi_device_response = self.get_device_list_pnp(device["deviceInfo"]["serialNumber"]) 1203s self.log("Device details for serial number {0} \ 1203s obtained from the API 'get_device_list': {1}".format(device["deviceInfo"]["serialNumber"], 1203s str(multi_device_response)), "DEBUG") 1203s if (multi_device_response and (len(multi_device_response) == 1)): 1203s devices_added.append(device) 1203s self.log("Details of the added device:{0}".format(str(device)), "INFO") 1203s if (len(self.want.get("pnp_params")) - len(devices_added)) == 0: 1203s self.result['response'] = [] 1203s self.result['msg'] = "Devices are already added" 1203s self.log(self.result['msg'], "WARNING") 1203s return self 1203s 1203s bulk_list = [ 1203s device 1203s for device in self.want.get("pnp_params") 1203s if device not in devices_added 1203s ] 1203s bulk_params = self.dnac_apply['exec']( 1203s family="device_onboarding_pnp", 1203s function="import_devices_in_bulk", 1203s params={"payload": bulk_list}, 1203s op_modifies=True, 1203s ) 1203s self.log("Response from API 'import_devices_in_bulk' for imported devices: {0}".format(bulk_params), "DEBUG") 1203s if len(bulk_params.get("successList")) > 0: 1203s self.result['msg'] = "{0} device(s) imported successfully".format( 1203s len(bulk_params.get("successList"))) 1203s self.log(self.result['msg'], "INFO") 1203s self.result['response'] = bulk_params 1203s self.result['diff'] = self.validated_config 1203s self.result['changed'] = True 1203s return self 1203s elif len(bulk_params.get("failureList")) > 0: 1203s self.msg = "Unable to import below {0} device(s). ".format( 1203s len(bulk_params.get("failureList"))) 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s bulk_params).check_return_status() 1203s 1203s self.msg = "Bulk import failed" 1203s self.log(self.msg, "CRITICAL") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s 1203s provisioned_count_params = { 1203s "serial_number": self.want.get("serial_number"), 1203s "state": "Provisioned" 1203s } 1203s 1203s planned_count_params = { 1203s "serial_number": self.want.get("serial_number"), 1203s "state": "Planned" 1203s } 1203s 1203s if not self.have.get("device_found"): 1203s if not self.want['pnp_params']: 1203s self.msg = "Device needs to be added before claiming. Please add device_info" 1203s self.log(self.msg, "ERROR") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s 1203s if not self.want["site_name"]: 1203s self.log("Adding device to pnp database", "INFO") 1203s dev_add_response = self.add_pnp_device(self.want.get('pnp_params')[0]) 1203s self.have["deviceInfo"] = dev_add_response.get("deviceInfo") 1203s self.log("Response from API 'add device' for a single device addition: {0}".format(str(dev_add_response)), "DEBUG") 1203s 1203s if self.have["deviceInfo"]: 1203s self.result['msg'] = "Only Device Added Successfully" 1203s self.log(self.result['msg'], "INFO") 1203s self.result['response'] = dev_add_response 1203s self.result['diff'] = self.validated_config 1203s self.result['changed'] = True 1203s else: 1203s self.msg = "Device Addition Failed" 1203s self.log(self.result['msg'], "CRITICAL") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s 1203s return self 1203s 1203s else: 1203s self.log("Adding device to pnp database") 1203s dev_add_response = self.add_pnp_device(self.want.get('pnp_params')[0]) 1203s self.get_have().check_return_status() 1203s self.have["deviceInfo"] = dev_add_response.get("deviceInfo") 1203s self.log("Response from API 'add device' for single device addition: {0}".format(str(dev_add_response)), "DEBUG") 1203s claim_params = self.get_claim_params() 1203s claim_params["deviceId"] = dev_add_response.get("id") 1203s 1203s claim_response = self.claim_device_site(claim_params) 1203s self.log("Response from API 'claim a device to a site' for a single claiming: {0}".format(str(claim_response)), "DEBUG") 1203s 1203s if claim_response.get("response") == "Device Claimed" and self.have["deviceInfo"]: 1203s self.result['msg'] = "Device Added and Claimed Successfully" 1203s self.log(self.result['msg'], "INFO") 1203s self.result['response'] = claim_response 1203s self.result['diff'] = self.validated_config 1203s self.result['changed'] = True 1203s 1203s else: 1203s self.msg = "Device Claim Failed" 1203s > self.log(self.result['msg'], "CRITICAL") 1203s E KeyError: 'msg' 1203s 1203s plugins/modules/pnp_workflow_manager.py:985: KeyError 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 PnP: get_device_list_pnp: 1219: No device found with serial number: FOC2439LA89 1203s 1203s WARNING logger:dnac.py:294 PnP: get_have: 701: Device with serial number FOC2439LA89 is not found in the inventory 1203s 1203s WARNING logger:dnac.py:294 PnP: get_diff_merged: 965: Adding device to pnp database 1203s 1203s WARNING logger:dnac.py:294 PnP: get_device_list_pnp: 1219: No device found with serial number: FOC2439LA89 1203s 1203s WARNING logger:dnac.py:294 PnP: get_have: 701: Device with serial number FOC2439LA89 is not found in the inventory 1203s ___ TestDnacSiteWorkflow.test_Site_workflow_manager_create_site_bulk_invalid ___ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_create_site_bulk_invalid(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_site 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "An error occurred while executing GET API call to Function: 'get_sites' " 1203s "from Family: 'site_design'. " 1203s "Parameters: {'name_hierarchy': 'Global/japan8888'}. " 1203s "Exception: ." 1203s ) 1203s E AssertionError: "An e[106 chars]: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: ." != "An e[106 chars]: {'name_hierarchy': 'Global/japan8888'}. Exception: ." 1203s E - An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888/blossom'}. Exception: . 1203s E ? -------- 1203s E + An error occurred while executing GET API call to Function: 'get_sites' from Family: 'site_design'. Parameters: {'name_hierarchy': 'Global/japan8888'}. Exception: . 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:416: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s 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: . 1203s 1203s 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} 1203s 1203s 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: . 1203s 1203s 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} 1203s 1203s 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'. 1203s 1203s ERROR logger:dnac.py:294 Site: get_have: 1037: Unexpected response received: 1203s ____ TestDnacSiteWorkflow.test_Site_workflow_manager_invalid_delete_config _____ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_invalid_delete_config(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_empty 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=False) 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:391: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def main(): 1203s """ main entry point for module execution 1203s """ 1203s element_spec = {'dnac_host': {'required': True, 'type': 'str'}, 1203s 'dnac_port': {'type': 'str', 'default': '443'}, 1203s 'dnac_username': {'type': 'str', 'default': 'admin', 'aliases': ['user']}, 1203s 'dnac_password': {'type': 'str', 'no_log': True}, 1203s 'dnac_verify': {'type': 'bool', 'default': 'True'}, 1203s 'dnac_version': {'type': 'str', 'default': '2.2.3.3'}, 1203s 'dnac_debug': {'type': 'bool', 'default': False}, 1203s 'dnac_log_level': {'type': 'str', 'default': 'WARNING'}, 1203s "dnac_log_file_path": {"type": 'str', "default": 'dnac.log'}, 1203s "dnac_log_append": {"type": 'bool', "default": True}, 1203s 'dnac_log': {'type': 'bool', 'default': False}, 1203s 'validate_response_schema': {'type': 'bool', 'default': True}, 1203s 'config_verify': {'type': 'bool', "default": False}, 1203s 'dnac_api_task_timeout': {'type': 'int', "default": 1200}, 1203s 'dnac_task_poll_interval': {'type': 'int', "default": 2}, 1203s 'config': {'required': True, 'type': 'list', 'elements': 'dict'}, 1203s 'state': {'default': 'merged', 'choices': ['merged', 'deleted']} 1203s } 1203s 1203s module = AnsibleModule(argument_spec=element_spec, 1203s supports_check_mode=False) 1203s 1203s ccc_site = Site(module) 1203s state = ccc_site.params.get("state") 1203s 1203s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.5.3") < 0: 1203s ccc_site.msg = ( 1203s "The specified version '{0}' does not support the site workflow feature. Supported versions start from '2.3.5.3' onwards. " 1203s "Version '2.3.5.3' introduces APIs for creating, updating, and deleting sites. " 1203s "Version '2.3.7.6' expands support to include APIs for bulk site creating, updating, and deleting sites.".format( 1203s ccc_site.get_ccc_version()) 1203s ) 1203s 1203s ccc_site.status = "failed" 1203s ccc_site.check_return_status() 1203s 1203s if state not in ccc_site.supported_states: 1203s ccc_site.status = "invalid" 1203s ccc_site.msg = "State {0} is invalid".format(state) 1203s ccc_site.check_return_status() 1203s 1203s ccc_site.validate_input().check_return_status() 1203s config_verify = ccc_site.params.get("config_verify") 1203s > ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1203s E AttributeError: 'list' object has no attribute 'check_return_status' 1203s 1203s plugins/modules/site_workflow_manager.py:2520: AttributeError 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 Site: validate_input: 493: Error: Configuration is not available in the playbook for validation 1203s 1203s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1172: Config data is missing. 1203s ______ TestDnacSiteWorkflow.test_Site_workflow_manager_delete_a_new_site _______ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_delete_a_new_site(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="deleted", 1203s config=self.delete_config_playbook 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:489: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/site_workflow_manager.py:2527: in main 1203s ccc_site.get_diff_state_apply[state](ccc_site.validated_config).check_return_status() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_diff_deleted(self, config): 1203s """ 1203s Call Cisco Catalyst Center API to delete sites with provided inputs. 1203s Parameters: 1203s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s - config (dict): Dictionary containing information for site deletion. 1203s Returns: 1203s - self: The result dictionary includes the following keys: 1203s - 'changed' (bool): Indicates whether changes were made 1203s during the deletion process. 1203s - 'response' (dict): Contains details about the execution 1203s and the deleted site ID. 1203s - 'msg' (str): A message indicating the status of the deletion operation. 1203s Description: 1203s This method initiates the deletion of a site by calling the 'delete_site' function in the 'sites' family 1203s of the Cisco Catalyst Center API. It uses the site ID obtained from the 'have' attribute. 1203s """ 1203s 1203s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.5.3") <= 0: 1203s site_exists = self.have.get("site_exists") 1203s site_name_hierarchy = self.want.get("site_name_hierarchy") 1203s site_id = self.have.get("site_id") 1203s if not site_exists: 1203s if site_name_hierarchy not in self.deleted_site_list: 1203s self.site_absent_list.append(site_name_hierarchy) 1203s self.log( 1203s "Failed to delete site '{0}'. Reason: The site was not found in the Cisco Catalyst Center.".format(site_name_hierarchy), 1203s "DEBUG" 1203s ) 1203s return self 1203s api_response, response = self.get_device_ids_from_site(site_name_hierarchy, site_id) 1203s self.log( 1203s "Received API response from 'get_membership': {0}".format(str(api_response)), "DEBUG") 1203s 1203s site_response = api_response.get("site", {}).get("response", []) 1203s self.log( 1203s "Site '{0}' response along with its child sites: {1}".format(site_name_hierarchy, str(site_response)), "DEBUG") 1203s 1203s if not site_response: 1203s self.delete_single_site(site_id, site_name_hierarchy) 1203s return self 1203s 1203s sorted_site_resp = sorted( 1203s site_response, key=lambda x: x.get("groupHierarchy"), reverse=True) 1203s 1203s for item in sorted_site_resp: 1203s self.delete_single_site(item['id'], item['groupNameHierarchy']) 1203s 1203s self.delete_single_site(site_id, site_name_hierarchy) 1203s self.log( 1203s "The site '{0}' and its child sites have been deleted successfully".format(site_name_hierarchy), "INFO") 1203s 1203s elif self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1203s final_deletion_list = [] 1203s for each_type in ("floor", "building", "area"): 1203s if self.handle_config[each_type]: 1203s self.log("Starting bulk site creation for type: {}".format(each_type), "DEBUG") 1203s for config in self.handle_config[each_type]: 1203s site_exists = config.get("site_exists") 1203s if not site_exists: 1203s self.log("Unable to delete site {0} as it's not found in Cisco Catalyst Center". 1203s format(config.get("site_name_hierarchy")), "INFO") 1203s self.site_absent_list.append(str(each_type) + ": " + str(config.get("site_name_hierarchy"))) 1203s else: 1203s final_deletion_list.append(config) 1203s self.log("Deletion list re-arranged order: {0}.".format(final_deletion_list), "INFO") 1203s 1203s if len(final_deletion_list) > 0: 1203s for config in final_deletion_list: 1203s site_name_hierarchy = config.get("site_name_hierarchy") 1203s site_params = config.get("site_params") 1203s site_params["site_id"] = config.get("site_id") 1203s site_type = site_params.get("type") 1203s site_id = site_params["site_id"] 1203s self.log("Site ID from 'have' for retrieval: {0}".format(site_id), "DEBUG") 1203s self.log("Site TYPE from 'have' for retrieval: {0}".format(site_type), "DEBUG") 1203s self.log("Site PARAMS from 'have' for retrieval: {0}".format(site_params), "DEBUG") 1203s self.log("Site NAME from 'want' for retrieval: {0}".format(site_name_hierarchy), "DEBUG") 1203s 1203s self.log("Initiating deletion for site '{0}' with site ID: {1} of type: {2}".format( 1203s site_name_hierarchy, site_id, site_type), "DEBUG") 1203s 1203s response = None 1203s if site_type == "floor": 1203s response = self.delete_floor(site_name_hierarchy, site_id) 1203s elif site_type == "area": 1203s response = self.delete_area(site_name_hierarchy, site_id) 1203s self.log("Response for deleting area: {0}".format(str(response)), "DEBUG") 1203s elif site_type == "building": 1203s response = self.delete_building(site_name_hierarchy, site_id) 1203s 1203s if isinstance(response, dict): 1203s > task_id = response.get("response", {}).get("taskId") 1203s E AttributeError: 'list' object has no attribute 'get' 1203s 1203s plugins/modules/site_workflow_manager.py:2136: AttributeError 1203s _____ TestDnacSiteWorkflow.test_Site_workflow_manager_invalid_delete_site ______ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_invalid_delete_site(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.5.3", 1203s dnac_log=True, 1203s state="deleted", 1203s config=self.delete_playbook_config 1203s ) 1203s ) 1203s self.maxDiff = None 1203s > result = self.execute_module(changed=False, failed=True) 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:536: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1203s result = self.failed() 1203s tests/unit/modules/dnac/dnac_module.py:125: in failed 1203s self.module.main() 1203s plugins/modules/site_workflow_manager.py:2542: in main 1203s module.exit_json(**ccc_site.result) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def exit_json(*args, **kwargs): 1203s if "changed" not in kwargs: 1203s kwargs["changed"] = False 1203s > raise AnsibleExitJson(kwargs) 1203s 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"} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:35: AnsibleExitJson 1203s ------------------------------ Captured log call ------------------------------- 1203s 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'. 1203s 1203s 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'. 1203s 1203s 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'. 1203s ________ TestDnacSiteWorkflow.test_Site_workflow_manager_delete_a_site _________ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_delete_a_site(self): 1203s """ 1203s Test case for site workflow manager when deleting a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_delete 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "This version : '2.3.7.6' given yaml format is not applicable to create a site' " 1203s ) 1203s E AssertionError: 'Exception occurred while creating site due to: ' != "This version : '2.3.7.6' given yaml form[35 chars]te' " 1203s E - Exception occurred while creating site due to: 1203s E + This version : '2.3.7.6' given yaml format is not applicable to create a site' 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:467: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s 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'. 1203s 1203s ERROR logger:dnac.py:294 Site: get_have: 1037: Unexpected response received: 1203s 1203s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: Exception occurred while creating site due to: 1203s 1203s 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} 1203s ________ TestDnacSiteWorkflow.test_Site_workflow_manager_update_a_site _________ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_update_a_site(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_site 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:611: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:136: in changed 1203s self.assertEqual(result["changed"], changed, result) 1203s E AssertionError: False != True : {'changed': False, 'diff': [], 'response': [], 'warnings': []} 1203s ------------------------------ Captured log call ------------------------------- 1203s 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 1203s __ TestswimWorkflowManager.test_swim_workflow_manager_playbook_activate_image __ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_swim_workflow_manager_playbook_activate_image(self): 1203s """ 1203s Test case for swim workflow manager import image url 1203s This test case checks the behavior of activativating the image in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_version='2.3.5.3', 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s config_verify=True, 1203s state="merged", 1203s config=self.playbook_activate_image 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_swim_workflow_manager.py:281: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/swim_workflow_manager.py:2415: in main 1203s ccc_swims.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/swim_workflow_manager.py:2113: in get_diff_merged 1203s self.get_diff_activation().check_return_status() 1203s plugins/modules/swim_workflow_manager.py:1964: in get_diff_activation 1203s device_uuid_list = self.get_device_uuids(site_name, device_family, device_role, device_series_name) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_device_uuids(self, site_name, device_family, device_role, device_series_name=None): 1203s """ 1203s Retrieve a list of device UUIDs based on the specified criteria. 1203s Parameters: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s site_name (str): The name of the site for which device UUIDs are requested. 1203s device_family (str): The family/type of devices to filter on. 1203s device_role (str): The role of devices to filter on. If None, 'ALL' roles are considered. 1203s device_series_name(str): Specifies the name of the device series. 1203s Returns: 1203s list: A list of device UUIDs that match the specified criteria. 1203s Description: 1203s The function checks the reachability status and role of devices in the given site. 1203s Only devices with "Reachable" status are considered, and filtering is based on the specified 1203s device family and role (if provided). 1203s """ 1203s 1203s device_uuid_list = [] 1203s device_id_list, site_response_list = [], [] 1203s if not site_name: 1203s site_name = "Global" 1203s self.log("Site name not specified; defaulting to 'Global' to fetch all devices under this category", "INFO") 1203s 1203s (site_exists, site_id) = self.site_exists(site_name) 1203s if not site_exists: 1203s self.log("""Site '{0}' is not found in the Cisco Catalyst Center, hence unable to fetch associated 1203s devices.""".format(site_name), "INFO") 1203s return device_uuid_list 1203s 1203s if device_series_name: 1203s if device_series_name.startswith(".*") and device_series_name.endswith(".*"): 1203s self.log("Device series name '{0}' is already in the regex format".format(device_series_name), "INFO") 1203s else: 1203s device_series_name = ".*" + device_series_name + ".*" 1203s 1203s if self.dnac_version <= self.version_2_3_5_3: 1203s site_params = { 1203s "site_id": site_id, 1203s "device_family": device_family 1203s } 1203s 1203s try: 1203s response = self.dnac._exec( 1203s family="sites", 1203s function='get_membership', 1203s op_modifies=True, 1203s params=site_params, 1203s ) 1203s 1203s except Exception as e: 1203s self.log("Unable to fetch the device(s) associated to the site '{0}' due to '{1}'".format(site_name, str(e)), "WARNING") 1203s return device_uuid_list 1203s 1203s self.log("Received API response from 'get_membership': {0}".format(str(response)), "DEBUG") 1203s response = response.get("device") 1203s 1203s > for item in response: 1203s E TypeError: 'NoneType' object is not iterable 1203s 1203s plugins/modules/swim_workflow_manager.py:935: TypeError 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1203s ____ TestDnacSiteWorkflow.test_Site_workflow_manager_update_not_needed_site ____ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_update_not_needed_site(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.5.3", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_update_site 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:585: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def main(): 1203s """ main entry point for module execution 1203s """ 1203s element_spec = {'dnac_host': {'required': True, 'type': 'str'}, 1203s 'dnac_port': {'type': 'str', 'default': '443'}, 1203s 'dnac_username': {'type': 'str', 'default': 'admin', 'aliases': ['user']}, 1203s 'dnac_password': {'type': 'str', 'no_log': True}, 1203s 'dnac_verify': {'type': 'bool', 'default': 'True'}, 1203s 'dnac_version': {'type': 'str', 'default': '2.2.3.3'}, 1203s 'dnac_debug': {'type': 'bool', 'default': False}, 1203s 'dnac_log_level': {'type': 'str', 'default': 'WARNING'}, 1203s "dnac_log_file_path": {"type": 'str', "default": 'dnac.log'}, 1203s "dnac_log_append": {"type": 'bool', "default": True}, 1203s 'dnac_log': {'type': 'bool', 'default': False}, 1203s 'validate_response_schema': {'type': 'bool', 'default': True}, 1203s 'config_verify': {'type': 'bool', "default": False}, 1203s 'dnac_api_task_timeout': {'type': 'int', "default": 1200}, 1203s 'dnac_task_poll_interval': {'type': 'int', "default": 2}, 1203s 'config': {'required': True, 'type': 'list', 'elements': 'dict'}, 1203s 'state': {'default': 'merged', 'choices': ['merged', 'deleted']} 1203s } 1203s 1203s module = AnsibleModule(argument_spec=element_spec, 1203s supports_check_mode=False) 1203s 1203s ccc_site = Site(module) 1203s state = ccc_site.params.get("state") 1203s 1203s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.5.3") < 0: 1203s ccc_site.msg = ( 1203s "The specified version '{0}' does not support the site workflow feature. Supported versions start from '2.3.5.3' onwards. " 1203s "Version '2.3.5.3' introduces APIs for creating, updating, and deleting sites. " 1203s "Version '2.3.7.6' expands support to include APIs for bulk site creating, updating, and deleting sites.".format( 1203s ccc_site.get_ccc_version()) 1203s ) 1203s 1203s ccc_site.status = "failed" 1203s ccc_site.check_return_status() 1203s 1203s if state not in ccc_site.supported_states: 1203s ccc_site.status = "invalid" 1203s ccc_site.msg = "State {0} is invalid".format(state) 1203s ccc_site.check_return_status() 1203s 1203s ccc_site.validate_input().check_return_status() 1203s config_verify = ccc_site.params.get("config_verify") 1203s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1203s 1203s if ccc_site.compare_dnac_versions(ccc_site.get_ccc_version(), "2.3.7.6") >= 0: 1203s ccc_site.reset_values() 1203s ccc_site.get_want(ccc_site.validated_config).check_return_status() 1203s ccc_site.get_have(ccc_site.validated_config).check_return_status() 1203s 1203s ccc_site.get_diff_state_apply[state](ccc_site.validated_config).check_return_status() 1203s 1203s if config_verify: 1203s ccc_site.update_site_messages().check_return_status() 1203s 1203s else: 1203s for config in ccc_site.validated_config: 1203s ccc_site.reset_values() 1203s 1203s ccc_site.get_want(config).check_return_status() 1203s > ccc_site.get_have(config).check_return_status() 1203s E AttributeError: 'NoneType' object has no attribute 'check_return_status' 1203s 1203s plugins/modules/site_workflow_manager.py:2537: AttributeError 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 Site: set_operation_result: 1780: An unexpected error occurred while retrieving site details: 'NoneType' object is not subscriptable 1203s _________ TestDnacSiteWorkflow.test_Site_workflow_manager_update_site __________ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s def get_diff_merged(self, config): 1203s """ 1203s Update/Create site information in Cisco Catalyst Center with fields 1203s provided in the playbook. 1203s Parameters: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s config (dict): A dictionary containing configuration information. 1203s Returns: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s Description: 1203s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1203s configuration information. If the specified site exists, the method checks if it requires an update 1203s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1203s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1203s the method exits, indicating that the site is up to date. 1203s """ 1203s site_updated = False 1203s site_created = False 1203s 1203s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1203s self.handle_config['area'] = [] 1203s self.handle_config['building'] = [] 1203s self.handle_config['floor'] = [] 1203s try: 1203s create_site = copy.deepcopy(self.handle_config["create_site"]) 1203s if len(create_site) > 0: 1203s self.log("Starting site creation process.", "DEBUG") 1203s for each_config in create_site: 1203s payload_data = self.change_payload_data(each_config.get("want")) 1203s if payload_data: 1203s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1203s payload_data.get(self.keymap["parent_name"]) 1203s del payload_data[self.keymap["parent_name"]] 1203s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1203s 1203s if payload_data.get("type") == "area": 1203s self.handle_config["area"].append(payload_data) 1203s self.log("Added to area: {}".format(payload_data), "DEBUG") 1203s elif payload_data.get("type") == "building": 1203s self.handle_config["building"].append(payload_data) 1203s self.log("Added to building: {}".format(payload_data), "DEBUG") 1203s elif payload_data.get("type") == "floor": 1203s self.handle_config["floor"].append(payload_data) 1203s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1203s for each_type in ("area", "building", "floor"): 1203s if self.handle_config[each_type]: 1203s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1203s for create_config in self.handle_config[each_type]: 1203s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1203s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1203s if not parent_name: 1203s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1203s self.log(self.msg, "DEBUG") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1203s 1203s site_exists = self.is_site_exist(parent_name) 1203s if not site_exists: 1203s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1203s self.log(self.msg, "DEBUG") 1203s self.site_absent_list.append(str(parent_name) + " does not exist ") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s 1203s response = self.creating_bulk_site(self.handle_config[each_type]) 1203s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1203s 1203s if response and isinstance(response, dict) and "response" in response: 1203s task_id = response["response"].get("taskId") 1203s if task_id: 1203s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1203s 1203s task_name = "create_sites" 1203s success_msg = "Site created successfully." 1203s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1203s 1203s for site in self.handle_config[each_type]: 1203s if "name" in site: 1203s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1203s 1203s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1203s 1203s for site in self.handle_config[each_type]: 1203s if site.get("type") == "floor": 1203s floor_name = site.get("name") 1203s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1203s 1203s upload_path = site.get("upload_floor_image_path", None) 1203s if upload_path: 1203s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1203s format(floor_name, upload_path), "INFO") 1203s 1203s map_details, map_status, success_message = self.upload_floor_image(site) 1203s if map_details: 1203s self.log("Floor map for '{}' uploaded successfully: {}". 1203s format(floor_name, success_message), "INFO") 1203s else: 1203s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1203s format(floor_name), "ERROR") 1203s else: 1203s self.log("No upload path provided for '{}'. Floor created without floor map.". 1203s format(floor_name), "INFO") 1203s else: 1203s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1203s return None 1203s else: 1203s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1203s return None 1203s 1203s task_detail_list = [] 1203s for each_config in self.have: 1203s site_name_hierarchy = each_config.get("site_name_hierarchy") 1203s 1203s if each_config.get("site_exists"): 1203s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1203s payload_new = self.change_payload_data(each_config.get("want")) 1203s if payload_new.get("type") == "area": 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1203s elif payload_new.get("type") in ("building", "floor"): 1203s site_params = each_config.get("site_params") 1203s site_params["site_id"] = each_config.get("site_id") 1203s site_type = site_params.get("type") 1203s 1203s if self.site_requires_update(each_config): 1203s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1203s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1203s else self.update_area(site_params) if site_type == "area" 1203s else self.update_building(site_params) if site_type == "building" 1203s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1203s 1203s self.log("Received API response from 'update_site': {0}". 1203s format(str(response)), "DEBUG") 1203s 1203s if response and isinstance(response, dict): 1203s taskid = response["response"]["taskId"] 1203s 1203s while True: 1203s task_details = self.get_task_details(taskid) 1203s if site_type != "floor": 1203s if task_details.get("progress") == "Group is updated successfully": 1203s task_detail_list.append(task_details) 1203s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1203s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1203s break 1203s else: 1203s if task_details.get("progress") == "Service domain is updated successfully.": 1203s task_detail_list.append(task_details) 1203s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1203s break 1203s 1203s if task_details.get("bapiError"): 1203s msg = task_details.get("bapiError") 1203s self.set_operation_result("failed", False, msg, "ERROR", 1203s task_details).check_return_status() 1203s break 1203s else: 1203s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s else: 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1203s except Exception as e: 1203s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1203s 1203s return self 1203s 1203s else: 1203s site_params = self.want.get("site_params") 1203s site_type = site_params.get("type") 1203s if self.have.get("site_exists"): 1203s site_name_hierarchy = self.want.get("site_name_hierarchy") 1203s if not self.site_requires_update(): 1203s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s else: 1203s try: 1203s site_params["site_id"] = self.have.get("site_id") 1203s self.log("Site parameters prepared for update: {}".format(site_params)) 1203s self.log("Site update process started.", "INFO") 1203s 1203s if site_params['site'].get('building'): 1203s building_details = {} 1203s for key, value in site_params['site']['building'].items(): 1203s if value is not None: 1203s building_details[key] = value 1203s 1203s site_params['site']['building'] = building_details 1203s 1203s response = self.dnac._exec( 1203s family="sites", 1203s function='update_site', 1203s op_modifies=True, 1203s params=site_params, 1203s ) 1203s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1203s 1203s if response and isinstance(response, dict): 1203s execution_id = response.get("executionId") 1203s while True: 1203s execution_details = self.get_execution_details(execution_id) 1203s if execution_details.get("status") == "SUCCESS": 1203s self.result['changed'] = True 1203s site_updated = True 1203s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1203s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1203s break 1203s elif execution_details.get("bapiError"): 1203s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s execution_details).check_return_status() 1203s 1203s except Exception as e: 1203s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1203s self.log(self.msg, "ERROR") 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s site_name_hierarchy).check_return_status() 1203s 1203s else: 1203s try: 1203s try: 1203s if site_params['site'].get('building'): 1203s building_details = {} 1203s for key, value in site_params['site']['building'].items(): 1203s if value is not None: 1203s building_details[key] = value 1203s 1203s site_params['site']['building'] = building_details 1203s 1203s except Exception as e: 1203s site_type = site_params['type'] 1203s name = site_params['site'][site_type]['name'] 1203s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1203s format(name), "INFO") 1203s 1203s site_type = site_params['type'] 1203s parent_name = site_params.get('site').get(site_type).get('parentName') 1203s try: 1203s response = self.get_site_v1(parent_name) 1203s if not response: 1203s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1203s self.log(self.msg, "DEBUG") 1203s self.site_absent_list.append(str(parent_name) + " does not exist ") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s except Exception as e: 1203s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1203s 1203s > response = self.dnac._exec( 1203s family="sites", 1203s function='create_site', 1203s op_modifies=True, 1203s params=site_params, 1203s ) 1203s 1203s plugins/modules/site_workflow_manager.py:1868: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1203s return self._mock_call(*args, **kwargs) 1203s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1203s return self._execute_mock_call(*args, **kwargs) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s self = , args = () 1203s kwargs = {'family': 'sites', 'function': 'create_site', 'op_modifies': True, 'params': {'site': {'area': {'name': 'japan8888', 'parentName': 'Global'}}, 'type': 'area'}} 1203s effect = , result = Exception() 1203s 1203s def _execute_mock_call(self, /, *args, **kwargs): 1203s # separate from _increment_mock_call so that awaited functions are 1203s # executed separately from their call, also AsyncMock overrides this method 1203s 1203s effect = self.side_effect 1203s if effect is not None: 1203s if _is_exception(effect): 1203s raise effect 1203s elif not _callable(effect): 1203s result = next(effect) 1203s if _is_exception(result): 1203s > raise result 1203s E Exception 1203s 1203s /usr/lib/python3.13/unittest/mock.py:1232: Exception 1203s 1203s During handling of the above exception, another exception occurred: 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_update_site(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.5.3", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_update_site 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:559: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/site_workflow_manager.py:2539: in main 1203s ccc_site.get_diff_state_apply[state](config).check_return_status() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_diff_merged(self, config): 1203s """ 1203s Update/Create site information in Cisco Catalyst Center with fields 1203s provided in the playbook. 1203s Parameters: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s config (dict): A dictionary containing configuration information. 1203s Returns: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s Description: 1203s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1203s configuration information. If the specified site exists, the method checks if it requires an update 1203s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1203s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1203s the method exits, indicating that the site is up to date. 1203s """ 1203s site_updated = False 1203s site_created = False 1203s 1203s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1203s self.handle_config['area'] = [] 1203s self.handle_config['building'] = [] 1203s self.handle_config['floor'] = [] 1203s try: 1203s create_site = copy.deepcopy(self.handle_config["create_site"]) 1203s if len(create_site) > 0: 1203s self.log("Starting site creation process.", "DEBUG") 1203s for each_config in create_site: 1203s payload_data = self.change_payload_data(each_config.get("want")) 1203s if payload_data: 1203s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1203s payload_data.get(self.keymap["parent_name"]) 1203s del payload_data[self.keymap["parent_name"]] 1203s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1203s 1203s if payload_data.get("type") == "area": 1203s self.handle_config["area"].append(payload_data) 1203s self.log("Added to area: {}".format(payload_data), "DEBUG") 1203s elif payload_data.get("type") == "building": 1203s self.handle_config["building"].append(payload_data) 1203s self.log("Added to building: {}".format(payload_data), "DEBUG") 1203s elif payload_data.get("type") == "floor": 1203s self.handle_config["floor"].append(payload_data) 1203s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1203s for each_type in ("area", "building", "floor"): 1203s if self.handle_config[each_type]: 1203s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1203s for create_config in self.handle_config[each_type]: 1203s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1203s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1203s if not parent_name: 1203s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1203s self.log(self.msg, "DEBUG") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1203s 1203s site_exists = self.is_site_exist(parent_name) 1203s if not site_exists: 1203s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1203s self.log(self.msg, "DEBUG") 1203s self.site_absent_list.append(str(parent_name) + " does not exist ") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s 1203s response = self.creating_bulk_site(self.handle_config[each_type]) 1203s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1203s 1203s if response and isinstance(response, dict) and "response" in response: 1203s task_id = response["response"].get("taskId") 1203s if task_id: 1203s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1203s 1203s task_name = "create_sites" 1203s success_msg = "Site created successfully." 1203s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1203s 1203s for site in self.handle_config[each_type]: 1203s if "name" in site: 1203s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1203s 1203s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1203s 1203s for site in self.handle_config[each_type]: 1203s if site.get("type") == "floor": 1203s floor_name = site.get("name") 1203s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1203s 1203s upload_path = site.get("upload_floor_image_path", None) 1203s if upload_path: 1203s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1203s format(floor_name, upload_path), "INFO") 1203s 1203s map_details, map_status, success_message = self.upload_floor_image(site) 1203s if map_details: 1203s self.log("Floor map for '{}' uploaded successfully: {}". 1203s format(floor_name, success_message), "INFO") 1203s else: 1203s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1203s format(floor_name), "ERROR") 1203s else: 1203s self.log("No upload path provided for '{}'. Floor created without floor map.". 1203s format(floor_name), "INFO") 1203s else: 1203s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1203s return None 1203s else: 1203s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1203s return None 1203s 1203s task_detail_list = [] 1203s for each_config in self.have: 1203s site_name_hierarchy = each_config.get("site_name_hierarchy") 1203s 1203s if each_config.get("site_exists"): 1203s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1203s payload_new = self.change_payload_data(each_config.get("want")) 1203s if payload_new.get("type") == "area": 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1203s elif payload_new.get("type") in ("building", "floor"): 1203s site_params = each_config.get("site_params") 1203s site_params["site_id"] = each_config.get("site_id") 1203s site_type = site_params.get("type") 1203s 1203s if self.site_requires_update(each_config): 1203s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1203s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1203s else self.update_area(site_params) if site_type == "area" 1203s else self.update_building(site_params) if site_type == "building" 1203s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1203s 1203s self.log("Received API response from 'update_site': {0}". 1203s format(str(response)), "DEBUG") 1203s 1203s if response and isinstance(response, dict): 1203s taskid = response["response"]["taskId"] 1203s 1203s while True: 1203s task_details = self.get_task_details(taskid) 1203s if site_type != "floor": 1203s if task_details.get("progress") == "Group is updated successfully": 1203s task_detail_list.append(task_details) 1203s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1203s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1203s break 1203s else: 1203s if task_details.get("progress") == "Service domain is updated successfully.": 1203s task_detail_list.append(task_details) 1203s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1203s break 1203s 1203s if task_details.get("bapiError"): 1203s msg = task_details.get("bapiError") 1203s self.set_operation_result("failed", False, msg, "ERROR", 1203s task_details).check_return_status() 1203s break 1203s else: 1203s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s else: 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1203s except Exception as e: 1203s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1203s 1203s return self 1203s 1203s else: 1203s site_params = self.want.get("site_params") 1203s site_type = site_params.get("type") 1203s if self.have.get("site_exists"): 1203s site_name_hierarchy = self.want.get("site_name_hierarchy") 1203s if not self.site_requires_update(): 1203s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s else: 1203s try: 1203s site_params["site_id"] = self.have.get("site_id") 1203s self.log("Site parameters prepared for update: {}".format(site_params)) 1203s self.log("Site update process started.", "INFO") 1203s 1203s if site_params['site'].get('building'): 1203s building_details = {} 1203s for key, value in site_params['site']['building'].items(): 1203s if value is not None: 1203s building_details[key] = value 1203s 1203s site_params['site']['building'] = building_details 1203s 1203s response = self.dnac._exec( 1203s family="sites", 1203s function='update_site', 1203s op_modifies=True, 1203s params=site_params, 1203s ) 1203s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1203s 1203s if response and isinstance(response, dict): 1203s execution_id = response.get("executionId") 1203s while True: 1203s execution_details = self.get_execution_details(execution_id) 1203s if execution_details.get("status") == "SUCCESS": 1203s self.result['changed'] = True 1203s site_updated = True 1203s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1203s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1203s break 1203s elif execution_details.get("bapiError"): 1203s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s execution_details).check_return_status() 1203s 1203s except Exception as e: 1203s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1203s self.log(self.msg, "ERROR") 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s site_name_hierarchy).check_return_status() 1203s 1203s else: 1203s try: 1203s try: 1203s if site_params['site'].get('building'): 1203s building_details = {} 1203s for key, value in site_params['site']['building'].items(): 1203s if value is not None: 1203s building_details[key] = value 1203s 1203s site_params['site']['building'] = building_details 1203s 1203s except Exception as e: 1203s site_type = site_params['type'] 1203s name = site_params['site'][site_type]['name'] 1203s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1203s format(name), "INFO") 1203s 1203s site_type = site_params['type'] 1203s parent_name = site_params.get('site').get(site_type).get('parentName') 1203s try: 1203s response = self.get_site_v1(parent_name) 1203s if not response: 1203s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1203s self.log(self.msg, "DEBUG") 1203s self.site_absent_list.append(str(parent_name) + " does not exist ") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s except Exception as e: 1203s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1203s 1203s response = self.dnac._exec( 1203s family="sites", 1203s function='create_site', 1203s op_modifies=True, 1203s params=site_params, 1203s ) 1203s self.log("Received API response from 'create_site': {0}".format(str(response)), "DEBUG") 1203s 1203s if response and isinstance(response, dict): 1203s executionid = response.get("executionId") 1203s while True: 1203s execution_details = self.get_execution_details(executionid) 1203s if execution_details.get("status") == "SUCCESS": 1203s self.result['changed'] = True 1203s break 1203s elif execution_details.get("bapiError"): 1203s self.msg = "Unable to Create: " + str(execution_details.get("bapiError")) 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s execution_details).check_return_status() 1203s break 1203s 1203s site_exists, current_site = self.site_exists() 1203s if site_exists: 1203s site_name_hierarchy = self.want.get("site_name_hierarchy") 1203s self.created_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1203s self.log("Site '{0}' created successfully".format(site_name_hierarchy), "INFO") 1203s return self 1203s 1203s except Exception as e: 1203s self.msg = "Unexpected error occurred while create: {0}".format(str(e)) 1203s self.log(self.msg, "ERROR") 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s > site_name_hierarchy).check_return_status() 1203s E UnboundLocalError: cannot access local variable 'site_name_hierarchy' where it is not associated with a value 1203s 1203s plugins/modules/site_workflow_manager.py:1900: UnboundLocalError 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1203s 1203s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1203s 1203s ERROR logger:dnac.py:294 Site: get_diff_merged: 1898: Unexpected error occurred while create: 1203s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_image_distribution_failed _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s def get_device_ip_from_id(self, device_id): 1203s """ 1203s Retrieve the management IP address of a device from Cisco Catalyst Center using its ID. 1203s Parameters: 1203s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s - device_id (str): The unique identifier of the device in Cisco Catalyst Center. 1203s Returns: 1203s str: The management IP address of the specified device. 1203s Raises: 1203s Exception: If there is an error while retrieving the response from Cisco Catalyst Center. 1203s Description: 1203s This method queries Cisco Catalyst Center for the device details based on its unique identifier (ID). 1203s It uses the 'get_device_list' function in the 'devices' family, extracts the management IP address 1203s from the response, and returns it. If any error occurs during the process, an exception is raised 1203s with an appropriate error message logged. 1203s """ 1203s 1203s try: 1203s response = self.dnac._exec( 1203s family="devices", 1203s function='get_device_list', 1203s op_modifies=True, 1203s params={"id": device_id} 1203s ) 1203s self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") 1203s > response = response.get('response')[0] 1203s E KeyError: 0 1203s 1203s plugins/modules/swim_workflow_manager.py:1746: KeyError 1203s 1203s During handling of the above exception, another exception occurred: 1203s 1203s self = 1203s 1203s def test_swim_workflow_manager_playbook_image_distribution_failed(self): 1203s """ 1203s Test case for swim workflow manager when giving image distribution failed 1203s This test case checks the behavior of the swim workflow when giving image distribution failed 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_version='2.3.5.3', 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_image_distribution_failed 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=True) 1203s 1203s tests/unit/modules/dnac/test_swim_workflow_manager.py:533: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:107: in execute_module 1203s result = self.failed() 1203s tests/unit/modules/dnac/dnac_module.py:125: in failed 1203s self.module.main() 1203s plugins/modules/swim_workflow_manager.py:2415: in main 1203s ccc_swims.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/swim_workflow_manager.py:2110: in get_diff_merged 1203s self.get_diff_distribution().check_return_status() 1203s plugins/modules/swim_workflow_manager.py:1834: in get_diff_distribution 1203s device_ip = self.get_device_ip_from_id(distribution_device_id) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_device_ip_from_id(self, device_id): 1203s """ 1203s Retrieve the management IP address of a device from Cisco Catalyst Center using its ID. 1203s Parameters: 1203s - self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s - device_id (str): The unique identifier of the device in Cisco Catalyst Center. 1203s Returns: 1203s str: The management IP address of the specified device. 1203s Raises: 1203s Exception: If there is an error while retrieving the response from Cisco Catalyst Center. 1203s Description: 1203s This method queries Cisco Catalyst Center for the device details based on its unique identifier (ID). 1203s It uses the 'get_device_list' function in the 'devices' family, extracts the management IP address 1203s from the response, and returns it. If any error occurs during the process, an exception is raised 1203s with an appropriate error message logged. 1203s """ 1203s 1203s try: 1203s response = self.dnac._exec( 1203s family="devices", 1203s function='get_device_list', 1203s op_modifies=True, 1203s params={"id": device_id} 1203s ) 1203s self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") 1203s response = response.get('response')[0] 1203s device_ip = response.get("managementIpAddress") 1203s 1203s return device_ip 1203s except Exception as e: 1203s error_message = "Error occurred while getting the response of device from Cisco Catalyst Center: {0}".format(str(e)) 1203s self.log(error_message, "ERROR") 1203s > raise Exception(error_message) 1203s E Exception: Error occurred while getting the response of device from Cisco Catalyst Center: 0 1203s 1203s plugins/modules/swim_workflow_manager.py:1753: Exception 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1203s 1203s 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' 1203s 1203s 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 1203s _______ TestDnacSiteWorkflow.test_Site_workflow_manager_upload_floor_map _______ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_upload_floor_map(self): 1203s """ 1203s Test case for site workflow manager when creating a site. 1203s 1203s This test case checks the behavior of the site workflow manager when creating a new site in the specified DNAC. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.7.6", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.upload_floor_map_playbook 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:320: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/site_workflow_manager.py:2520: in main 1203s ccc_site.validate_site_input_data(ccc_site.validated_config, state).check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1188: Missing 'name' field in entry. 1203s 1203s ERROR logger:dnac.py:294 Site: validate_site_input_data: 1196: Missing 'parent_name' field in entry. 1203s 1203s 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' 1203s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_import_cco_image _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_swim_workflow_manager_playbook_import_cco_image(self): 1203s """ 1203s Test case for SWIM workflow manager to import an image from Cisco's cloud (CCO). 1203s This test case verifies the import of an image from the CCO into the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_version='2.3.7.6', 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_import_cco_image 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_swim_workflow_manager.py:303: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/swim_workflow_manager.py:2413: in main 1203s ccc_swims.get_diff_import().check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1355: image_type - cco 1203s 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1372: cat9k_iosxe_npe.17.12.04.SPA.bin 1203s 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1434: importing with the import_params - {'id': '8b01c34b-7e5e-4181-81ee-9bece7b5d078'} 1203s 1203s 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' 1203s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_import_image_already_exist _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_swim_workflow_manager_playbook_import_image_already_exist(self): 1203s """ 1203s Test case for swim workflow manager when giving import image already exist 1203s This test case checks the behavior of the swim workflow when giving import image already exist 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_version='2.3.5.3', 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_import_image_already_exist 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=False) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Image(s) cat9k_iosxe.17.12.02.SPA.bin were skipped as they already exist in Cisco Catalyst Center. No new images were imported." 1203s ) 1203s 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.' 1203s E - Image(s) cat9k_iosxe.17.12.02.SPA.bin were skipped as they already exist in Cisco Catalyst Center. 1203s 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. 1203s E ? +++++++++++++++++++++++++++++ 1203s 1203s tests/unit/modules/dnac/test_swim_workflow_manager.py:465: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1355: image_type - remote 1203s 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1372: cat9k_iosxe.17.12.02.SPA.bin 1203s ___ TestDnacSiteWorkflow.test_Site_workflow_manager_verify_diff_merged_site ____ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s def get_diff_merged(self, config): 1203s """ 1203s Update/Create site information in Cisco Catalyst Center with fields 1203s provided in the playbook. 1203s Parameters: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s config (dict): A dictionary containing configuration information. 1203s Returns: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s Description: 1203s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1203s configuration information. If the specified site exists, the method checks if it requires an update 1203s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1203s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1203s the method exits, indicating that the site is up to date. 1203s """ 1203s site_updated = False 1203s site_created = False 1203s 1203s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1203s self.handle_config['area'] = [] 1203s self.handle_config['building'] = [] 1203s self.handle_config['floor'] = [] 1203s try: 1203s create_site = copy.deepcopy(self.handle_config["create_site"]) 1203s if len(create_site) > 0: 1203s self.log("Starting site creation process.", "DEBUG") 1203s for each_config in create_site: 1203s payload_data = self.change_payload_data(each_config.get("want")) 1203s if payload_data: 1203s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1203s payload_data.get(self.keymap["parent_name"]) 1203s del payload_data[self.keymap["parent_name"]] 1203s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1203s 1203s if payload_data.get("type") == "area": 1203s self.handle_config["area"].append(payload_data) 1203s self.log("Added to area: {}".format(payload_data), "DEBUG") 1203s elif payload_data.get("type") == "building": 1203s self.handle_config["building"].append(payload_data) 1203s self.log("Added to building: {}".format(payload_data), "DEBUG") 1203s elif payload_data.get("type") == "floor": 1203s self.handle_config["floor"].append(payload_data) 1203s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1203s for each_type in ("area", "building", "floor"): 1203s if self.handle_config[each_type]: 1203s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1203s for create_config in self.handle_config[each_type]: 1203s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1203s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1203s if not parent_name: 1203s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1203s self.log(self.msg, "DEBUG") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1203s 1203s site_exists = self.is_site_exist(parent_name) 1203s if not site_exists: 1203s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1203s self.log(self.msg, "DEBUG") 1203s self.site_absent_list.append(str(parent_name) + " does not exist ") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s 1203s response = self.creating_bulk_site(self.handle_config[each_type]) 1203s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1203s 1203s if response and isinstance(response, dict) and "response" in response: 1203s task_id = response["response"].get("taskId") 1203s if task_id: 1203s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1203s 1203s task_name = "create_sites" 1203s success_msg = "Site created successfully." 1203s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1203s 1203s for site in self.handle_config[each_type]: 1203s if "name" in site: 1203s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1203s 1203s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1203s 1203s for site in self.handle_config[each_type]: 1203s if site.get("type") == "floor": 1203s floor_name = site.get("name") 1203s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1203s 1203s upload_path = site.get("upload_floor_image_path", None) 1203s if upload_path: 1203s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1203s format(floor_name, upload_path), "INFO") 1203s 1203s map_details, map_status, success_message = self.upload_floor_image(site) 1203s if map_details: 1203s self.log("Floor map for '{}' uploaded successfully: {}". 1203s format(floor_name, success_message), "INFO") 1203s else: 1203s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1203s format(floor_name), "ERROR") 1203s else: 1203s self.log("No upload path provided for '{}'. Floor created without floor map.". 1203s format(floor_name), "INFO") 1203s else: 1203s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1203s return None 1203s else: 1203s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1203s return None 1203s 1203s task_detail_list = [] 1203s for each_config in self.have: 1203s site_name_hierarchy = each_config.get("site_name_hierarchy") 1203s 1203s if each_config.get("site_exists"): 1203s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1203s payload_new = self.change_payload_data(each_config.get("want")) 1203s if payload_new.get("type") == "area": 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1203s elif payload_new.get("type") in ("building", "floor"): 1203s site_params = each_config.get("site_params") 1203s site_params["site_id"] = each_config.get("site_id") 1203s site_type = site_params.get("type") 1203s 1203s if self.site_requires_update(each_config): 1203s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1203s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1203s else self.update_area(site_params) if site_type == "area" 1203s else self.update_building(site_params) if site_type == "building" 1203s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1203s 1203s self.log("Received API response from 'update_site': {0}". 1203s format(str(response)), "DEBUG") 1203s 1203s if response and isinstance(response, dict): 1203s taskid = response["response"]["taskId"] 1203s 1203s while True: 1203s task_details = self.get_task_details(taskid) 1203s if site_type != "floor": 1203s if task_details.get("progress") == "Group is updated successfully": 1203s task_detail_list.append(task_details) 1203s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1203s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1203s break 1203s else: 1203s if task_details.get("progress") == "Service domain is updated successfully.": 1203s task_detail_list.append(task_details) 1203s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1203s break 1203s 1203s if task_details.get("bapiError"): 1203s msg = task_details.get("bapiError") 1203s self.set_operation_result("failed", False, msg, "ERROR", 1203s task_details).check_return_status() 1203s break 1203s else: 1203s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s else: 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1203s except Exception as e: 1203s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1203s 1203s return self 1203s 1203s else: 1203s site_params = self.want.get("site_params") 1203s site_type = site_params.get("type") 1203s if self.have.get("site_exists"): 1203s site_name_hierarchy = self.want.get("site_name_hierarchy") 1203s if not self.site_requires_update(): 1203s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s else: 1203s try: 1203s site_params["site_id"] = self.have.get("site_id") 1203s self.log("Site parameters prepared for update: {}".format(site_params)) 1203s self.log("Site update process started.", "INFO") 1203s 1203s if site_params['site'].get('building'): 1203s building_details = {} 1203s for key, value in site_params['site']['building'].items(): 1203s if value is not None: 1203s building_details[key] = value 1203s 1203s site_params['site']['building'] = building_details 1203s 1203s response = self.dnac._exec( 1203s family="sites", 1203s function='update_site', 1203s op_modifies=True, 1203s params=site_params, 1203s ) 1203s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1203s 1203s if response and isinstance(response, dict): 1203s execution_id = response.get("executionId") 1203s while True: 1203s execution_details = self.get_execution_details(execution_id) 1203s if execution_details.get("status") == "SUCCESS": 1203s self.result['changed'] = True 1203s site_updated = True 1203s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1203s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1203s break 1203s elif execution_details.get("bapiError"): 1203s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s execution_details).check_return_status() 1203s 1203s except Exception as e: 1203s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1203s self.log(self.msg, "ERROR") 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s site_name_hierarchy).check_return_status() 1203s 1203s else: 1203s try: 1203s try: 1203s if site_params['site'].get('building'): 1203s building_details = {} 1203s for key, value in site_params['site']['building'].items(): 1203s if value is not None: 1203s building_details[key] = value 1203s 1203s site_params['site']['building'] = building_details 1203s 1203s except Exception as e: 1203s site_type = site_params['type'] 1203s name = site_params['site'][site_type]['name'] 1203s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1203s format(name), "INFO") 1203s 1203s site_type = site_params['type'] 1203s parent_name = site_params.get('site').get(site_type).get('parentName') 1203s try: 1203s response = self.get_site_v1(parent_name) 1203s if not response: 1203s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1203s self.log(self.msg, "DEBUG") 1203s self.site_absent_list.append(str(parent_name) + " does not exist ") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s except Exception as e: 1203s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1203s 1203s > response = self.dnac._exec( 1203s family="sites", 1203s function='create_site', 1203s op_modifies=True, 1203s params=site_params, 1203s ) 1203s 1203s plugins/modules/site_workflow_manager.py:1868: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s /usr/lib/python3.13/unittest/mock.py:1169: in __call__ 1203s return self._mock_call(*args, **kwargs) 1203s /usr/lib/python3.13/unittest/mock.py:1173: in _mock_call 1203s return self._execute_mock_call(*args, **kwargs) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s self = , args = () 1203s kwargs = {'family': 'sites', 'function': 'create_site', 'op_modifies': True, 'params': {'site': {'area': {'name': 'japan8888', 'parentName': 'Global'}}, 'type': 'area'}} 1203s effect = , result = Exception() 1203s 1203s def _execute_mock_call(self, /, *args, **kwargs): 1203s # separate from _increment_mock_call so that awaited functions are 1203s # executed separately from their call, also AsyncMock overrides this method 1203s 1203s effect = self.side_effect 1203s if effect is not None: 1203s if _is_exception(effect): 1203s raise effect 1203s elif not _callable(effect): 1203s result = next(effect) 1203s if _is_exception(result): 1203s > raise result 1203s E Exception 1203s 1203s /usr/lib/python3.13/unittest/mock.py:1232: Exception 1203s 1203s During handling of the above exception, another exception occurred: 1203s 1203s self = 1203s 1203s def test_Site_workflow_manager_verify_diff_merged_site(self): 1203s """ 1203s Test case for verify parameters in site workflow manager after applying merged state. 1203s 1203s This test case checks the behavior of the site workflow manager after applying merged state Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_version="2.3.5.3", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_config_site 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=False) 1203s 1203s tests/unit/modules/dnac/test_site_workflow_manager.py:442: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/site_workflow_manager.py:2539: in main 1203s ccc_site.get_diff_state_apply[state](config).check_return_status() 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_diff_merged(self, config): 1203s """ 1203s Update/Create site information in Cisco Catalyst Center with fields 1203s provided in the playbook. 1203s Parameters: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s config (dict): A dictionary containing configuration information. 1203s Returns: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s Description: 1203s This method determines whether to update or create a site in Cisco Catalyst Center based on the provided 1203s configuration information. If the specified site exists, the method checks if it requires an update 1203s by calling the 'site_requires_update' method. If an update is required, it calls the 'update_site' 1203s function from the 'sites' family of the Cisco Catalyst Center API. If the site does not require an update, 1203s the method exits, indicating that the site is up to date. 1203s """ 1203s site_updated = False 1203s site_created = False 1203s 1203s if self.compare_dnac_versions(self.get_ccc_version(), "2.3.7.6") >= 0: 1203s self.handle_config['area'] = [] 1203s self.handle_config['building'] = [] 1203s self.handle_config['floor'] = [] 1203s try: 1203s create_site = copy.deepcopy(self.handle_config["create_site"]) 1203s if len(create_site) > 0: 1203s self.log("Starting site creation process.", "DEBUG") 1203s for each_config in create_site: 1203s payload_data = self.change_payload_data(each_config.get("want")) 1203s if payload_data: 1203s payload_data[self.keymap["parent_name_hierarchy"]] =\ 1203s payload_data.get(self.keymap["parent_name"]) 1203s del payload_data[self.keymap["parent_name"]] 1203s self.log("Payload data prepared for site creation: {}".format(payload_data), "DEBUG") 1203s 1203s if payload_data.get("type") == "area": 1203s self.handle_config["area"].append(payload_data) 1203s self.log("Added to area: {}".format(payload_data), "DEBUG") 1203s elif payload_data.get("type") == "building": 1203s self.handle_config["building"].append(payload_data) 1203s self.log("Added to building: {}".format(payload_data), "DEBUG") 1203s elif payload_data.get("type") == "floor": 1203s self.handle_config["floor"].append(payload_data) 1203s self.log("Added to floor: {}".format(payload_data), "DEBUG") 1203s for each_type in ("area", "building", "floor"): 1203s if self.handle_config[each_type]: 1203s self.log("Processing configurations for '{0}'.".format(each_type), "DEBUG") 1203s for create_config in self.handle_config[each_type]: 1203s self.log("Handling configuration: {0}".format(create_config), "DEBUG") 1203s parent_name = create_config.get(self.keymap.get("parent_name_hierarchy")) 1203s if not parent_name: 1203s self.msg = "No parent name found in configuration for '{0}'.".format(each_type) 1203s self.log(self.msg, "DEBUG") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s self.log("Checking if parent site '{0}' exists in the hierarchy.".format(parent_name), "DEBUG") 1203s 1203s site_exists = self.is_site_exist(parent_name) 1203s if not site_exists: 1203s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1203s self.log(self.msg, "DEBUG") 1203s self.site_absent_list.append(str(parent_name) + " does not exist ") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s 1203s response = self.creating_bulk_site(self.handle_config[each_type]) 1203s self.log("Response from creating_bulk_site for {}: {}".format(each_type, response), "DEBUG") 1203s 1203s if response and isinstance(response, dict) and "response" in response: 1203s task_id = response["response"].get("taskId") 1203s if task_id: 1203s self.log("Task Id for the 'site_creation' task is {}".format(task_id), "INFO") 1203s 1203s task_name = "create_sites" 1203s success_msg = "Site created successfully." 1203s self.get_task_status_from_tasks_by_id(task_id, task_name, success_msg) 1203s 1203s for site in self.handle_config[each_type]: 1203s if "name" in site: 1203s self.created_site_list.append(str(each_type) + ": " + str(site.get("name"))) 1203s 1203s self.log("Site '{}' created successfully".format(self.created_site_list), "INFO") 1203s 1203s for site in self.handle_config[each_type]: 1203s if site.get("type") == "floor": 1203s floor_name = site.get("name") 1203s self.log("Floor '{}' has been created successfully.".format(floor_name), "INFO") 1203s 1203s upload_path = site.get("upload_floor_image_path", None) 1203s if upload_path: 1203s self.log("Upload path found for floor '{}'. Starting upload floor map from '{}.'". 1203s format(floor_name, upload_path), "INFO") 1203s 1203s map_details, map_status, success_message = self.upload_floor_image(site) 1203s if map_details: 1203s self.log("Floor map for '{}' uploaded successfully: {}". 1203s format(floor_name, success_message), "INFO") 1203s else: 1203s self.log("Floor map upload failed for '{}'. Please check the upload path and retry.". 1203s format(floor_name), "ERROR") 1203s else: 1203s self.log("No upload path provided for '{}'. Floor created without floor map.". 1203s format(floor_name), "INFO") 1203s else: 1203s self.log("No valid task ID received from the 'creating_bulk_site' response.", "WARNING") 1203s return None 1203s else: 1203s self.log("No response received from the 'creating_bulk_site' API call.", "WARNING") 1203s return None 1203s 1203s task_detail_list = [] 1203s for each_config in self.have: 1203s site_name_hierarchy = each_config.get("site_name_hierarchy") 1203s 1203s if each_config.get("site_exists"): 1203s self.log("Processing site: {}".format(site_name_hierarchy), "DEBUG") 1203s payload_new = self.change_payload_data(each_config.get("want")) 1203s if payload_new.get("type") == "area": 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1203s elif payload_new.get("type") in ("building", "floor"): 1203s site_params = each_config.get("site_params") 1203s site_params["site_id"] = each_config.get("site_id") 1203s site_type = site_params.get("type") 1203s 1203s if self.site_requires_update(each_config): 1203s self.log("Site requires update, starting update for type: {}".format(site_type), "DEBUG") 1203s response = (self.update_floor(site_params, payload_new) if site_type == "floor" 1203s else self.update_area(site_params) if site_type == "area" 1203s else self.update_building(site_params) if site_type == "building" 1203s else self.log("Unknown site type: {0}".format(site_type), "ERROR")) 1203s 1203s self.log("Received API response from 'update_site': {0}". 1203s format(str(response)), "DEBUG") 1203s 1203s if response and isinstance(response, dict): 1203s taskid = response["response"]["taskId"] 1203s 1203s while True: 1203s task_details = self.get_task_details(taskid) 1203s if site_type != "floor": 1203s if task_details.get("progress") == "Group is updated successfully": 1203s task_detail_list.append(task_details) 1203s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1203s self.log("Site '{}' updated successfully.".format(site_name_hierarchy), "INFO") 1203s break 1203s else: 1203s if task_details.get("progress") == "Service domain is updated successfully.": 1203s task_detail_list.append(task_details) 1203s self.updated_site_list.append(site_type + ": " + site_name_hierarchy) 1203s break 1203s 1203s if task_details.get("bapiError"): 1203s msg = task_details.get("bapiError") 1203s self.set_operation_result("failed", False, msg, "ERROR", 1203s task_details).check_return_status() 1203s break 1203s else: 1203s self.msg = "Unable to execute the update the site: {0} ".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s else: 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s self.update_not_needed_sites.append(payload_new.get("type") + ": " + site_name_hierarchy) 1203s except Exception as e: 1203s self.log("Yaml is not available for bulk: {}".format(str(e)), "ERROR") 1203s 1203s return self 1203s 1203s else: 1203s site_params = self.want.get("site_params") 1203s site_type = site_params.get("type") 1203s if self.have.get("site_exists"): 1203s site_name_hierarchy = self.want.get("site_name_hierarchy") 1203s if not self.site_requires_update(): 1203s self.update_not_needed_sites.append(site_type + ": " + site_name_hierarchy) 1203s self.msg = "Site - {0} does not need any update".format(site_name_hierarchy) 1203s self.log(self.msg, "INFO") 1203s else: 1203s try: 1203s site_params["site_id"] = self.have.get("site_id") 1203s self.log("Site parameters prepared for update: {}".format(site_params)) 1203s self.log("Site update process started.", "INFO") 1203s 1203s if site_params['site'].get('building'): 1203s building_details = {} 1203s for key, value in site_params['site']['building'].items(): 1203s if value is not None: 1203s building_details[key] = value 1203s 1203s site_params['site']['building'] = building_details 1203s 1203s response = self.dnac._exec( 1203s family="sites", 1203s function='update_site', 1203s op_modifies=True, 1203s params=site_params, 1203s ) 1203s self.log("Received API response from 'update_site': {0}".format(str(response)), "DEBUG") 1203s 1203s if response and isinstance(response, dict): 1203s execution_id = response.get("executionId") 1203s while True: 1203s execution_details = self.get_execution_details(execution_id) 1203s if execution_details.get("status") == "SUCCESS": 1203s self.result['changed'] = True 1203s site_updated = True 1203s self.updated_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1203s self.log("Site - {0} Updated Successfully".format(site_name_hierarchy), "INFO") 1203s break 1203s elif execution_details.get("bapiError"): 1203s self.msg = "Unable to Update: " + execution_details.get("bapiError") 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s execution_details).check_return_status() 1203s 1203s except Exception as e: 1203s self.msg = "Unexpected error occurred while update: {0}".format(str(e)) 1203s self.log(self.msg, "ERROR") 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s site_name_hierarchy).check_return_status() 1203s 1203s else: 1203s try: 1203s try: 1203s if site_params['site'].get('building'): 1203s building_details = {} 1203s for key, value in site_params['site']['building'].items(): 1203s if value is not None: 1203s building_details[key] = value 1203s 1203s site_params['site']['building'] = building_details 1203s 1203s except Exception as e: 1203s site_type = site_params['type'] 1203s name = site_params['site'][site_type]['name'] 1203s self.log("The site '{0}' is not categorized as a building; no need to filter 'None' values.". 1203s format(name), "INFO") 1203s 1203s site_type = site_params['type'] 1203s parent_name = site_params.get('site').get(site_type).get('parentName') 1203s try: 1203s response = self.get_site_v1(parent_name) 1203s if not response: 1203s self.msg = "Parent name '{0}' does not exist in the Cisco Catalyst Center.".format(parent_name) 1203s self.log(self.msg, "DEBUG") 1203s self.site_absent_list.append(str(parent_name) + " does not exist ") 1203s self.set_operation_result("failed", False, self.msg, "ERROR").check_return_status() 1203s except Exception as e: 1203s self.log("No response received from 'get_site_v1' API for site: {0}".format(parent_name + str(e)), "ERROR") 1203s 1203s response = self.dnac._exec( 1203s family="sites", 1203s function='create_site', 1203s op_modifies=True, 1203s params=site_params, 1203s ) 1203s self.log("Received API response from 'create_site': {0}".format(str(response)), "DEBUG") 1203s 1203s if response and isinstance(response, dict): 1203s executionid = response.get("executionId") 1203s while True: 1203s execution_details = self.get_execution_details(executionid) 1203s if execution_details.get("status") == "SUCCESS": 1203s self.result['changed'] = True 1203s break 1203s elif execution_details.get("bapiError"): 1203s self.msg = "Unable to Create: " + str(execution_details.get("bapiError")) 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s execution_details).check_return_status() 1203s break 1203s 1203s site_exists, current_site = self.site_exists() 1203s if site_exists: 1203s site_name_hierarchy = self.want.get("site_name_hierarchy") 1203s self.created_site_list.append(str(site_type) + ": " + str(site_name_hierarchy)) 1203s self.log("Site '{0}' created successfully".format(site_name_hierarchy), "INFO") 1203s return self 1203s 1203s except Exception as e: 1203s self.msg = "Unexpected error occurred while create: {0}".format(str(e)) 1203s self.log(self.msg, "ERROR") 1203s self.set_operation_result("failed", False, self.msg, "ERROR", 1203s > site_name_hierarchy).check_return_status() 1203s E UnboundLocalError: cannot access local variable 'site_name_hierarchy' where it is not associated with a value 1203s 1203s plugins/modules/site_workflow_manager.py:1900: UnboundLocalError 1203s ------------------------------ Captured log call ------------------------------- 1203s ERROR logger:dnac.py:294 Site: get_site_v1: 619: An error occurred in 'get_sites': 1203s 1203s ERROR logger:dnac.py:294 Site: site_exists: 676: No response received from 'get_site' API for site: Global/japan8888 1203s 1203s ERROR logger:dnac.py:294 Site: get_diff_merged: 1898: Unexpected error occurred while create: 1203s __ TestswimWorkflowManager.test_swim_workflow_manager_playbook_site_not_exist __ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_swim_workflow_manager_playbook_site_not_exist(self): 1203s """ 1203s Test case for swim workflow manager when giving site not exist 1203s This test case checks the behavior of the swim workflow when giving site not exist 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_version='2.3.5.3', 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_site_not_exist 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center" 1203s ) 1203s 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" 1203s E - An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center. 1203s E ? - 1203s E + An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center 1203s 1203s tests/unit/modules/dnac/test_swim_workflow_manager.py:488: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1203s 1203s 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: . 1203s 1203s ERROR logger:dnac.py:294 Swim: site_exists: 671: An exception occurred: Site 'Global/ltts/flor1' does not exist in the Cisco Catalyst Center. 1203s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_swim_image_golden_already_tagged _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_swim_workflow_manager_playbook_swim_image_golden_already_tagged(self): 1203s """ 1203s Test case for swim workflow manager when givingswim image golden already tagged 1203s This test case checks the behavior of the swim workflow when giving swim image golden already tagged 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_version='2.3.5.3', 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_swim_image_golden_already_tagged 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=False) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center" 1203s ) 1203s 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" 1203s E - SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center for the roles - ALL. 1203s E ? --------------------- 1203s E + SWIM Image 'cat9k_iosxe.17.12.02.SPA.bin' already tagged as Golden image in Cisco Catalyst Center 1203s 1203s tests/unit/modules/dnac/test_swim_workflow_manager.py:580: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1203s _ TestswimWorkflowManager.test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6 _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s def site_exists(self, site_name): 1203s """ 1203s Parameters: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s Returns: 1203s tuple: A tuple containing two values: 1203s - site_exists (bool): A boolean indicating whether the site exists (True) or not (False). 1203s - site_id (str or None): The ID of the site if it exists, or None if the site is not found. 1203s Description: 1203s This method checks the existence of a site in the Catalyst Center. If the site is found,it sets 'site_exists' to True, 1203s retrieves the site's ID, and returns both values in a tuple. If the site does not exist, 'site_exists' is set 1203s to False, and 'site_id' is None. If an exception occurs during the site lookup, an exception is raised. 1203s """ 1203s 1203s site_exists = False 1203s site_id = None 1203s response = None 1203s 1203s try: 1203s response = self.get_site(site_name) 1203s if response is None: 1203s > raise ValueError 1203s E ValueError 1203s 1203s plugins/modules/swim_workflow_manager.py:662: ValueError 1203s 1203s During handling of the above exception, another exception occurred: 1203s 1203s self = 1203s 1203s def test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6(self): 1203s """ 1203s Test case for SWIM workflow manager image distribution with DNAC version 2.3.7.6. 1203s 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. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_version='2.3.7.6', 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_image_distribution_successfull_v2_3_7_6 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_swim_workflow_manager.py:418: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/swim_workflow_manager.py:2417: in main 1203s ccc_swims.verify_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/swim_workflow_manager.py:2314: in verify_diff_merged 1203s self.get_have() 1203s plugins/modules/swim_workflow_manager.py:1167: in get_have 1203s (site_exists, site_id) = self.site_exists(site_name) 1203s plugins/modules/swim_workflow_manager.py:672: in site_exists 1203s self.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1203s 1203s WARNING logger:dnac.py:294 Swim: get_diff_distribution: 1892: The SWIM image distribution task could not proceed because no eligible devices were found 1203s 1203s 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'. 1203s 1203s ERROR logger:dnac.py:294 Swim: site_exists: 671: An exception occurred: Site 'Global/LTTS/FLOOR1' does not exist in the Cisco Catalyst Center. 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_1_role _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_create_1_role(self): 1203s """ 1203s Test case for user role workflow manager when creating a role. 1203s 1203s This test case checks the behavior of the role workflow when creating a new role in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_1_role 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:510: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/user_role_workflow_manager.py:3458: in main 1203s ccc_user_role.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_swim_image_golden_tag _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_swim_workflow_manager_playbook_swim_image_golden_tag(self): 1203s """ 1203s Test case for swim workflow manager when givingswim image golden already tagged 1203s This test case checks the behavior of the swim workflow when giving swim image golden tagged 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_version='2.3.5.3', 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_swim_image_golden_tag 1203s ) 1203s ) 1203s result = self.execute_module(changed=True, failed=False) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Tagging image cat9k_iosxe.17.12.02.SPA.bin golden for site Global for family Cisco Catalyst 9300 Switch for device deviceTag ALL successful." 1203s ) 1203s 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.' 1203s 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. 1203s E ? ^^^ 1203s 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. 1203s E ? + + + + ^ +++++++ 1203s 1203s tests/unit/modules/dnac/test_swim_workflow_manager.py:557: AssertionError 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1203s 1203s WARNING logger:dnac.py:294 Swim: get_have: 1154: Site Name not given by user. Using global site. 1203s 1203s WARNING logger:dnac.py:294 Swim: get_have: 1154: Site Name not given by user. Using global site. 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_default_role _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_create_default_role(self): 1203s """ 1203s Test case for user role workflow manager when update is not needed for a role . 1203s 1203s This test case checks the behavior of the role workflow when update is not needed for a role in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_for_creating_default_role 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:787: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/user_role_workflow_manager.py:3458: in main 1203s ccc_user_role.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_role __ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_create_role(self): 1203s """ 1203s Test case for user role workflow manager when creating a role. 1203s 1203s This test case checks the behavior of the role workflow when creating a new role in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_role 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:487: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/user_role_workflow_manager.py:3458: in main 1203s ccc_user_role.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestswimWorkflowManager.test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device(self): 1203s """ 1203s Test case for swim workflow manager when giving untag image as golden and load on device 1203s This test case checks the behavior of the swim workflow when giving untag image as golden and load on device 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_version='2.3.5.3', 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_untag_image_as_golden_and_load_on_device 1203s ) 1203s ) 1203s result = self.execute_module(changed=True, failed=False) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Untagging of image cat9k_iosxe.17.12.02.SPA.bin for site LTTS for family Cisco \ 1203s Catalyst 9000 UADP 8 Port Virtual Switch for device deviceTag ALL successful." 1203s ) 1203s 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.' 1203s 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. 1203s E ? ^^ ------- ^^^^^^^ ^^^ 1203s 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. 1203s E ? ^ +++ + ^ + ^ +++++++ 1203s 1203s tests/unit/modules/dnac/test_swim_workflow_manager.py:442: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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.'} 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_create_user __ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_create_user(self): 1203s """ 1203s Test case for user role workflow manager when creating a user. 1203s 1203s This test case checks the behavior of the user workflow when creating a new user in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_user 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:228: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/user_role_workflow_manager.py:3458: in main 1203s ccc_user_role.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_existing_role _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_delete_existing_role(self): 1203s """ 1203s Test case for user role workflow manager when deleting a role. 1203s 1203s This test case checks the behavior of the role workflow when deleting a role in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="deleted", 1203s config=self.playbook_config_role 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:579: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/user_role_workflow_manager.py:3458: in main 1203s ccc_user_role.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestswimWorkflowManager.test_swim_workflow_playbook_image_distribution_successfull _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_swim_workflow_playbook_image_distribution_successfull(self): 1203s """ 1203s Test case for SWIM workflow manager image distribution. 1203s This test case verifies the successful distribution of an image to all specified devices in the Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_version='2.3.5.3', 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config_verify=True, 1203s config=self.playbook_image_distribution_successfull 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_swim_workflow_manager.py:395: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/swim_workflow_manager.py:2415: in main 1203s ccc_swims.get_diff_state_apply[state](config).check_return_status() 1203s plugins/modules/swim_workflow_manager.py:2110: in get_diff_merged 1203s self.get_diff_distribution().check_return_status() 1203s plugins/modules/swim_workflow_manager.py:1828: in get_diff_distribution 1203s device_uuid_list = self.get_device_uuids(site_name, device_family, device_role, device_series_name) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def get_device_uuids(self, site_name, device_family, device_role, device_series_name=None): 1203s """ 1203s Retrieve a list of device UUIDs based on the specified criteria. 1203s Parameters: 1203s self (object): An instance of a class used for interacting with Cisco Catalyst Center. 1203s site_name (str): The name of the site for which device UUIDs are requested. 1203s device_family (str): The family/type of devices to filter on. 1203s device_role (str): The role of devices to filter on. If None, 'ALL' roles are considered. 1203s device_series_name(str): Specifies the name of the device series. 1203s Returns: 1203s list: A list of device UUIDs that match the specified criteria. 1203s Description: 1203s The function checks the reachability status and role of devices in the given site. 1203s Only devices with "Reachable" status are considered, and filtering is based on the specified 1203s device family and role (if provided). 1203s """ 1203s 1203s device_uuid_list = [] 1203s device_id_list, site_response_list = [], [] 1203s if not site_name: 1203s site_name = "Global" 1203s self.log("Site name not specified; defaulting to 'Global' to fetch all devices under this category", "INFO") 1203s 1203s (site_exists, site_id) = self.site_exists(site_name) 1203s if not site_exists: 1203s self.log("""Site '{0}' is not found in the Cisco Catalyst Center, hence unable to fetch associated 1203s devices.""".format(site_name), "INFO") 1203s return device_uuid_list 1203s 1203s if device_series_name: 1203s if device_series_name.startswith(".*") and device_series_name.endswith(".*"): 1203s self.log("Device series name '{0}' is already in the regex format".format(device_series_name), "INFO") 1203s else: 1203s device_series_name = ".*" + device_series_name + ".*" 1203s 1203s if self.dnac_version <= self.version_2_3_5_3: 1203s site_params = { 1203s "site_id": site_id, 1203s "device_family": device_family 1203s } 1203s 1203s try: 1203s response = self.dnac._exec( 1203s family="sites", 1203s function='get_membership', 1203s op_modifies=True, 1203s params=site_params, 1203s ) 1203s 1203s except Exception as e: 1203s self.log("Unable to fetch the device(s) associated to the site '{0}' due to '{1}'".format(site_name, str(e)), "WARNING") 1203s return device_uuid_list 1203s 1203s self.log("Received API response from 'get_membership': {0}".format(str(response)), "DEBUG") 1203s response = response.get("device") 1203s 1203s > for item in response: 1203s E TypeError: 'NoneType' object is not iterable 1203s 1203s plugins/modules/swim_workflow_manager.py:935: TypeError 1203s ------------------------------ Captured log call ------------------------------- 1203s WARNING logger:dnac.py:294 Swim: get_diff_import: 1350: Error: Details required for importing SWIM image. Please provide the necessary information. 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_existing_user _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_delete_existing_user(self): 1203s """ 1203s Test case for user role workflow manager when deleting a user. 1203s 1203s This test case checks the behavior of the user workflow when deleting a user in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="deleted", 1203s config=self.playbook_config_delete_existing_user 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:297: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/user_role_workflow_manager.py:3458: in main 1203s ccc_user_role.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_non_existing_role _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_delete_non_existing_role(self): 1203s """ 1203s Test case for user role workflow manager when deleting a non existing role. 1203s 1203s This test case checks the behavior of the role workflow when deleting a non existing role in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="deleted", 1203s config=self.playbook_config_role 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Please provide a valid role_name for role deletion" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Please provide a valid role_name for role deletion' 1203s 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. 1203s E + Please provide a valid role_name for role deletion 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:604: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_role_invalid_permission _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_invalid_param_role_invalid_permission(self): 1203s """ 1203s Test case for user workflow manager when invalid role param given. 1203s 1203s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_role_invalid_permission 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get("msg"), 1203s "Invalid permission aaa for assurance resource overall" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid permission aaa for assurance resource overall' 1203s 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. 1203s E + Invalid permission aaa for assurance resource overall 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:743: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_delete_non_existing_user _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_delete_non_existing_user(self): 1203s """ 1203s Test case for user role workflow manager when deleting a non existing user. 1203s 1203s This test case checks the behavior of the user workflow when deleting a non existing user in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="deleted", 1203s config=self.playbook_config_user 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get("msg"), 1203s "Please provide a valid 'username' or 'email' for user deletion" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Please provide a valid 'username' or 'ema[17 chars]tion" 1203s 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. 1203s E + Please provide a valid 'username' or 'email' for user deletion 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:322: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_role_update_invalid_permission _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_invalid_param_role_update_invalid_permission(self): 1203s """ 1203s Test case for user workflow manager when invalid role param given. 1203s 1203s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_role_invalid_permission 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get("msg"), 1203s "Invalid permission aaa for assurance resource overall" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid permission aaa for assurance resource overall' 1203s 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. 1203s E + Invalid permission aaa for assurance resource overall 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:766: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_invalid_param_type_list_missing _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_invalid_param_type_list_missing(self): 1203s """ 1203s Test case for user workflow manager when invalid role param given. 1203s 1203s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_type_list_missing 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get("msg"), 1203s "Configuration is not available in the playbook for validation or user/role details are not type list" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Configuration is not available in the pl[56 chars]list' 1203s 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. 1203s E + Configuration is not available in the playbook for validation or user/role details are not type list 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:720: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate(self): 1203s """ 1203s Test case for user workflow manager when invalid role param given. 1203s 1203s This test case checks the behavior of the user workflow when invalid role param given in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_rolename_not_correct_formate 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get("msg"), 1203s "Invalid parameters in playbook config: role_name: 'Test_Role_1 ' must only contain letters, numbers, underscores \ 1203s and hyphens and should not contain spaces or other special characters." 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameters in playbook config: ro[138 chars]ers." 1203s 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. 1203s 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. 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:696: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_not_type_list _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_role_invalid_param_not_type_list(self): 1203s """ 1203s Test case for user role workflow manager when invalid role param given. 1203s 1203s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_role_not_type_list 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Invalid parameter(s) found in playbook: {'overall': 'read'} : is not a valid list" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameter(s) found in playbook: {[36 chars]list" 1203s 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. 1203s E + Invalid parameter(s) found in playbook: {'overall': 'read'} : is not a valid list 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:650: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_invalid_param_rolename_not_present _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_role_invalid_param_rolename_not_present(self): 1203s """ 1203s Test case for user role workflow manager when invalid role param given. 1203s 1203s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_rolename_not_present 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Configuration params like 'username' or '[50 chars]book" 1203s 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. 1203s E + Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:627: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_param_with_all_permision_deny _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_role_param_with_all_permision_deny(self): 1203s """ 1203s Test case for user role workflow manager when invalid role param given. 1203s 1203s This test case checks the behavior of the role workflow when invalid role param given in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_with_all_permision_deny 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "An error occurred while creating the role without access-level parameters and permissions" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'An error occurred while creating the rol[45 chars]ions' 1203s 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. 1203s E + An error occurred while creating the role without access-level parameters and permissions 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:673: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_update_not_needed _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_role_update_not_needed(self): 1203s """ 1203s Test case for user role workflow manager when update is not needed for a role . 1203s 1203s This test case checks the behavior of the role workflow when update is not needed for a role in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_role 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=False) 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:556: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/user_role_workflow_manager.py:3458: in main 1203s ccc_user_role.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_role_update_needed _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_role_update_needed(self): 1203s """ 1203s Test case for user role workflow manager when update for a role is needed. 1203s 1203s This test case checks the behavior of the role workflow when updating a existing role in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_role 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:533: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/user_role_workflow_manager.py:3458: in main 1203s ccc_user_role.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_not_correct_formate _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_user_invalid_param_not_correct_formate(self): 1203s """ 1203s Test case for user workflow manager when invalid user param given. 1203s 1203s This test case checks the behavior of the user workflow when invalid user param given in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_username_not_correct_formate 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get("msg"), 1203s "Invalid parameters in playbook config: first_name: 'ajith ' must only contain letters, \ 1203s numbers, underscores and hyphens and should not contain spaces or other \ 1203s special characters., last_name: 'andrew ' must only contain letters, numbers, underscores \ 1203s and hyphens and should not contain spaces or other special characters., email: Invalid email format for 'email': ajith.andrewexample.com, \ 1203s password: 'Password' does not meet complexity requirements for password: \ 1203s Ajith123, username: 'ajithandrewj ' must only contain letters, numbers, underscores \ 1203s and hyphens and should not contain spaces or other special characters." 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Invalid parameters in playbook config: fi[569 chars]ers." 1203s E Diff is 981 characters long. Set self.maxDiff to None to see it. 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:391: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param(self): 1203s """ 1203s Test case for user workflow manager when invalid user param given. 1203s 1203s This test case checks the behavior of the user workflow when invalid user param given in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_mandatory_field_not_present 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get("msg"), 1203s "Mandatory field not present: An error occurred while creating the user" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Mandatory field not present: An error oc[26 chars]user' 1203s 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. 1203s E + Mandatory field not present: An error occurred while creating the user 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:345: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_not_type_list _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_user_invalid_param_not_type_list(self): 1203s """ 1203s Test case for user role workflow manager when invalid user param given. 1203s 1203s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_user_rolelist_not_type_list 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "Invalid parameter(s) found in playbook: Super-Admin-Role : is not a valid list" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not[316 chars]les." != 'Invalid parameter(s) found in playbook: [34 chars]list' 1203s 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. 1203s E + Invalid parameter(s) found in playbook: Super-Admin-Role : is not a valid list 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:420: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_rolelist_not_found _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_user_invalid_param_rolelist_not_found(self): 1203s """ 1203s Test case for user role workflow manager when invalid user param given. 1203s 1203s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_user_invalid_param_rolelist_not_found 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name" 1203s ) 1203s 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' 1203s 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. 1203s E + The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:443: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found(self): 1203s """ 1203s Test case for user role workflow manager when invalid user param given. 1203s 1203s This test case checks the behavior of the role workflow when invalid user param given in the specified Cisco Calyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_user_invalid_param_rolelist_not_found 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get('msg'), 1203s "The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name" 1203s ) 1203s 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' 1203s 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. 1203s E + The role name in the user details role_list is not present in the Cisco Catalyst Center, Please provide a valid role name 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:466: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_invalid_username_email_not_present_param _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_user_invalid_username_email_not_present_param(self): 1203s """ 1203s Test case for user workflow manager when invalid user param given. 1203s 1203s This test case checks the behavior of the user workflow when invalid user param given in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_invalid_param_username_email_not_present 1203s ) 1203s ) 1203s result = self.execute_module(changed=False, failed=True) 1203s print(result) 1203s > self.assertEqual( 1203s result.get("msg"), 1203s "Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook" 1203s ) 1203s E AssertionError: "The specified version '2.2.3.3' does not [315 chars]les." != "Configuration params like 'username' or '[50 chars]book" 1203s 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. 1203s E + Configuration params like 'username' or 'email' or 'role_name' is not available in the playbook 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:368: AssertionError 1203s ----------------------------- Captured stdout call ----------------------------- 1203s {'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} 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_update_needed _ 1203s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_user_update_needed(self): 1203s """ 1203s Test case for user role workflow manager when updating a user. 1203s 1203s This test case checks the behavior of the user workflow when updating a user in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_user 1203s ) 1203s ) 1203s > result = self.execute_module(changed=True, failed=False) 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:251: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/user_role_workflow_manager.py:3458: in main 1203s ccc_user_role.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s _ TestDnacUserRoleWorkflowManager.test_user_role_workflow_manager_user_update_not_needed _ 1203s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1203s 1203s self = 1203s 1203s def test_user_role_workflow_manager_user_update_not_needed(self): 1203s """ 1203s Test case for user role workflow manager when user update not needed. 1203s 1203s This test case checks the behavior of the user workflow when user update not needed in the specified Cisco Catalyst Center. 1203s """ 1203s set_module_args( 1203s dict( 1203s dnac_host="1.1.1.1", 1203s dnac_username="dummy", 1203s dnac_password="dummy", 1203s dnac_log=True, 1203s state="merged", 1203s config=self.playbook_config_user 1203s ) 1203s ) 1203s > result = self.execute_module(changed=False, failed=False) 1203s 1203s tests/unit/modules/dnac/test_user_role_workflow_manager.py:274: 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s tests/unit/modules/dnac/dnac_module.py:110: in execute_module 1203s result = self.changed(changed) 1203s tests/unit/modules/dnac/dnac_module.py:133: in changed 1203s self.module.main() 1203s plugins/modules/user_role_workflow_manager.py:3458: in main 1203s ccc_user_role.check_return_status() 1203s plugins/module_utils/dnac.py:307: in check_return_status 1203s self.module.fail_json(msg=self.msg, response=self.result.get('response', [])) 1203s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1203s 1203s def fail_json(*args, **kwargs): 1203s kwargs["failed"] = True 1203s > raise AnsibleFailJson(kwargs) 1203s 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} 1203s 1203s ../../ansible/netcommon/tests/unit/modules/utils.py:40: AnsibleFailJson 1203s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml - 1203s =========================== short test summary info ============================ 1203s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1203s ERROR tests/unit/modules/dnac/test_discovery_intent.py::TestDnacDiscoveryIntent 1203s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1203s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1203s ERROR tests/unit/modules/dnac/test_pnp_intent.py::TestDnacPnPIntent - TypeErr... 1203s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1203s ERROR tests/unit/modules/dnac/test_site_intent.py::TestDnacSiteIntent - TypeE... 1203s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1203s ERROR tests/unit/modules/dnac/test_swim_intent.py::TestDnacSwimIntent - TypeE... 1203s ERROR tests/unit/modules/dnac/test_template_intent.py::TestDnacTemplateIntent 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_null_sync_status 1203s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_negative_config_input 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_update_verify 1203s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_provision_device 1203s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_add_existing_devices 1203s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_add_udf 1203s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_del_provisioned_device_2353 1203s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_a_device 1203s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_provision_old_version 1203s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_device_udf 1203s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_delete_provisioned_device 1203s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_some_error_data_update_accesspoint 1203s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_prov_device_2353 1203s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_provision_device 1203s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_provision_failed_for_site 1203s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_accesspoint_workflow_manager_task_error_update_accesspoint 1203s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_get_site_device 1203s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_site_exists 1203s FAILED tests/unit/modules/dnac/test_accesspoint_workflow_manager.py::TestDnacAccesspointWorkflow::test_invalid_wlc_device 1203s FAILED tests/unit/modules/dnac/test_inventory_workflow_manager.py::TestDnacInventoryWorkflow::test_inventory_workflow_manager_playbook_update_mgmt_ip 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_already_sync_cred 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_categories_iplist 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_apply_sync 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_1 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_2 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_3 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_assign_cred_1 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_4 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_assign_cred_2 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_failure_5 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_creation 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_iplist_site 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_deletion 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_1 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_2 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site_response 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_3 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_4 1203s FAILED tests/unit/modules/dnac/test_device_credential_workflow_manager.py::TestDnacCredentialWorkflow::test_device_credentials_workflow_manager_invalid_site_response_2 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_5 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_aaa_get 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_run_compliance_with_site_failure_6 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_banner_get 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_dhcp_gett 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_dns_get 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_ntp_get 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_scale_run_compliance 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_site_not_exist 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_failure_1 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_telemetry_get 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_failure_2 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_timezone_get 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_site 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_aaa 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_iplist_site_nr 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_banner 1203s FAILED tests/unit/modules/dnac/test_network_compliance_workflow_manager.py::TestNetworkCompliance::test_sync_device_config_site 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_Updation_not_req 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_creation 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_dns 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_global_pool_deletion 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_ntp 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_telemetry 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_exception_update_timezone 1203s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_assign_wired_device_to_site 1203s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_del_provision_device 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_mandatory_aaa_param 1203s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_force_provision_device 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_network_not_need_update 1203s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_provision_device 1203s FAILED tests/unit/modules/dnac/test_provision_workflow_manager.py::TestDnacProvisionWorkflow::test_provision_workflow_manager_playbook_wireless_provision 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_null_network_params 1203s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_failure_unmark_failure 1203s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_failure_unmark_success 1203s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_deploy_workflow_success 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_network_update 1203s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_mark_device_failure 1203s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_mark_device_for_replacement_exception 1203s FAILED tests/unit/modules/dnac/test_rma_workflow_manager.py::TestDnacRmaIntent::test_rma_workflow_manager_replacement_device_not_found 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_not_verified 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_reserve_pool_creation 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_bulk_site 1203s FAILED tests/unit/modules/dnac/test_network_settings_workflow_manager.py::TestDnacNetworkSettings::test_Network_settings_workflow_manager_reserve_pool_deletion 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_site 1203s FAILED tests/unit/modules/dnac/test_pnp_workflow_manager.py::TestDnacPnpWorkflow::test_pnp_workflow_manager_claim_switch 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_create_site_bulk_invalid 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_invalid_delete_config 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_delete_a_new_site 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_invalid_delete_site 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_delete_a_site 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_a_site 1203s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_activate_image 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_not_needed_site 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_update_site 1203s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_image_distribution_failed 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_upload_floor_map 1203s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_import_cco_image 1203s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_import_image_already_exist 1203s FAILED tests/unit/modules/dnac/test_site_workflow_manager.py::TestDnacSiteWorkflow::test_Site_workflow_manager_verify_diff_merged_site 1203s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_site_not_exist 1203s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_swim_image_golden_already_tagged 1203s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_playbook_image_distribution_successfull_v2_3_7_6 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_1_role 1203s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_swim_image_golden_tag 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_default_role 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_role 1203s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_manager_playbook_untag_image_as_golden_and_load_on_device 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_create_user 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_existing_role 1203s FAILED tests/unit/modules/dnac/test_swim_workflow_manager.py::TestswimWorkflowManager::test_swim_workflow_playbook_image_distribution_successfull 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_existing_user 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_non_existing_role 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_role_invalid_permission 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_delete_non_existing_user 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_role_update_invalid_permission 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_invalid_param_type_list_missing 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_rolename_not_correct_formate 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_not_type_list 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_invalid_param_rolename_not_present 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_param_with_all_permision_deny 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_update_not_needed 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_role_update_needed 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_not_correct_formate 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_mandatory_field_not_present_param 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_not_type_list 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_rolelist_not_found 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_param_update_rolelist_not_found 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_invalid_username_email_not_present_param 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_update_needed 1203s FAILED tests/unit/modules/dnac/test_user_role_workflow_manager.py::TestDnacUserRoleWorkflowManager::test_user_role_workflow_manager_user_update_not_needed 1203s ================== 134 failed, 33 passed, 10 errors in 14.35s ================== 1203s ## return code is 1 1203s 1203s 1203s 1203s ############################################################ 1203s ############################################################ 1203s #### Running FLAKY tests in ansible_collections/community/dns 1203s ############################################################ 1203s ############################################################ 1203s Unit test modules with Python 3.13 1204s ============================= test session starts ============================== 1204s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1204s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns 1204s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1204s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1204s created: 2/2 workers 1204s 2 workers [0 items] 1204s 1204s 1204s ==================================== ERRORS ==================================== 1204s ____ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record.py ____ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hetzner_dns_record.py:9: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_info.py __ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_info.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hetzner_dns_record_info.py:9: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s __ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_set.py __ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_set.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hetzner_dns_record_set.py:9: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py _ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py:9: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s _ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_record_sets.py __ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_record_sets.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hetzner_dns_record_sets.py:9: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s __ ERROR collecting tests/unit/plugins/modules/test_hetzner_dns_zone_info.py ___ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hetzner_dns_zone_info.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hetzner_dns_zone_info.py:9: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s ___ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record.py ____ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hosttech_dns_record.py:11: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_info.py _ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_info.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hosttech_dns_record_info.py:11: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_set.py __ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_set.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hosttech_dns_record_set.py:11: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py _ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py:11: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import patch 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s _ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_record_sets.py _ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_record_sets.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hosttech_dns_record_sets.py:11: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s __ ERROR collecting tests/unit/plugins/modules/test_hosttech_dns_zone_info.py __ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_hosttech_dns_zone_info.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_hosttech_dns_zone_info.py:11: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s _____ ERROR collecting tests/unit/plugins/modules/test_nameserver_info.py ______ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_nameserver_info.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_nameserver_info.py:14: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s __ ERROR collecting tests/unit/plugins/modules/test_nameserver_record_info.py __ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_nameserver_record_info.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_nameserver_record_info.py:14: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s _______ ERROR collecting tests/unit/plugins/modules/test_wait_for_txt.py _______ 1204s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/unit/plugins/modules/test_wait_for_txt.py'. 1204s Hint: make sure your test modules/packages have valid Python names. 1204s Traceback: 1204s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1204s return _bootstrap._gcd_import(name[level:], package, level) 1204s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1204s assertion_rewriting_hook.exec_module(module) 1204s tests/unit/plugins/modules/test_wait_for_txt.py:14: in 1204s from ansible_collections.community.internal_test_tools.tests.unit.compat.mock import MagicMock, patch 1204s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1204s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/output/junit/python3.13-modules-units.xml - 1204s =========================== short test summary info ============================ 1204s ERROR tests/unit/plugins/modules/test_hetzner_dns_record.py 1204s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_info.py 1204s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_set.py 1204s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_set_info.py 1204s ERROR tests/unit/plugins/modules/test_hetzner_dns_record_sets.py 1204s ERROR tests/unit/plugins/modules/test_hetzner_dns_zone_info.py 1204s ERROR tests/unit/plugins/modules/test_hosttech_dns_record.py 1204s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_info.py 1204s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_set.py 1204s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_set_info.py 1204s ERROR tests/unit/plugins/modules/test_hosttech_dns_record_sets.py 1204s ERROR tests/unit/plugins/modules/test_hosttech_dns_zone_info.py 1204s ERROR tests/unit/plugins/modules/test_nameserver_info.py 1204s ERROR tests/unit/plugins/modules/test_nameserver_record_info.py 1204s ERROR tests/unit/plugins/modules/test_wait_for_txt.py 1204s ============================== 15 errors in 1.01s ============================== 1204s 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.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1204s ## return code is 1 1204s 1204s 1204s 1204s ############################################################ 1204s ############################################################ 1204s #### Running FLAKY tests in ansible_collections/community/general 1204s ############################################################ 1204s ############################################################ 1204s Unit test modules with Python 3.13 1209s ============================= test session starts ============================== 1209s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1209s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/general 1209s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1209s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1209s created: 2/2 workers 1209s 2 workers [1282 items] 1209s 1210s ...F..F.FFFFF..F........................................................ [ 5%] 1210s ........................................................................ [ 11%] 1211s ........................................................................ [ 16%] 1212s ...........................................................s............ [ 22%] 1213s ...............................s.......................FFFFFF........... [ 28%] 1214s ........................................................................ [ 33%] 1214s ........................................................................ [ 39%] 1215s ........................................................................ [ 44%] 1216s ........................................................................ [ 50%] 1217s ........................................................................ [ 56%] 1218s ........................................................................ [ 61%] 1219s ........................................................................ [ 67%] 1220s ..........................................s............s........sss..... [ 73%] 1221s ........................................................................ [ 78%] 1261s ........................................................................ [ 84%] 1262s ........................................................................ [ 89%] 1263s ........................................................................ [ 95%] 1282s .......................................................... [100%] 1282s ==================================== ERRORS ==================================== 1282s _______ ERROR collecting tests/unit/plugins/modules/test_jenkins_node.py _______ 1282s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/general/tests/unit/plugins/modules/test_jenkins_node.py'. 1282s Hint: make sure your test modules/packages have valid Python names. 1282s Traceback: 1282s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1282s return _bootstrap._gcd_import(name[level:], package, level) 1282s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1282s assertion_rewriting_hook.exec_module(module) 1282s tests/unit/plugins/modules/test_jenkins_node.py:8: in 1282s import jenkins 1282s E ModuleNotFoundError: No module named 'jenkins' 1282s _______ ERROR collecting tests/unit/plugins/modules/test_nomad_token.py ________ 1282s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/general/tests/unit/plugins/modules/test_nomad_token.py'. 1282s Hint: make sure your test modules/packages have valid Python names. 1282s Traceback: 1282s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1282s return _bootstrap._gcd_import(name[level:], package, level) 1282s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1282s assertion_rewriting_hook.exec_module(module) 1282s tests/unit/plugins/modules/test_nomad_token.py:11: in 1282s import nomad 1282s E ModuleNotFoundError: No module named 'nomad' 1282s =================================== FAILURES =================================== 1282s ___________________ TestGithubRepo.test_create_new_org_repo ____________________ 1282s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s self = 1282s 1282s @with_httmock(get_orgs_mock) 1282s @with_httmock(get_repo_notfound_mock) 1282s @with_httmock(create_new_org_repo_mock) 1282s def test_create_new_org_repo(self): 1282s > result = github_repo.run_module({ 1282s 'username': None, 1282s 'password': None, 1282s "access_token": "mytoken", 1282s "organization": "MyOrganization", 1282s "name": "myrepo", 1282s "description": "Just for fun", 1282s "private": False, 1282s "state": "present", 1282s "api_url": "https://api.github.com", 1282s "force_defaults": False, 1282s }) 1282s 1282s tests/unit/plugins/modules/test_github_repo.py:179: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s plugins/modules/github_repo.py:222: in run_module 1282s gh = authenticate( 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s username = None, password = None, access_token = 'mytoken' 1282s api_url = 'https://api.github.com' 1282s 1282s def authenticate(username=None, password=None, access_token=None, api_url=None): 1282s if not api_url: 1282s return None 1282s 1282s if access_token: 1282s > return Github(base_url=api_url, login_or_token=access_token) 1282s E NameError: name 'Github' is not defined 1282s 1282s plugins/modules/github_repo.py:150: NameError 1282s ______________ TestGithubRepo.test_create_new_org_repo_incomplete ______________ 1282s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s self = 1282s 1282s @with_httmock(get_orgs_mock) 1282s @with_httmock(get_repo_notfound_mock) 1282s @with_httmock(create_new_org_repo_mock) 1282s def test_create_new_org_repo_incomplete(self): 1282s > result = github_repo.run_module({ 1282s 'username': None, 1282s 'password': None, 1282s "access_token": "mytoken", 1282s "organization": "MyOrganization", 1282s "name": "myrepo", 1282s "description": None, 1282s "private": None, 1282s "state": "present", 1282s "api_url": "https://api.github.com", 1282s "force_defaults": False, 1282s }) 1282s 1282s tests/unit/plugins/modules/test_github_repo.py:200: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s plugins/modules/github_repo.py:222: in run_module 1282s gh = authenticate( 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s username = None, password = None, access_token = 'mytoken' 1282s api_url = 'https://api.github.com' 1282s 1282s def authenticate(username=None, password=None, access_token=None, api_url=None): 1282s if not api_url: 1282s return None 1282s 1282s if access_token: 1282s > return Github(base_url=api_url, login_or_token=access_token) 1282s E NameError: name 'Github' is not defined 1282s 1282s plugins/modules/github_repo.py:150: NameError 1282s ___________________ TestGithubRepo.test_create_new_user_repo ___________________ 1282s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s self = 1282s 1282s @with_httmock(get_user_mock) 1282s @with_httmock(get_repo_notfound_mock) 1282s @with_httmock(create_new_user_repo_mock) 1282s def test_create_new_user_repo(self): 1282s > result = github_repo.run_module({ 1282s 'username': None, 1282s 'password': None, 1282s "access_token": "mytoken", 1282s "organization": None, 1282s "name": "myrepo", 1282s "description": "Just for fun", 1282s "private": True, 1282s "state": "present", 1282s "api_url": "https://api.github.com", 1282s "force_defaults": False, 1282s }) 1282s 1282s tests/unit/plugins/modules/test_github_repo.py:221: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s plugins/modules/github_repo.py:222: in run_module 1282s gh = authenticate( 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s username = None, password = None, access_token = 'mytoken' 1282s api_url = 'https://api.github.com' 1282s 1282s def authenticate(username=None, password=None, access_token=None, api_url=None): 1282s if not api_url: 1282s return None 1282s 1282s if access_token: 1282s > return Github(base_url=api_url, login_or_token=access_token) 1282s E NameError: name 'Github' is not defined 1282s 1282s plugins/modules/github_repo.py:150: NameError 1282s _____________________ TestGithubRepo.test_delete_org_repo ______________________ 1282s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s self = 1282s 1282s @with_httmock(get_orgs_mock) 1282s @with_httmock(get_repo_mock) 1282s @with_httmock(delete_repo_mock) 1282s def test_delete_org_repo(self): 1282s > result = github_repo.run_module({ 1282s 'username': None, 1282s 'password': None, 1282s "access_token": "mytoken", 1282s "organization": "MyOrganization", 1282s "name": "myrepo", 1282s "description": "Just for fun", 1282s "private": False, 1282s "state": "absent", 1282s "api_url": "https://api.github.com", 1282s "force_defaults": False, 1282s }) 1282s 1282s tests/unit/plugins/modules/test_github_repo.py:278: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s plugins/modules/github_repo.py:222: in run_module 1282s gh = authenticate( 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s username = None, password = None, access_token = 'mytoken' 1282s api_url = 'https://api.github.com' 1282s 1282s def authenticate(username=None, password=None, access_token=None, api_url=None): 1282s if not api_url: 1282s return None 1282s 1282s if access_token: 1282s > return Github(base_url=api_url, login_or_token=access_token) 1282s E NameError: name 'Github' is not defined 1282s 1282s plugins/modules/github_repo.py:150: NameError 1282s _________________ TestGithubRepo.test_delete_org_repo_notfound _________________ 1282s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s self = 1282s 1282s @with_httmock(get_orgs_mock) 1282s @with_httmock(get_repo_notfound_mock) 1282s @with_httmock(delete_repo_notfound_mock) 1282s def test_delete_org_repo_notfound(self): 1282s > result = github_repo.run_module({ 1282s 'username': None, 1282s 'password': None, 1282s "access_token": "mytoken", 1282s "organization": "MyOrganization", 1282s "name": "myrepo", 1282s "description": "Just for fun", 1282s "private": True, 1282s "state": "absent", 1282s "api_url": "https://api.github.com", 1282s "force_defaults": False, 1282s }) 1282s 1282s tests/unit/plugins/modules/test_github_repo.py:314: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s plugins/modules/github_repo.py:222: in run_module 1282s gh = authenticate( 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s username = None, password = None, access_token = 'mytoken' 1282s api_url = 'https://api.github.com' 1282s 1282s def authenticate(username=None, password=None, access_token=None, api_url=None): 1282s if not api_url: 1282s return None 1282s 1282s if access_token: 1282s > return Github(base_url=api_url, login_or_token=access_token) 1282s E NameError: name 'Github' is not defined 1282s 1282s plugins/modules/github_repo.py:150: NameError 1282s _____________________ TestGithubRepo.test_delete_user_repo _____________________ 1282s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s self = 1282s 1282s @with_httmock(get_user_mock) 1282s @with_httmock(get_repo_mock) 1282s @with_httmock(delete_repo_mock) 1282s def test_delete_user_repo(self): 1282s > result = github_repo.run_module({ 1282s 'username': None, 1282s 'password': None, 1282s "access_token": "mytoken", 1282s "organization": None, 1282s "name": "myrepo", 1282s "description": "Just for fun", 1282s "private": False, 1282s "state": "absent", 1282s "api_url": "https://api.github.com", 1282s "force_defaults": False, 1282s }) 1282s 1282s tests/unit/plugins/modules/test_github_repo.py:296: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s plugins/modules/github_repo.py:222: in run_module 1282s gh = authenticate( 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s username = None, password = None, access_token = 'mytoken' 1282s api_url = 'https://api.github.com' 1282s 1282s def authenticate(username=None, password=None, access_token=None, api_url=None): 1282s if not api_url: 1282s return None 1282s 1282s if access_token: 1282s > return Github(base_url=api_url, login_or_token=access_token) 1282s E NameError: name 'Github' is not defined 1282s 1282s plugins/modules/github_repo.py:150: NameError 1282s __________ TestGithubRepo.test_idempotency_existing_org_private_repo ___________ 1282s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s self = 1282s 1282s @with_httmock(get_orgs_mock) 1282s @with_httmock(get_private_repo_mock) 1282s def test_idempotency_existing_org_private_repo(self): 1282s > result = github_repo.run_module({ 1282s 'username': None, 1282s 'password': None, 1282s "access_token": "mytoken", 1282s "organization": "MyOrganization", 1282s "name": "myrepo", 1282s "description": None, 1282s "private": None, 1282s "state": "present", 1282s "api_url": "https://api.github.com", 1282s "force_defaults": False, 1282s }) 1282s 1282s tests/unit/plugins/modules/test_github_repo.py:258: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s plugins/modules/github_repo.py:222: in run_module 1282s gh = authenticate( 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s username = None, password = None, access_token = 'mytoken' 1282s api_url = 'https://api.github.com' 1282s 1282s def authenticate(username=None, password=None, access_token=None, api_url=None): 1282s if not api_url: 1282s return None 1282s 1282s if access_token: 1282s > return Github(base_url=api_url, login_or_token=access_token) 1282s E NameError: name 'Github' is not defined 1282s 1282s plugins/modules/github_repo.py:150: NameError 1282s _________________ TestGithubRepo.test_patch_existing_org_repo __________________ 1282s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s self = 1282s 1282s @with_httmock(get_orgs_mock) 1282s @with_httmock(get_repo_mock) 1282s @with_httmock(patch_repo_mock) 1282s def test_patch_existing_org_repo(self): 1282s > result = github_repo.run_module({ 1282s 'username': None, 1282s 'password': None, 1282s "access_token": "mytoken", 1282s "organization": "MyOrganization", 1282s "name": "myrepo", 1282s "description": "Just for fun", 1282s "private": True, 1282s "state": "present", 1282s "api_url": "https://api.github.com", 1282s "force_defaults": False, 1282s }) 1282s 1282s tests/unit/plugins/modules/test_github_repo.py:240: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s plugins/modules/github_repo.py:222: in run_module 1282s gh = authenticate( 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s username = None, password = None, access_token = 'mytoken' 1282s api_url = 'https://api.github.com' 1282s 1282s def authenticate(username=None, password=None, access_token=None, api_url=None): 1282s if not api_url: 1282s return None 1282s 1282s if access_token: 1282s > return Github(base_url=api_url, login_or_token=access_token) 1282s E NameError: name 'Github' is not defined 1282s 1282s plugins/modules/github_repo.py:150: NameError 1282s _________________ test_find_version_by_spec[None-(,3.9]-3.8.2] _________________ 1282s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s mocker = 1282s version_by_spec = '(,3.9]', version_choosed = '3.8.2' 1282s 1282s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1282s (None, "(,3.9]", "3.8.2"), 1282s (None, "3.0", "3.8.2"), 1282s (None, "[3.7]", "3.7"), 1282s (None, "[4.10, 4.12]", "4.12"), 1282s (None, "[4.10, 4.12)", "4.11"), 1282s (None, "[2.0,)", "4.13-beta-2"), 1282s ]) 1282s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1282s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1282s _getContent.return_value = maven_metadata_example 1282s 1282s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1282s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1282s 1282s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1282s 1282s tests/unit/plugins/modules/test_maven_artifact.py:71: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s self = 1282s artifact = 1282s 1282s def find_version_by_spec(self, artifact): 1282s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1282s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1282s xml = etree.fromstring(content) 1282s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1282s versions = [] 1282s for version in original_versions: 1282s try: 1282s > versions.append(Version.coerce(version)) 1282s E NameError: name 'Version' is not defined 1282s 1282s plugins/modules/maven_artifact.py:407: NameError 1282s __________________ test_find_version_by_spec[None-3.0-3.8.2] ___________________ 1282s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s mocker = 1282s version_by_spec = '3.0', version_choosed = '3.8.2' 1282s 1282s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1282s (None, "(,3.9]", "3.8.2"), 1282s (None, "3.0", "3.8.2"), 1282s (None, "[3.7]", "3.7"), 1282s (None, "[4.10, 4.12]", "4.12"), 1282s (None, "[4.10, 4.12)", "4.11"), 1282s (None, "[2.0,)", "4.13-beta-2"), 1282s ]) 1282s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1282s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1282s _getContent.return_value = maven_metadata_example 1282s 1282s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1282s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1282s 1282s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1282s 1282s tests/unit/plugins/modules/test_maven_artifact.py:71: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s self = 1282s artifact = 1282s 1282s def find_version_by_spec(self, artifact): 1282s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1282s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1282s xml = etree.fromstring(content) 1282s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1282s versions = [] 1282s for version in original_versions: 1282s try: 1282s > versions.append(Version.coerce(version)) 1282s E NameError: name 'Version' is not defined 1282s 1282s plugins/modules/maven_artifact.py:407: NameError 1282s __________________ test_find_version_by_spec[None-[3.7]-3.7] ___________________ 1282s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s mocker = 1282s version_by_spec = '[3.7]', version_choosed = '3.7' 1282s 1282s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1282s (None, "(,3.9]", "3.8.2"), 1282s (None, "3.0", "3.8.2"), 1282s (None, "[3.7]", "3.7"), 1282s (None, "[4.10, 4.12]", "4.12"), 1282s (None, "[4.10, 4.12)", "4.11"), 1282s (None, "[2.0,)", "4.13-beta-2"), 1282s ]) 1282s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1282s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1282s _getContent.return_value = maven_metadata_example 1282s 1282s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1282s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1282s 1282s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1282s 1282s tests/unit/plugins/modules/test_maven_artifact.py:71: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s self = 1282s artifact = 1282s 1282s def find_version_by_spec(self, artifact): 1282s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1282s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1282s xml = etree.fromstring(content) 1282s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1282s versions = [] 1282s for version in original_versions: 1282s try: 1282s > versions.append(Version.coerce(version)) 1282s E NameError: name 'Version' is not defined 1282s 1282s plugins/modules/maven_artifact.py:407: NameError 1282s ______________ test_find_version_by_spec[None-[4.10, 4.12]-4.12] _______________ 1282s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s mocker = 1282s version_by_spec = '[4.10, 4.12]', version_choosed = '4.12' 1282s 1282s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1282s (None, "(,3.9]", "3.8.2"), 1282s (None, "3.0", "3.8.2"), 1282s (None, "[3.7]", "3.7"), 1282s (None, "[4.10, 4.12]", "4.12"), 1282s (None, "[4.10, 4.12)", "4.11"), 1282s (None, "[2.0,)", "4.13-beta-2"), 1282s ]) 1282s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1282s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1282s _getContent.return_value = maven_metadata_example 1282s 1282s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1282s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1282s 1282s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1282s 1282s tests/unit/plugins/modules/test_maven_artifact.py:71: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s self = 1282s artifact = 1282s 1282s def find_version_by_spec(self, artifact): 1282s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1282s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1282s xml = etree.fromstring(content) 1282s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1282s versions = [] 1282s for version in original_versions: 1282s try: 1282s > versions.append(Version.coerce(version)) 1282s E NameError: name 'Version' is not defined 1282s 1282s plugins/modules/maven_artifact.py:407: NameError 1282s ______________ test_find_version_by_spec[None-[4.10, 4.12)-4.11] _______________ 1282s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s mocker = 1282s version_by_spec = '[4.10, 4.12)', version_choosed = '4.11' 1282s 1282s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1282s (None, "(,3.9]", "3.8.2"), 1282s (None, "3.0", "3.8.2"), 1282s (None, "[3.7]", "3.7"), 1282s (None, "[4.10, 4.12]", "4.12"), 1282s (None, "[4.10, 4.12)", "4.11"), 1282s (None, "[2.0,)", "4.13-beta-2"), 1282s ]) 1282s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1282s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1282s _getContent.return_value = maven_metadata_example 1282s 1282s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1282s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1282s 1282s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1282s 1282s tests/unit/plugins/modules/test_maven_artifact.py:71: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s self = 1282s artifact = 1282s 1282s def find_version_by_spec(self, artifact): 1282s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1282s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1282s xml = etree.fromstring(content) 1282s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1282s versions = [] 1282s for version in original_versions: 1282s try: 1282s > versions.append(Version.coerce(version)) 1282s E NameError: name 'Version' is not defined 1282s 1282s plugins/modules/maven_artifact.py:407: NameError 1282s ______________ test_find_version_by_spec[None-[2.0,)-4.13-beta-2] ______________ 1282s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1282s 1282s mocker = 1282s version_by_spec = '[2.0,)', version_choosed = '4.13-beta-2' 1282s 1282s @pytest.mark.parametrize('patch_ansible_module, version_by_spec, version_choosed', [ 1282s (None, "(,3.9]", "3.8.2"), 1282s (None, "3.0", "3.8.2"), 1282s (None, "[3.7]", "3.7"), 1282s (None, "[4.10, 4.12]", "4.12"), 1282s (None, "[4.10, 4.12)", "4.11"), 1282s (None, "[2.0,)", "4.13-beta-2"), 1282s ]) 1282s def test_find_version_by_spec(mocker, version_by_spec, version_choosed): 1282s _getContent = mocker.patch('ansible_collections.community.general.plugins.modules.maven_artifact.MavenDownloader._getContent') 1282s _getContent.return_value = maven_metadata_example 1282s 1282s artifact = maven_artifact.Artifact("junit", "junit", None, version_by_spec, "jar") 1282s mvn_downloader = maven_artifact.MavenDownloader(basic.AnsibleModule, "https://repo1.maven.org/maven2") 1282s 1282s > assert mvn_downloader.find_version_by_spec(artifact) == version_choosed 1282s 1282s tests/unit/plugins/modules/test_maven_artifact.py:71: 1282s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1282s 1282s self = 1282s artifact = 1282s 1282s def find_version_by_spec(self, artifact): 1282s path = "/%s/%s" % (artifact.path(False), self.metadata_file_name) 1282s content = self._getContent(self.base + path, "Failed to retrieve the maven metadata file: " + path) 1282s xml = etree.fromstring(content) 1282s original_versions = xml.xpath("/metadata/versioning/versions/version/text()") 1282s versions = [] 1282s for version in original_versions: 1282s try: 1282s > versions.append(Version.coerce(version)) 1282s E NameError: name 'Version' is not defined 1282s 1282s plugins/modules/maven_artifact.py:407: NameError 1282s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/general/tests/output/junit/python3.13-modules-units.xml - 1282s =========================== short test summary info ============================ 1282s SKIPPED [1] tests/unit/plugins/modules/test_datadog_downtime.py:19: could not import 'datadog_api_client': No module named 'datadog_api_client' 1282s SKIPPED [1] tests/unit/plugins/modules/test_dnsimple.py:17: could not import 'dnsimple': No module named 'dnsimple' 1282s SKIPPED [1] tests/unit/plugins/modules/test_linode_v4.py:14: could not import 'linode_api4': No module named 'linode_api4' 1282s SKIPPED [1] tests/unit/plugins/modules/helper.py:99: test helper does not support check mode yet 1282s SKIPPED [1] tests/unit/plugins/modules/test_linode.py: test_linode.py requires the `linode-python` module 1282s SKIPPED [1] tests/unit/plugins/modules/test_redis_data.py:137: Redis version > 3.4.0 1282s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_incr.py:107: Redis version > 3.4.0 1282s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:68: Redis version > 3.4.0 1282s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:85: Redis version > 3.4.0 1282s SKIPPED [1] tests/unit/plugins/modules/test_redis_data_info.py:101: Redis version > 3.4.0 1282s ERROR tests/unit/plugins/modules/test_jenkins_node.py 1282s ERROR tests/unit/plugins/modules/test_nomad_token.py 1282s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_org_repo 1282s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_org_repo_incomplete 1282s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_create_new_user_repo 1282s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_org_repo 1282s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_org_repo_notfound 1282s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_delete_user_repo 1282s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_idempotency_existing_org_private_repo 1282s FAILED tests/unit/plugins/modules/test_github_repo.py::TestGithubRepo::test_patch_existing_org_repo 1282s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-(,3.9]-3.8.2] 1282s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-3.0-3.8.2] 1282s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[3.7]-3.7] 1282s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[4.10, 4.12]-4.12] 1282s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[4.10, 4.12)-4.11] 1282s FAILED tests/unit/plugins/modules/test_maven_artifact.py::test_find_version_by_spec[None-[2.0,)-4.13-beta-2] 1282s ======= 14 failed, 1261 passed, 10 skipped, 2 errors in 76.93s (0:01:16) ======= 1282s 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.HRV60t/build.QGA/src/ansible_collections/community/general/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/general --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1282s ## return code is 1 1282s 1282s 1282s 1282s ############################################################ 1282s ############################################################ 1282s #### Running FLAKY tests in ansible_collections/community/hrobot 1282s ############################################################ 1282s ############################################################ 1282s Unit test modules with Python 3.13 1283s ============================= test session starts ============================== 1283s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1283s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot 1283s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1283s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1283s created: 2/2 workers 1283s 2 workers [0 items] 1283s 1283s 1283s ==================================== ERRORS ==================================== 1283s ___________ ERROR collecting tests/unit/plugins/modules/test_boot.py ___________ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_boot.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_boot.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _______ ERROR collecting tests/unit/plugins/modules/test_failover_ip.py ________ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_failover_ip.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_failover_ip.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _____ ERROR collecting tests/unit/plugins/modules/test_failover_ip_info.py _____ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_failover_ip_info.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_failover_ip_info.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _________ ERROR collecting tests/unit/plugins/modules/test_firewall.py _________ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_firewall.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_firewall.py:11: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s ______ ERROR collecting tests/unit/plugins/modules/test_firewall_info.py _______ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_firewall_info.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_firewall_info.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s __________ ERROR collecting tests/unit/plugins/modules/test_reset.py ___________ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_reset.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_reset.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _______ ERROR collecting tests/unit/plugins/modules/test_reverse_dns.py ________ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_reverse_dns.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_reverse_dns.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s __________ ERROR collecting tests/unit/plugins/modules/test_server.py __________ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_server.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_server.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _______ ERROR collecting tests/unit/plugins/modules/test_server_info.py ________ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_server_info.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_server_info.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _________ ERROR collecting tests/unit/plugins/modules/test_ssh_key.py __________ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_ssh_key.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_ssh_key.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _______ ERROR collecting tests/unit/plugins/modules/test_ssh_key_info.py _______ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_ssh_key_info.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_ssh_key_info.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s ________ ERROR collecting tests/unit/plugins/modules/test_storagebox.py ________ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_storagebox.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _____ ERROR collecting tests/unit/plugins/modules/test_storagebox_info.py ______ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_info.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_storagebox_info.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_set_password.py __ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_set_password.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_storagebox_set_password.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_snapshot_plan.py _ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_snapshot_plan.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_storagebox_snapshot_plan.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _ ERROR collecting tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py _ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py:9: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s _________ ERROR collecting tests/unit/plugins/modules/test_v_switch.py _________ 1283s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/unit/plugins/modules/test_v_switch.py'. 1283s Hint: make sure your test modules/packages have valid Python names. 1283s Traceback: 1283s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1283s return _bootstrap._gcd_import(name[level:], package, level) 1283s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1283s assertion_rewriting_hook.exec_module(module) 1283s tests/unit/plugins/modules/test_v_switch.py:12: in 1283s from ansible_collections.community.internal_test_tools.tests.unit.utils.fetch_url_module_framework import ( 1283s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1283s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/output/junit/python3.13-modules-units.xml - 1283s =========================== short test summary info ============================ 1283s ERROR tests/unit/plugins/modules/test_boot.py 1283s ERROR tests/unit/plugins/modules/test_failover_ip.py 1283s ERROR tests/unit/plugins/modules/test_failover_ip_info.py 1283s ERROR tests/unit/plugins/modules/test_firewall.py 1283s ERROR tests/unit/plugins/modules/test_firewall_info.py 1283s ERROR tests/unit/plugins/modules/test_reset.py 1283s ERROR tests/unit/plugins/modules/test_reverse_dns.py 1283s ERROR tests/unit/plugins/modules/test_server.py 1283s ERROR tests/unit/plugins/modules/test_server_info.py 1283s ERROR tests/unit/plugins/modules/test_ssh_key.py 1283s ERROR tests/unit/plugins/modules/test_ssh_key_info.py 1283s ERROR tests/unit/plugins/modules/test_storagebox.py 1283s ERROR tests/unit/plugins/modules/test_storagebox_info.py 1283s ERROR tests/unit/plugins/modules/test_storagebox_set_password.py 1283s ERROR tests/unit/plugins/modules/test_storagebox_snapshot_plan.py 1283s ERROR tests/unit/plugins/modules/test_storagebox_snapshot_plan_info.py 1283s ERROR tests/unit/plugins/modules/test_v_switch.py 1283s ============================== 17 errors in 0.69s ============================== 1283s ## return code is 1 1283s 1283s 1283s 1283s ############################################################ 1283s ############################################################ 1283s #### Running FLAKY tests in ansible_collections/community/library_inventory_filtering_v1 1283s ############################################################ 1283s ############################################################ 1283s 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.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1283s Unit test controller with Python 3.13 1284s ============================= test session starts ============================== 1284s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1284s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/library_inventory_filtering_v1 1284s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1284s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1284s created: 2/2 workers 1284s 2 workers [0 items] 1284s 1284s 1284s ==================================== ERRORS ==================================== 1284s __ ERROR collecting tests/unit/plugins/plugin_utils/test_inventory_filter.py ___ 1284s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/library_inventory_filtering_v1/tests/unit/plugins/plugin_utils/test_inventory_filter.py'. 1284s Hint: make sure your test modules/packages have valid Python names. 1284s Traceback: 1284s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1284s return _bootstrap._gcd_import(name[level:], package, level) 1284s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1284s assertion_rewriting_hook.exec_module(module) 1284s tests/unit/plugins/plugin_utils/test_inventory_filter.py:14: in 1284s from ansible_collections.community.internal_test_tools.tests.unit.mock.loader import DictDataLoader 1284s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1284s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml - 1284s =========================== short test summary info ============================ 1284s ERROR tests/unit/plugins/plugin_utils/test_inventory_filter.py 1284s =============================== 1 error in 0.49s =============================== 1284s 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.HRV60t/build.QGA/src/ansible_collections/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/library_inventory_filtering_v1 --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/library_inventory_filtering_v1 tests/unit/plugins/plugin_utils/test_inventory_filter.py" returned exit status 1. 1284s ## return code is 1 1284s 1284s 1284s 1284s ############################################################ 1284s ############################################################ 1284s #### Running FLAKY tests in ansible_collections/infoblox/nios_modules 1284s ############################################################ 1284s ############################################################ 1284s Unit test modules with Python 3.13 1285s ============================= test session starts ============================== 1285s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1285s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/infoblox/nios_modules 1285s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1285s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1285s created: 2/2 workers 1285s 2 workers [91 items] 1285s 1288s FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF [ 79%] 1289s FFFFFFFFFFFFFFFFFFF [100%] 1289s =================================== FAILURES =================================== 1289s ______ TestNiosExtensibleAttributeModule.test_create_extensible_attribute ______ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosExtensibleAttributeModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_extensible_attribute.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosCNameRecordModule.test_nios_cname_record_create ____________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosCNameRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_cname_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosExtensibleAttributeModule.test_nios_ea_update_comment _________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosExtensibleAttributeModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_extensible_attribute.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosCNameRecordModule.test_nios_cname_record_remove ____________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosCNameRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_cname_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ______ TestNiosExtensibleAttributeModule.test_remove_extensible_attribute ______ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosExtensibleAttributeModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_extensible_attribute.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_extensible_attribute.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _______ TestNiosCNameRecordModule.test_nios_cname_record_update_comment ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosCNameRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_cname_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_cname_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _______________ TestNiosARecordModule.test_nios_a_record_create ________________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosARecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_a_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _______________ TestNiosDnsViewModule.test_nios_dns_view_create ________________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDnsViewModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dns_view.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _______________ TestNiosARecordModule.test_nios_a_record_remove ________________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosARecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_a_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _______________ TestNiosDnsViewModule.test_nios_dns_view_remove ________________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDnsViewModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dns_view.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosARecordModule.test_nios_a_record_update_comment ____________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosARecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_a_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosDnsViewModule.test_nios_dns_view_update_comment ____________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDnsViewModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dns_view.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dns_view.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosARecordModule.test_nios_a_record_update_record_name __________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosARecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_a_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_a_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_create ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcHttpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_remove ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcHttpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ____________ TestNiosAAAARecordModule.test_nios_aaaa_record_create _____________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosAAAARecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ____________ TestNiosAAAARecordModule.test_nios_aaaa_record_remove _____________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosAAAARecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ____ TestNiosDtcHttpMonitorModule.test_nios_dtc_monitor_http_update_comment ____ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcHttpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_http.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_http.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosAAAARecordModule.test_nios_aaaa_record_update_comment _________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosAAAARecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_create ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcIcmpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ______ TestNiosAAAARecordModule.test_nios_aaaa_record_update_record_name _______ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosAAAARecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_aaaa_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_aaaa_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_remove ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcIcmpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ____ TestNiosDtcIcmpMonitorModule.test_nios_dtc_monitor_icmp_update_comment ____ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcIcmpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_icmp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_create _________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcTcpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_create _________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcTcpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_remove _________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcTcpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_remove _________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcTcpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_tcp_update_comment _____ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcTcpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_tcp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____ TestNiosDtcTcpMonitorModule.test_nios_dtc_monitor_pdp_update_comment _____ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcTcpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_pdp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosDtcTopologyModule.test_nios_dtc_topology_create ____________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcTopologyModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_create _________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcSipMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosDtcTopologyModule.test_nios_dtc_topology_remove ____________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcTopologyModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_remove _________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcSipMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _______ TestNiosDtcTopologyModule.test_nios_dtc_topology_update_comment ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcTopologyModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_topology.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_topology.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____ TestNiosDtcSipMonitorModule.test_nios_dtc_monitor_sip_update_comment _____ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcSipMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_sip.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_create ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosFixedAddressModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_create ________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcSnmpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_dhcp_update ______ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosFixedAddressModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_remove ________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcSnmpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv4_remove ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosFixedAddressModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ____ TestNiosDtcSnmpMonitorModule.test_nios_dtc_monitor_snmp_update_comment ____ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosDtcSnmpMonitorModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_dtc_monitor_snmp.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv6_create ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosFixedAddressModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosFixedAddressModule.test_nios_fixed_address_ipv6_remove ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosFixedAddressModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_fixed_address.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_fixed_address.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________________ TestNiosMemberModule.test_nios_member_create _________________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosMemberModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_member.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________________ TestNiosMemberModule.test_nios_member_remove _________________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosMemberModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_member.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ____________ TestNiosHostRecordModule.test_nios_host_record_create _____________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosHostRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_host_record.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________________ TestNiosMemberModule.test_nios_member_update _________________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosMemberModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_member.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_member.py:40: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ____________ TestNiosHostRecordModule.test_nios_host_record_remove _____________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosHostRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_host_record.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ______________ TestNiosMXRecordModule.test_nios_mx_record_create _______________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosMXRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_mx_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________ TestNiosHostRecordModule.test_nios_host_record_update_comment _________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosHostRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_host_record.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ______________ TestNiosMXRecordModule.test_nios_mx_record_remove _______________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosMXRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_mx_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ______ TestNiosHostRecordModule.test_nios_host_record_update_record_name _______ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosHostRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_host_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_host_record.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s __________ TestNiosMXRecordModule.test_nios_mx_record_update_comment ___________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosMXRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_mx_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_mx_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosNAPTRRecordModule.test_nios_naptr_record_remove ____________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNAPTRRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosNAPTRRecordModule.test_nios_naptr_record_create ____________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNAPTRRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _______ TestNiosNAPTRRecordModule.test_nios_naptr_record_update_comment ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNAPTRRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_naptr_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_naptr_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____________ TestNiosNetworkModule.test_nios_network_ipv4_create ______________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _ TestNiosNetworkModule.test_nios_network_ipv4_update_with_use_logic_filter_rules _ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____________ TestNiosNetworkModule.test_nios_network_ipv6_create ______________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _ TestNiosNetworkModule.test_nios_network_ipv4_create_with_use_logic_filter_rules _ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosNetworkModule.test_nios_network_ipv4_dhcp_update ___________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosNetworkModule.test_nios_network_ipv6_dhcp_update ___________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____________ TestNiosNetworkModule.test_nios_network_ipv6_remove ______________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____________ TestNiosNetworkModule.test_nios_network_ipv4_remove ______________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv4_create _________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv6_create _________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosNetworkModule.test_nios_networkcontainer_ipv4_remove _________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkModule, self).setUp() 1289s self.module = MagicMock( 1289s name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule' 1289s ) 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch( 1289s 'ansible_collections.infoblox.nios_modules.plugins.modules.nios_network.WapiModule.run' 1289s ) 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network.py:44: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosNetworkViewModule.test_nios_network_view_create ____________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkViewModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network_view.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________________ TestNiosNSGroupModule.test_nios_nsgroup_create ________________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosNSGroupModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________ TestNiosNetworkViewModule.test_nios_network_view_remove ____________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkViewModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network_view.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ________________ TestNiosNSGroupModule.test_nios_nsgroup_remove ________________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosNSGroupModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _______ TestNiosNetworkViewModule.test_nios_network_view_update_comment ________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkViewModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network_view.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ____________ TestNiosNSGroupModule.test_nios_nsgroup_update_comment ____________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosNSGroupModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_nsgroup.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_nsgroup.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosNetworkViewModule.test_nios_network_view_update_name _________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosNetworkViewModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_network_view.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_network_view.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____________ TestNiosPTRRecordModule.test_nios_ptr_record_create ______________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosPTRRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____________ TestNiosPTRRecordModule.test_nios_ptr6_record_create _____________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosPTRRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____________ TestNiosPTRRecordModule.test_nios_ptr_record_remove ______________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosPTRRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____ TestNiosPTRRecordModule.test_nios_ptr_record_update_record_ptrdname ______ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosPTRRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosPTRRecordModule.test_nios_ptr_record_update_comment __________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s 1289s super(TestNiosPTRRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_ptr_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_ptr_record.py:43: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____________ TestNiosSRVRecordModule.test_nios_srv_record_create ______________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosSRVRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_srv_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _____________ TestNiosSRVRecordModule.test_nios_srv_record_remove ______________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosSRVRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_srv_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _________ TestNiosSRVRecordModule.test_nios_srv_record_update_comment __________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosSRVRecordModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_srv_record.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_srv_record.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________________ TestNiosZoneModule.test_nios_zone_create ___________________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosZoneModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_zone.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s _______ TestNiosZoneModule.test_nios_zone_create_using_name_server_group _______ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosZoneModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_zone.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___ TestNiosZoneModule.test_nios_zone_create_using_grid_primary_secondaries ____ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosZoneModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_zone.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___________________ TestNiosZoneModule.test_nios_zone_remove ___________________ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosZoneModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_zone.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s __________ TestNiosZoneModule.test_nios_zone_create_using_zone_format __________ 1289s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosZoneModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_zone.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1289s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1289s ___ TestNiosZoneModule.test_nios_zone_remove_using_grid_primary_secondaries ____ 1289s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1289s 1289s self = 1289s 1289s def setUp(self): 1289s super(TestNiosZoneModule, self).setUp() 1289s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.module.check_mode = False 1289s self.module.params = {'provider': None} 1289s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1289s self.exec_command = self.mock_wapi.start() 1289s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1289s self.mock_wapi_run.start() 1289s > self.load_config = self.mock_wapi_run.start() 1289s 1289s tests/unit/plugins/modules/test_nios_zone.py:42: 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s /usr/lib/python3.13/unittest/mock.py:1654: in start 1289s result = self.__enter__() 1289s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1289s 1289s self = 1289s 1289s def __enter__(self): 1289s """Perform the patch.""" 1289s if self.is_started: 1289s > raise RuntimeError("Patch is already started") 1289s E RuntimeError: Patch is already started 1289s 1290s 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.HRV60t/build.QGA/src/ansible_collections/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/infoblox/nios_modules --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1290s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1290s _______ TestNiosZoneModule.test_nios_zone_remove_using_name_server_group _______ 1290s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1290s 1290s self = 1290s 1290s def setUp(self): 1290s super(TestNiosZoneModule, self).setUp() 1290s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1290s self.module.check_mode = False 1290s self.module.params = {'provider': None} 1290s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1290s self.exec_command = self.mock_wapi.start() 1290s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1290s self.mock_wapi_run.start() 1290s > self.load_config = self.mock_wapi_run.start() 1290s 1290s tests/unit/plugins/modules/test_nios_zone.py:42: 1290s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1290s /usr/lib/python3.13/unittest/mock.py:1654: in start 1290s result = self.__enter__() 1290s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1290s 1290s self = 1290s 1290s def __enter__(self): 1290s """Perform the patch.""" 1290s if self.is_started: 1290s > raise RuntimeError("Patch is already started") 1290s E RuntimeError: Patch is already started 1290s 1290s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1290s _______ TestNiosZoneModule.test_nios_zone_remove_using_using_zone_format _______ 1290s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1290s 1290s self = 1290s 1290s def setUp(self): 1290s super(TestNiosZoneModule, self).setUp() 1290s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1290s self.module.check_mode = False 1290s self.module.params = {'provider': None} 1290s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1290s self.exec_command = self.mock_wapi.start() 1290s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1290s self.mock_wapi_run.start() 1290s > self.load_config = self.mock_wapi_run.start() 1290s 1290s tests/unit/plugins/modules/test_nios_zone.py:42: 1290s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1290s /usr/lib/python3.13/unittest/mock.py:1654: in start 1290s result = self.__enter__() 1290s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1290s 1290s self = 1290s 1290s def __enter__(self): 1290s """Perform the patch.""" 1290s if self.is_started: 1290s > raise RuntimeError("Patch is already started") 1290s E RuntimeError: Patch is already started 1290s 1290s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1290s _______________ TestNiosZoneModule.test_nios_zone_update_comment _______________ 1290s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1290s 1290s self = 1290s 1290s def setUp(self): 1290s super(TestNiosZoneModule, self).setUp() 1290s self.module = MagicMock(name='ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1290s self.module.check_mode = False 1290s self.module.params = {'provider': None} 1290s self.mock_wapi = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule') 1290s self.exec_command = self.mock_wapi.start() 1290s self.mock_wapi_run = patch('ansible_collections.infoblox.nios_modules.plugins.modules.nios_zone.WapiModule.run') 1290s self.mock_wapi_run.start() 1290s > self.load_config = self.mock_wapi_run.start() 1290s 1290s tests/unit/plugins/modules/test_nios_zone.py:42: 1290s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1290s /usr/lib/python3.13/unittest/mock.py:1654: in start 1290s result = self.__enter__() 1290s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1290s 1290s self = 1290s 1290s def __enter__(self): 1290s """Perform the patch.""" 1290s if self.is_started: 1290s > raise RuntimeError("Patch is already started") 1290s E RuntimeError: Patch is already started 1290s 1290s /usr/lib/python3.13/unittest/mock.py:1476: RuntimeError 1290s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml - 1290s =========================== short test summary info ============================ 1290s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_create_extensible_attribute 1290s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_create 1290s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_nios_ea_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_remove 1290s FAILED tests/unit/plugins/modules/test_extensible_attribute.py::TestNiosExtensibleAttributeModule::test_remove_extensible_attribute 1290s FAILED tests/unit/plugins/modules/test_nios_cname_record.py::TestNiosCNameRecordModule::test_nios_cname_record_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_create 1290s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_create 1290s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_remove 1290s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_remove 1290s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_dns_view.py::TestNiosDnsViewModule::test_nios_dns_view_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_a_record.py::TestNiosARecordModule::test_nios_a_record_update_record_name 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_create 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_remove 1290s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_create 1290s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_remove 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_http.py::TestNiosDtcHttpMonitorModule::test_nios_dtc_monitor_http_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_create 1290s FAILED tests/unit/plugins/modules/test_nios_aaaa_record.py::TestNiosAAAARecordModule::test_nios_aaaa_record_update_record_name 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_remove 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_icmp.py::TestNiosDtcIcmpMonitorModule::test_nios_dtc_monitor_icmp_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_create 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_create 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_remove 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_remove 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_tcp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_tcp_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_pdp.py::TestNiosDtcTcpMonitorModule::test_nios_dtc_monitor_pdp_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_create 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_create 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_remove 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_remove 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_topology.py::TestNiosDtcTopologyModule::test_nios_dtc_topology_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_sip.py::TestNiosDtcSipMonitorModule::test_nios_dtc_monitor_sip_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_create 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_create 1290s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_dhcp_update 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_remove 1290s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv4_remove 1290s FAILED tests/unit/plugins/modules/test_nios_dtc_monitor_snmp.py::TestNiosDtcSnmpMonitorModule::test_nios_dtc_monitor_snmp_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv6_create 1290s FAILED tests/unit/plugins/modules/test_nios_fixed_address.py::TestNiosFixedAddressModule::test_nios_fixed_address_ipv6_remove 1290s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_create 1290s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_remove 1290s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_create 1290s FAILED tests/unit/plugins/modules/test_nios_member.py::TestNiosMemberModule::test_nios_member_update 1290s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_remove 1290s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_create 1290s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_remove 1290s FAILED tests/unit/plugins/modules/test_nios_host_record.py::TestNiosHostRecordModule::test_nios_host_record_update_record_name 1290s FAILED tests/unit/plugins/modules/test_nios_mx_record.py::TestNiosMXRecordModule::test_nios_mx_record_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_remove 1290s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_create 1290s FAILED tests/unit/plugins/modules/test_nios_naptr_record.py::TestNiosNAPTRRecordModule::test_nios_naptr_record_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_create 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_update_with_use_logic_filter_rules 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_create 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_create_with_use_logic_filter_rules 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_dhcp_update 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_dhcp_update 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv6_remove 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_network_ipv4_remove 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv4_create 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv6_create 1290s FAILED tests/unit/plugins/modules/test_nios_network.py::TestNiosNetworkModule::test_nios_networkcontainer_ipv4_remove 1290s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_create 1290s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_create 1290s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_remove 1290s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_remove 1290s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_nsgroup.py::TestNiosNSGroupModule::test_nios_nsgroup_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_network_view.py::TestNiosNetworkViewModule::test_nios_network_view_update_name 1290s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_create 1290s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr6_record_create 1290s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_remove 1290s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_update_record_ptrdname 1290s FAILED tests/unit/plugins/modules/test_nios_ptr_record.py::TestNiosPTRRecordModule::test_nios_ptr_record_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_create 1290s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_remove 1290s FAILED tests/unit/plugins/modules/test_nios_srv_record.py::TestNiosSRVRecordModule::test_nios_srv_record_update_comment 1290s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create 1290s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_name_server_group 1290s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_grid_primary_secondaries 1290s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove 1290s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_create_using_zone_format 1290s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_grid_primary_secondaries 1290s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_name_server_group 1290s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_remove_using_using_zone_format 1290s FAILED tests/unit/plugins/modules/test_nios_zone.py::TestNiosZoneModule::test_nios_zone_update_comment 1290s ============================== 91 failed in 4.86s ============================== 1290s ## return code is 1 1290s 1290s 1290s 1290s ############################################################ 1290s ############################################################ 1290s #### Running FLAKY tests in ansible_collections/junipernetworks/junos 1290s ############################################################ 1290s ############################################################ 1290s Unit test controller with Python 3.13 1291s ============================= test session starts ============================== 1291s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1291s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/junipernetworks/junos 1291s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1291s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1291s created: 2/2 workers 1291s 2 workers [305 items] 1291s 1293s ...F......F.FFF.FFFFFFFFFFFFFFFFFFFFFFFFFF.....F.FFFFFFF......F.....F... [ 23%] 1295s ..F......F......F...FFFFFFFFFFFFFF.FFFFFFFFFFFFFFFF..F...FFF.FF....F..FF [ 47%] 1297s FFFF..F.FFFFFFFFFFFFFF.FFFFFFFF.FF.FFFFFF..FFFFFF....F.....F.FF.F.F..FFF [ 70%] 1299s FFF.F.FFFFFFFFFFFF......F.F...F..FF...F.....FFFF..FFF.F.FFFFFFFFFFFFFFFF [ 94%] 1300s F.FFFF.FF.FFF..F. [100%] 1300s =================================== FAILURES =================================== 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_001 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_001(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - af_type 1300s - afi 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="evpn", 1300s af_type=[dict(type="signaling", set=True)], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s 1300s commands = [ 1300s '' 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1654: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_002 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_002(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - accepted_prefix_limit 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="evpn", 1300s af_type=[ 1300s dict( 1300s type="signaling", 1300s accepted_prefix_limit=dict( 1300s limit_threshold=98, 1300s idle_timeout_value=2001, 1300s maximum=20, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "2098" 1300s "2001" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1693: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____________ TestJunosBgp_globalModule.test_junos_bgp_global_delete ____________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_delete(self): 1300s set_module_args(dict(config=dict(), state="deleted")) 1300s 1300s commands = [ 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s "", 1300s '' 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:436: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_002_001 _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_002_001(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - accepted_prefix_limit 1300s forever: true 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="evpn", 1300s af_type=[ 1300s dict( 1300s type="signaling", 1300s accepted_prefix_limit=dict( 1300s maximum=20, 1300s limit_threshold=98, 1300s forever=True, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "2098" 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1733: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________ TestJunosBgp_globalModule.test_junos_bgp_global_delete_purged _________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_delete_purged(self): 1300s set_module_args(dict(config=dict(), state="purged")) 1300s 1300s commands = [ 1300s '', 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:446: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_003 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_003(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - add_path 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="evpn", 1300s af_type=[ 1300s dict( 1300s type="signaling", 1300s add_path=dict( 1300s receive=True, 1300s send=dict( 1300s multipath=True, 1300s include_backup_path=1, 1300s path_count=10, 1300s prefix_policy="customer65443", 1300s path_selection_mode=dict( 1300s all_paths=True, 1300s equal_cost_paths=True, 1300s ), 1300s ), 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "10" 1300s "1" 1300s "" 1300s "customer65443" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1782: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________ TestJunosBgp_globalModule.test_junos_bgp_global_merge_groups _________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merge_groups(self): 1300s """ 1300s description: configure groups attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s groups=[ 1300s dict( 1300s name="internal", 1300s neighbors=[ 1300s dict( 1300s neighbor_address="11.11.11.11", 1300s peer_as="65534", 1300s out_delay=11, 1300s accept_remote_nexthop=True, 1300s ), 1300s dict( 1300s neighbor_address="11.11.11.12", 1300s peer_as="65534", 1300s out_delay=12, 1300s accept_remote_nexthop=True, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "internal" 1300s "11.11.11.11" 1300s "65534" 1300s "11" 1300s "11.11.11.12" 1300s "6553412" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:513: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____________ TestJunosBgp_globalModule.test_junos_bgp_global_merged ____________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s damping=True, 1300s description="This is configured with Junos_bgp resource module", 1300s preference="2", 1300s bfd_liveness_detection=dict( 1300s minimum_receive_interval=4, 1300s multiplier=10, 1300s no_adaptation=True, 1300s version="automatic", 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "This is configured with Junos_bgp resource module" 1300s "2" 1300s "4" 1300s "10" 1300s "automatic", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:119: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_004 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_004(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - aggregate_label 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="evpn", 1300s af_type=[ 1300s dict( 1300s type="signaling", 1300s aggregate_label=dict( 1300s set=True, 1300s community="cuastomerapn1", 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "cuastomerapn1" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1819: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_advertise_bgp_static __ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_advertise_bgp_static(self): 1300s """ 1300s configure advertise_bgp_static attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict(advertise_bgp_static=dict(policy="static-to-bgp")), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "static-to-bgp" 1300s "" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:533: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_005 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_005(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - aigp 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s aigp=dict(set=True), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1852: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_globalModule.test_junos_bgp_global_merged_advertise_external ___ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_advertise_external(self): 1300s """ 1300s configure advertise_external attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s advertise_external=dict(set=True, conditional=True), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:554: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bfd_liveness_detection _ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_bfd_liveness_detection(self): 1300s """ 1300s configure bfd_liveness_detection attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s bfd_liveness_detection=dict( 1300s minimum_receive_interval=8, 1300s no_adaptation=True, 1300s authentication=dict( 1300s algorithm="keyed-md5", 1300s key_chain="junos", 1300s loose_check=True, 1300s ), 1300s detection_time=dict(threshold=1000000), 1300s transmit_interval=dict( 1300s minimum_interval=20, 1300s threshold=100000, 1300s ), 1300s holddown_interval=20, 1300s multiplier=20, 1300s session_mode="multihop", 1300s version="1", 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "keyed-md5junos" 1300s "" 1300s "1000000" 1300s "20" 1300s "208" 1300s "20" 1300s "multihop" 1300s "1" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:600: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_005_001 _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_005_001(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - aigp 1300s disable: true 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s aigp=dict(disable=True), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1887: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bgp_error_tolerance __ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_bgp_error_tolerance(self): 1300s """ 1300s configure bgp_error_tolerance attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s bgp_error_tolerance=dict( 1300s set=True, 1300s malformed_route_limit=10, 1300s malformed_update_log_interval=15, 1300s no_malformed_route_limit=True, 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "10" 1300s "15" 1300s "" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:628: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_006 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_006(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - aigp 1300s damping: true 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict(type="labeled-unicast", damping=True), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1918: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bmp __________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_bmp(self): 1300s """ 1300s configure bmp attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s bmp=dict( 1300s monitor=True, 1300s route_monitoring=dict( 1300s none=True, 1300s post_policy=True, 1300s post_policy_exclude_non_eligible=True, 1300s pre_policy=True, 1300s post_policy_exclude_non_feasible=True, 1300s ), 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "enable" 1300s "" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:659: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_007 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_007(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - aigp 1300s defer_initial_multipath_build 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s defer_initial_multipath_build=dict( 1300s set=True, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1954: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________ TestJunosBgp_globalModule.test_junos_bgp_global_merged_bmp_2 _________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_bmp_2(self): 1300s """ 1300s configure bmp attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s bmp=dict( 1300s monitor=False, 1300s route_monitoring=dict( 1300s none=False, 1300s post_policy=False, 1300s post_policy_exclude_non_eligible=False, 1300s pre_policy=False, 1300s post_policy_exclude_non_feasible=False, 1300s ), 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "disable" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:689: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_007_001 _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_007_001(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s defer_initial_multipath_build 1300s maximum_delay 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s defer_initial_multipath_build=dict( 1300s maximum_delay=1200, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "1200" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:1991: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______ TestJunosBgp_globalModule.test_junos_bgp_global_merged_egress_te _______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_egress_te(self): 1300s """ 1300s configure egress_te attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict(egress_te=dict(set=True, backup_path="sample")), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "sample" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:708: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_008 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_008(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - delay_route_advertisements 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s delay_route_advertisements=dict( 1300s set=True, 1300s max_delay_route_age=12000, 1300s max_delay_routing_uptime=12000, 1300s min_delay_inbound_convergence=8000, 1300s min_delay_routing_uptime=8000, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "1200012000" 1300s "8000" 1300s "8000" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2033: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_egress_te_backup_paths _ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_egress_te_backup_paths(self): 1300s """ 1300s configure egress_te_backup_paths attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s egress_te_backup_paths=dict( 1300s templates=[ 1300s dict( 1300s path_name="temp", 1300s ip_forward=dict(set=True, rti_name="sample"), 1300s peers=["10.10.10.10", "11.11.11.11"], 1300s remote_nexthop="11.1.1.1", 1300s ), 1300s ], 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "temp" 1300s "10.10.10.1011.11.11.11" 1300s "11.1.1.1" 1300s "" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:741: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_009 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_009(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - entropy_label 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s entropy_label=dict( 1300s set=True, 1300s no_next_hop_validation=True, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2070: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosBgp_globalModule.test_junos_bgp_global_merged_groups_allow ______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_groups_allow(self): 1300s """ 1300s configure allow attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s groups=[dict(name="internal", allow=["all", "1.1.1.0/24"])], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "internalall" 1300s "1.1.1.0/24" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:763: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_010 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_010(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - explicit_null 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s explicit_null=dict( 1300s set=True, 1300s connected_only=True, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2107: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______ TestJunosBgp_globalModule.test_junos_bgp_global_merged_idempotent _______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_idempotent(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s accept_remote_nexthop=True, 1300s advertise_from_main_vpn_tables=True, 1300s advertise_inactive=True, 1300s as_number="65432", 1300s authentication_algorithm="md5", 1300s bgp_error_tolerance=dict(malformed_route_limit=30000000), 1300s damping=True, 1300s description="This is configured with Junos_bgp resource module", 1300s hold_time=5, 1300s holddown_all_stale_labels=True, 1300s log_updown=True, 1300s no_advertise_peer_as=True, 1300s no_aggregator_id=True, 1300s out_delay=10, 1300s preference="2", 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:145: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_011 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_011(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - extended_nexthop 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict(type="unicast", extended_nexthop=True), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2137: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_globalModule.test_junos_bgp_global_merged_optimal_route_reflection _ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_optimal_route_reflection(self): 1300s """ 1300s configure optimal_route_reflection attributes: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s groups=[ 1300s dict( 1300s name="internal", 1300s optimal_route_reflection=dict( 1300s igp_backup="test_igp", 1300s igp_primary="test_primary", 1300s ), 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "internal" 1300s "test_igptest_primary" 1300s "" 1300s "", 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:794: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosBgp_globalModule.test_junos_bgp_global_merged_routing_options ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_merged_routing_options(self): 1300s """ 1300s configure routing-options attributes: 1300s - loops 1300s - as_number 1300s - asdot_notation 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict(as_number="65432", loops=5, asdot_notation=True), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "", 1300s '' 1300s "654325" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:469: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_012 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_012(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - extended_nexthop_color 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict( 1300s type="unicast", 1300s extended_nexthop_color=True, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2170: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_013 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_013(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - graceful_restart_forwarding_state_bit: from-fib 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="unicast", 1300s graceful_restart_forwarding_state_bit="from-fib", 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "from-fib" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2204: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___________ TestJunosBgp_globalModule.test_junos_bgp_global_rendered ___________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_rendered(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s description="This is configured with Junos_bgp resource module", 1300s groups=[dict(name="internal", out_delay=22)], 1300s hold_time=4, 1300s holddown_all_stale_labels=True, 1300s include_mp_next_hop=True, 1300s log_updown=True, 1300s loops=5, 1300s keep="all", 1300s mtu_discovery=True, 1300s out_delay=10, 1300s preference="2", 1300s ), 1300s state="rendered", 1300s ), 1300s ) 1300s 1300s rendered = ( 1300s '' 1300s "" 1300s "" 1300s "This is configured with Junos_bgp resource module" 1300s "4all2" 1300s "10" 1300s "internal22" 1300s "" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:295: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:94: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_013_001 _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_013_001(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - graceful_restart_forwarding_state_bit: set 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="unicast", 1300s graceful_restart_forwarding_state_bit="set", 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "set" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2238: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________ TestJunosBgp_globalModule.test_junos_bgp_global_rendered_empty ________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_rendered_empty(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args(dict(config=dict(description=""), state="rendered")) 1300s rendered = "" 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:304: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:94: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_014 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_014(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - local_ipv4_address 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="unicast", 1300s local_ipv4_address="11.11.11.11", 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "11.11.11.11" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2271: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___________ TestJunosBgp_globalModule.test_junos_bgp_global_replaced ___________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_replaced(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s accept_remote_nexthop=True, 1300s advertise_from_main_vpn_tables=True, 1300s advertise_inactive=True, 1300s as_number="65432", 1300s authentication_algorithm="md5", 1300s bgp_error_tolerance=dict(malformed_route_limit=20000000), 1300s damping=True, 1300s description="This is configured with Junos_bgp resource module", 1300s groups=[ 1300s dict(name="internal", out_delay=22), 1300s dict(name="external", out_delay=20), 1300s ], 1300s hold_time=4, 1300s holddown_all_stale_labels=True, 1300s log_updown=True, 1300s keep="all", 1300s mtu_discovery=True, 1300s no_precision_timers=True, 1300s no_advertise_peer_as=True, 1300s no_aggregator_id=True, 1300s out_delay=10, 1300s preference="2", 1300s ), 1300s state="replaced", 1300s ), 1300s ) 1300s 1300s commands = [ 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s '' 1300s "" 1300s "" 1300s "" 1300s "" 1300s "md5" 1300s "This is configured with Junos_bgp resource module" 1300s "4all2" 1300s "10" 1300s "20000000" 1300s "internal" 1300s "22external" 1300s "20", 1300s '' 1300s '' 1300s "65432", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:233: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosBgp_globalModule.test_junos_bgp_global_replaced_idempotent ______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_global_replaced_idempotent(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s accept_remote_nexthop=True, 1300s advertise_from_main_vpn_tables=True, 1300s advertise_inactive=True, 1300s as_number="65432", 1300s authentication_algorithm="md5", 1300s bgp_error_tolerance=dict(malformed_route_limit=30000000), 1300s damping=True, 1300s description="This is configured with Junos_bgp resource module", 1300s hold_time=5, 1300s holddown_all_stale_labels=True, 1300s log_updown=True, 1300s no_advertise_peer_as=True, 1300s no_aggregator_id=True, 1300s out_delay=10, 1300s preference="2", 1300s ), 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_global.py:259: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_global.py:1862: in main 1300s result = Bgp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_bgp_global_facts) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:138: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_global/bgp_global.py:150: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_015 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_015(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - legacy_redirect_ip_action 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="flow", 1300s legacy_redirect_ip_action=dict( 1300s set=True, 1300s send=True, 1300s receive=True, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2309: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_016 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_016(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - loops 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict(afi="inet", af_type=[dict(type="flow", loops=3)]), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "3" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2334: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_017 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_017(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - no_install 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[dict(type="flow", no_install=True)], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2362: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_018 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_018(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - no_validate 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[dict(type="flow", no_validate="sample")], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "sample" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2390: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_019 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_019(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - output_queue_priority_expedited 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="flow", 1300s output_queue_priority_expedited=True, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2423: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_020 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_020(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - output_queue_priority_priority 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="flow", 1300s output_queue_priority_priority=15, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "15" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2457: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_021 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_021(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - per_group_label 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s per_group_label=True, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2490: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_merged __________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l3_interfaces_merged(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/1", 1300s ipv4=[ 1300s dict(address="100.64.0.1/10"), 1300s dict(address="100.64.0.2/10"), 1300s ], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ge-0/0/10" 1300s "100.64.0.1/10" 1300s "100.64.0.2/10" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:113: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l3_interfaces.py:1021: in main 1300s result = L3_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1300s config_xmls = self.set_config(existing_l3_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_022 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_022(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - per_prefix_label 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s per_prefix_label=True, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2523: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosL3InterfacesModule.test_junos_l3_interfaces_merged_idempotent ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l3_interfaces_merged_idempotent(self): 1300s self.get_config.return_value = load_fixture( 1300s "junos_interfaces_config.xml", 1300s ) 1300s src = load_fixture("junos_l3_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/1", 1300s ipv4=[ 1300s dict(address="100.64.0.1/10"), 1300s dict(address="100.64.0.2/10"), 1300s ], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:136: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l3_interfaces.py:1021: in main 1300s result = L3_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1300s config_xmls = self.set_config(existing_l3_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______ TestJunosL3InterfacesModule.test_junos_l3_interfaces_overridden ________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l3_interfaces_overridden(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/1", 1300s ipv4=[ 1300s dict(address="100.64.0.1/10"), 1300s dict(address="100.64.0.2/10"), 1300s ], 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ge-0/0/10" 1300s "100.64.0.1/10" 1300s "100.64.0.2/10" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:208: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l3_interfaces.py:1021: in main 1300s result = L3_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1300s config_xmls = self.set_config(existing_l3_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_023 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_023(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - prefix_limit 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s prefix_limit=dict( 1300s maximum=4294967290, 1300s teardown=True, 1300s limit_threshold=22, 1300s idle_timeout=True, 1300s idle_timeout_value=2200, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "4294967290222200" 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2564: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosL3InterfacesModule.test_junos_l3_interfaces_overridden_idempotent __ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l3_interfaces_overridden_idempotent(self): 1300s self.get_config.return_value = load_fixture( 1300s "junos_interfaces_config.xml", 1300s ) 1300s src = load_fixture("junos_l3_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/1", 1300s ipv4=[ 1300s dict(address="100.64.0.1/10"), 1300s dict(address="100.64.0.2/10"), 1300s ], 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:232: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l3_interfaces.py:1021: in main 1300s result = L3_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1300s config_xmls = self.set_config(existing_l3_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_023_001 _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_023_001(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - prefix_limit 1300s forever: true 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s prefix_limit=dict( 1300s teardown=True, 1300s forever=True, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2602: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_rendered _________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l3_interfaces_rendered(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/1", 1300s ipv4=[ 1300s dict(address="100.64.0.1/10"), 1300s dict(address="100.64.0.2/10"), 1300s ], 1300s ), 1300s ], 1300s state="rendered", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ge-0/0/10" 1300s "100.64.0.1/10" 1300s "100.64.0.2/10" 1300s "", 1300s ] 1300s > self.execute_module(changed=False, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:256: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l3_interfaces.py:1021: in main 1300s result = L3_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:96: in execute_module 1300s config_xmls = self.set_config(existing_l3_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________ TestJunosL3InterfacesModule.test_junos_l3_interfaces_replaced _________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l3_interfaces_replaced(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/2", 1300s ipv4=[ 1300s dict(address="100.64.0.1/10"), 1300s dict(address="100.64.0.2/10"), 1300s ], 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ge-0/0/20" 1300s "100.64.0.1/10" 1300s "100.64.0.2/10" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:160: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l3_interfaces.py:1021: in main 1300s result = L3_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1300s config_xmls = self.set_config(existing_l3_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_024 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_024(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - resolve_vpn 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict(type="labeled-unicast", resolve_vpn=True), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2632: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosL3InterfacesModule.test_junos_l3_interfaces_replaced_idempotent ___ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l3_interfaces_replaced_idempotent(self): 1300s self.get_config.return_value = load_fixture( 1300s "junos_interfaces_config.xml", 1300s ) 1300s src = load_fixture("junos_l3_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/1", 1300s ipv4=[ 1300s dict(address="100.64.0.1/10"), 1300s dict(address="100.64.0.2/10"), 1300s ], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_l3_interfaces.py:184: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l3_interfaces.py:1021: in main 1300s result = L3_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:103: in execute_module 1300s config_xmls = self.set_config(existing_l3_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l3_interfaces/l3_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_025 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_025(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - rib 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict(type="labeled-unicast", rib="inet.3"), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2662: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosLogging_globalModule.test_junos_logging_global_deleted_user_11 ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_deleted_user_11(self): 1300s set_module_args(dict(config=dict(), state="deleted")) 1300s commands = [ 1300s '' 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:381: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_026 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_026(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - ribgroup_name 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s ribgroup_name="inet3", 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "inet3" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2695: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______ TestJunosLogging_globalModule.test_junos_logging_global_merged_07 _______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_merged_07(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s allow_duplicates=True, 1300s routing_instance="inst11", 1300s log_rotate_frequency=45, 1300s source_address="33.33.33.33", 1300s time_format=dict(millisecond=True, year=True), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "45" 1300s "inst1133.33.33.33" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:275: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosLogging_globalModule.test_junos_logging_global_merged_archive_01 ___ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_merged_archive_01(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s archive=dict( 1300s set=True, 1300s files=10, 1300s file_size=65578, 1300s no_binary_data=True, 1300s no_world_readable=True, 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "10" 1300s "65578" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:111: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_027 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_027(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - route_refresh_priority_expedited 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s route_refresh_priority_expedited=True, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2729: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosLogging_globalModule.test_junos_logging_global_merged_console_02 ___ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_merged_console_02(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s console=dict( 1300s any=dict(level="info"), 1300s authorization=dict(level="any"), 1300s change_log=dict(level="critical"), 1300s ftp=dict(level="none"), 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:128: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_028 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_028(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - route_refresh_priority_priority 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet6", 1300s af_type=[ 1300s dict( 1300s type="labeled-unicast", 1300s route_refresh_priority_priority=15, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "15" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2763: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_files_03 ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_merged_files_03(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s files=[dict(name="file101", allow_duplicates=True)], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "file101" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:160: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_029 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_029(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - secondary_independent_resolution 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="flow", 1300s secondary_independent_resolution=True, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2796: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_files_04 ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_merged_files_04(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s files=[ 1300s dict( 1300s name="file102", 1300s allow_duplicates=True, 1300s any=dict(level="any"), 1300s structured_data=dict(set=True), 1300s ), 1300s dict( 1300s name="file103", 1300s archive=dict( 1300s set=True, 1300s no_binary_data=True, 1300s files=10, 1300s file_size=65578, 1300s no_world_readable=True, 1300s ), 1300s explicit_priority=True, 1300s match="^set*", 1300s match_strings=["^delete", "^prompt"], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "file102" 1300s "any" 1300s "file103" 1300s "10" 1300s "65578" 1300s "^set*" 1300s "^delete" 1300s "^prompt", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:203: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosLogging_globalModule.test_junos_logging_global_merged_hosts_05 ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_merged_hosts_05(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s hosts=[ 1300s dict( 1300s name="host222", 1300s exclude_hostname=True, 1300s allow_duplicates=True, 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "host222" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:226: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_030 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_030(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - groups: 1300s address_family: 1300s topology 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s groups=[ 1300s dict( 1300s name="ebgp", 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="unicast", 1300s topology=[ 1300s dict( 1300s name="voice", 1300s community=["target:40:40"], 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ebgp" 1300s "voice" 1300s "target:40:40" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2843: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosLogging_globalModule.test_junos_logging_global_merged_hosts_idempotent_06 _ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_merged_hosts_idempotent_06(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s hosts=[ 1300s dict( 1300s name="host111", 1300s exclude_hostname=True, 1300s allow_duplicates=True, 1300s any=dict(level="any"), 1300s structured_data=dict(set=True, brief=True), 1300s facility_override="ftp", 1300s log_prefix="field", 1300s match="^set*", 1300s match_strings=["^delete", "^prompt"], 1300s port=1231, 1300s routing_instance="inst11", 1300s source_address="11.11.11.11", 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:253: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_config_033 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_config_033(self): 1300s """ 1300s This function generate the commands to configure attributes: 1300s - groups: 1300s address_family: 1300s topology 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s groups=[ 1300s dict( 1300s name="ebgp", 1300s neighbors=[ 1300s dict( 1300s neighbor_address="14.14.14.14", 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="unicast", 1300s no_install=True, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ebgp" 1300s "14.14.14.14" 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2958: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosLogging_globalModule.test_junos_logging_global_merged_user_08 ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_merged_user_08(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s users=[ 1300s dict(name="user1", allow_duplicates=True), 1300s dict( 1300s name="user2", 1300s allow_duplicates=True, 1300s any=dict(level="any"), 1300s user=dict(level="info"), 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:295: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_deleted_031 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_deleted_031(self): 1300s """ 1300s This function generate the commands to to delete bgp_address family completely: 1300s """ 1300s set_module_args(dict(config=dict(), state="deleted")) 1300s commands = [ 1300s '' 1300s "internal" 1300s "ebgp" 1300s '' 1300s '' 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2861: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosLogging_globalModule.test_junos_logging_global_overridden_user_10 __ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_overridden_user_10(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s users=[ 1300s dict(name="user1", allow_duplicates=True), 1300s dict( 1300s name="user2", 1300s allow_duplicates=True, 1300s any=dict(level="any"), 1300s user=dict(level="info"), 1300s ), 1300s ], 1300s ), 1300s state="overridden", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:361: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosBgp_address_familyModule.test_junos_bgp_address_family_deleted_032 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_bgp_address_family_deleted_032(self): 1300s """ 1300s This function generate the commands to to delete bgp_address family completely: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s groups=[ 1300s dict( 1300s name="ebgp", 1300s address_family=[ 1300s dict( 1300s afi="inet", 1300s af_type=[ 1300s dict( 1300s type="unicast", 1300s topology=[ 1300s dict( 1300s name="voice", 1300s community=["target:40:40"], 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="overridden", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "internal" 1300s '' 1300s "ebgp" 1300s '' 1300s '' 1300s "ebgp" 1300s "voice" 1300s "target:40:40" 1300s "" 1300s "", 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_bgp_address_family.py:2911: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_bgp_address_family.py:2004: in main 1300s result = Bgp_address_family(module).execute_module() 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:107: in execute_module 1300s config_xmls = self.set_config(existing_bgp_address_family_facts) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/bgp_address_family/bgp_address_family.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____________ TestJunosHostnameModule.test_junos_hostname_merged_01 _____________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_hostname_merged_01(self): 1300s set_module_args(dict(config=dict(hostname="vsrx"), state="merged")) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_hostname.py:92: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_hostname.py:356: in main 1300s result = Hostname(module).execute_module() 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 1300s config_xmls = self.set_config(existing_hostname_facts) 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosLogging_globalModule.test_junos_logging_global_rendered_12 ______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_rendered_12(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s archive=dict( 1300s set=True, 1300s files=10, 1300s file_size=65578, 1300s no_binary_data=True, 1300s no_world_readable=True, 1300s ), 1300s ), 1300s state="rendered", 1300s ), 1300s ) 1300s rendered = ( 1300s '' 1300s "10" 1300s "65578" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:404: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:101: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosHostnameModule.test_junos_hostname_overridden_01 ___________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_hostname_overridden_01(self): 1300s set_module_args( 1300s dict(config=dict(hostname="vsrx12"), state="overridden"), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_hostname.py:118: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_hostname.py:356: in main 1300s result = Hostname(module).execute_module() 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 1300s config_xmls = self.set_config(existing_hostname_facts) 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosLogging_globalModule.test_junos_logging_global_replaced_user_09 ___ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_logging_global_replaced_user_09(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s users=[ 1300s dict(name="user1", allow_duplicates=True), 1300s dict( 1300s name="user2", 1300s allow_duplicates=True, 1300s any=dict(level="any"), 1300s user=dict(level="info"), 1300s ), 1300s ], 1300s ), 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_logging_global.py:326: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_logging_global.py:1738: in main 1300s result = Logging_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:107: in execute_module 1300s config_xmls = self.set_config(existing_logging_global_facts) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:145: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/logging_global/logging_global.py:157: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____________ TestJunosHostnameModule.test_junos_hostname_rendered _____________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_hostname_rendered(self): 1300s set_module_args(dict(config=dict(hostname="vsrx10"), state="rendered")) 1300s rendered = ( 1300s '' 1300s "vsrx10" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_hostname.py:139: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_hostname.py:356: in main 1300s result = Hostname(module).execute_module() 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:96: in execute_module 1300s config_xmls = self.set_config(existing_hostname_facts) 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____________ TestJunosHostnameModule.test_junos_hostname_replaced _____________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_hostname_replaced(self): 1300s set_module_args(dict(config=dict(hostname="vsrx12"), state="replaced")) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_hostname.py:144: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_hostname.py:356: in main 1300s result = Hostname(module).execute_module() 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:102: in execute_module 1300s config_xmls = self.set_config(existing_hostname_facts) 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:140: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/hostname/hostname.py:152: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____________ TestJunosInterfacesModule.test_junos_interfaces_delete ____________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_interfaces_delete(self): 1300s set_module_args(dict(config=[dict(name="ge-0/0/2")], state="deleted")) 1300s 1300s commands = [ 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_interfaces.py:226: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_interfaces.py:961: in main 1300s result = Interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1300s config_xmls = self.set_config(existing_interfaces_facts) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosNtp_globalModule.test_junos_ntp_global_merged_01 ___________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ntp_global_merged_01(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s boot_server="78.46.194.186", 1300s broadcasts=[ 1300s dict( 1300s address="172.16.255.255", 1300s key="50", 1300s ttl=200, 1300s version=3, 1300s routing_instance_name="rt1", 1300s ), 1300s dict( 1300s address="192.16.255.255", 1300s key="50", 1300s ttl=200, 1300s version=3, 1300s routing_instance_name="rt1", 1300s ), 1300s ], 1300s broadcast_client=True, 1300s interval_range=2, 1300s multicast_client="224.0.0.1", 1300s peers=[ 1300s dict(peer="78.44.194.186"), 1300s dict( 1300s peer="172.44.194.186", 1300s key_id="10000", 1300s prefer=True, 1300s version=3, 1300s ), 1300s ], 1300s servers=[ 1300s dict( 1300s server="48.46.194.186", 1300s key_id=34, 1300s prefer=True, 1300s version=2, 1300s routing_instance="rt1", 1300s ), 1300s dict( 1300s server="48.45.194.186", 1300s key_id=34, 1300s prefer=True, 1300s version=2, 1300s ), 1300s ], 1300s source_addresses=[ 1300s dict( 1300s source_address="172.45.194.186", 1300s routing_instance="rt1", 1300s ), 1300s dict( 1300s source_address="171.45.194.186", 1300s routing_instance="rt2", 1300s ), 1300s ], 1300s threshold=dict(action="accept", value=300), 1300s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ntp_global.py:154: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ntp_global.py:1014: in main 1300s result = Ntp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1300s config_xmls = self.set_config(existing_ntp_global_facts) 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______ TestJunosInterfacesModule.test_junos_interfaces_delete_idempotent _______ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_interfaces_delete_idempotent(self): 1300s set_module_args(dict(config=[dict(name="ge-0/0/4")], state="deleted")) 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_interfaces.py:231: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_interfaces.py:961: in main 1300s result = Interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1300s config_xmls = self.set_config(existing_interfaces_facts) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosNtp_globalModule.test_junos_ntp_global_merged_02 ___________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ntp_global_merged_02(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s boot_server="78.46.194.186", 1300s authentication_keys=[ 1300s dict(id="2", algorithm="md5", key="asdfghd"), 1300s dict(id="5", algorithm="sha1", key="aasdad"), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ntp_global.py:189: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ntp_global.py:1014: in main 1300s result = Ntp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1300s config_xmls = self.set_config(existing_ntp_global_facts) 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____________ TestJunosInterfacesModule.test_junos_interfaces_merged ____________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_interfaces_merged(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/1", 1300s description="This is configured with ansible resource module", 1300s mtu=1024, 1300s speed="100m", 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ge-0/0/1This is configured with ansible resource module" 1300s "100m1024", 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_interfaces.py:111: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_interfaces.py:961: in main 1300s result = Interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1300s config_xmls = self.set_config(existing_interfaces_facts) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________ TestJunosNtp_globalModule.test_junos_ntp_global_overridden_01 _________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ntp_global_overridden_01(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s boot_server="78.46.194.186", 1300s broadcasts=[ 1300s dict( 1300s address="172.16.255.255", 1300s key="50", 1300s ttl=200, 1300s version=3, 1300s routing_instance_name="rt1", 1300s ), 1300s dict( 1300s address="192.16.255.255", 1300s key="50", 1300s ttl=200, 1300s version=3, 1300s routing_instance_name="rt1", 1300s ), 1300s ], 1300s broadcast_client=True, 1300s interval_range=2, 1300s multicast_client="224.0.0.1", 1300s peers=[ 1300s dict(peer="78.44.194.186"), 1300s dict( 1300s peer="172.44.194.186", 1300s key_id="10000", 1300s prefer=True, 1300s version=3, 1300s ), 1300s ], 1300s servers=[ 1300s dict( 1300s server="48.46.194.186", 1300s key_id=34, 1300s prefer=True, 1300s version=2, 1300s routing_instance="rt1", 1300s ), 1300s dict( 1300s server="48.45.194.186", 1300s key_id=34, 1300s prefer=True, 1300s version=2, 1300s ), 1300s ], 1300s source_addresses=[ 1300s dict( 1300s source_address="172.45.194.186", 1300s routing_instance="rt1", 1300s ), 1300s dict( 1300s source_address="171.45.194.186", 1300s routing_instance="rt2", 1300s ), 1300s ], 1300s threshold=dict(action="accept", value=300), 1300s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 1300s ), 1300s state="overridden", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ntp_global.py:567: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ntp_global.py:1014: in main 1300s result = Ntp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1300s config_xmls = self.set_config(existing_ntp_global_facts) 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______ TestJunosInterfacesModule.test_junos_interfaces_merged_idempotent _______ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_interfaces_merged_idempotent(self): 1300s self.get_config.return_value = load_fixture( 1300s "junos_interfaces_config.xml", 1300s ) 1300s src = load_fixture("junos_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/0", 1300s description="Configured by Ansi-Team", 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_interfaces.py:131: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_interfaces.py:961: in main 1300s result = Interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1300s config_xmls = self.set_config(existing_interfaces_facts) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___________ TestJunosNtp_globalModule.test_junos_ntp_global_rendered ___________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ntp_global_rendered(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s boot_server="78.46.194.186", 1300s authentication_keys=[ 1300s dict(id="2", algorithm="md5", key="asdfghd"), 1300s dict(id="5", algorithm="sha1", key="aasdad"), 1300s ], 1300s ), 1300s state="rendered", 1300s ), 1300s ) 1300s rendered = ( 1300s '' 1300s "2md5" 1300s "asdfghd" 1300s "5sha1aasdad" 1300s "78.46.194.186" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_ntp_global.py:631: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ntp_global.py:1014: in main 1300s result = Ntp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:96: in execute_module 1300s config_xmls = self.set_config(existing_ntp_global_facts) 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosInterfacesModule.test_junos_interfaces_overridden __________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_interfaces_overridden(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/2", 1300s description="This is configured with ansible", 1300s mtu=1024, 1300s speed="100m", 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ge-0/0/2" 1300s "This is configured with ansible" 1300s "100m1024", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_interfaces.py:197: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_interfaces.py:961: in main 1300s result = Interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1300s config_xmls = self.set_config(existing_interfaces_facts) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosInterfacesModule.test_junos_interfaces_overridden_idempotent _____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_interfaces_overridden_idempotent(self): 1300s self.get_config.return_value = load_fixture( 1300s "junos_interfaces_config.xml", 1300s ) 1300s src = load_fixture("junos_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/0", 1300s description="Configured by Ansi-Team", 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_interfaces.py:218: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_interfaces.py:961: in main 1300s result = Interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1300s config_xmls = self.set_config(existing_interfaces_facts) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________ TestJunosNtp_globalModule.test_junos_ntp_global_replaced_01 __________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ntp_global_replaced_01(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s boot_server="78.46.194.186", 1300s broadcasts=[ 1300s dict( 1300s address="172.16.255.255", 1300s key="50", 1300s ttl=200, 1300s version=3, 1300s routing_instance_name="rt1", 1300s ), 1300s dict( 1300s address="192.16.255.255", 1300s key="50", 1300s ttl=200, 1300s version=3, 1300s routing_instance_name="rt1", 1300s ), 1300s ], 1300s broadcast_client=True, 1300s interval_range=2, 1300s multicast_client="224.0.0.1", 1300s peers=[ 1300s dict(peer="78.44.194.186"), 1300s dict( 1300s peer="172.44.194.186", 1300s key_id="10000", 1300s prefer=True, 1300s version=3, 1300s ), 1300s ], 1300s servers=[ 1300s dict( 1300s server="48.46.194.186", 1300s key_id=34, 1300s prefer=True, 1300s version=2, 1300s routing_instance="rt1", 1300s ), 1300s dict( 1300s server="48.45.194.186", 1300s key_id=34, 1300s prefer=True, 1300s version=2, 1300s ), 1300s ], 1300s source_addresses=[ 1300s dict( 1300s source_address="172.45.194.186", 1300s routing_instance="rt1", 1300s ), 1300s dict( 1300s source_address="171.45.194.186", 1300s routing_instance="rt2", 1300s ), 1300s ], 1300s threshold=dict(action="accept", value=300), 1300s trusted_keys=[dict(key_id=3000), dict(key_id=2000)], 1300s ), 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ntp_global.py:698: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ntp_global.py:1014: in main 1300s result = Ntp_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:102: in execute_module 1300s config_xmls = self.set_config(existing_ntp_global_facts) 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:140: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ntp_global/ntp_global.py:152: in set_state 1300s self.root = build_root_xml_node("system") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___________ TestJunosInterfacesModule.test_junos_interfaces_rendered ___________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_interfaces_rendered(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/1", 1300s description="This is configured with ansible resource module", 1300s mtu=1024, 1300s speed="100m", 1300s ), 1300s ], 1300s state="rendered", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ge-0/0/1" 1300s "This is configured with ansible resource module" 1300s "100m" 1300s "1024" 1300s "", 1300s ] 1300s > self.execute_module(changed=False, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_interfaces.py:255: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_interfaces.py:961: in main 1300s result = Interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:92: in execute_module 1300s config_xmls = self.set_config(existing_interfaces_facts) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___________ TestJunosOspfv3Module.test_junos_ospf_interfaces_delete ____________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospf_interfaces_delete(self): 1300s self.get_connection.return_value = load_fixture( 1300s "junos_ospf_interfaces_config.cfg", 1300s ) 1300s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[dict(router_id="10.200.16.75", name="ge-0/0/2.0")], 1300s state="deleted", 1300s ), 1300s ) 1300s 1300s commands = [ 1300s '', 1300s '', 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:303: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospf_interfaces.py:607: in main 1300s result = Ospf_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1300s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______ TestJunosOspfv3Module.test_junos_ospf_interfaces_delete_idempotent ______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospf_interfaces_delete_idempotent(self): 1300s set_module_args( 1300s dict( 1300s config=[dict(router_id="10.200.16.75", name="ge-0/0/2.0")], 1300s state="deleted", 1300s ), 1300s ) 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:313: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospf_interfaces.py:607: in main 1300s result = Ospf_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1300s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___________ TestJunosInterfacesModule.test_junos_interfaces_replaced ___________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_interfaces_replaced(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/2", 1300s description="This is configured with ansible", 1300s mtu=1024, 1300s speed="100m", 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_interfaces.py:147: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_interfaces.py:961: in main 1300s result = Interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1300s config_xmls = self.set_config(existing_interfaces_facts) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___________ TestJunosOspfv3Module.test_junos_ospf_interfaces_merged ____________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospf_interfaces_merged(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s name="ge-0/0/2.0", 1300s address_family=[ 1300s dict( 1300s afi="ipv4", 1300s processes=dict( 1300s area=dict(area_id="0.0.0.2"), 1300s priority=3, 1300s metric=5, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "0.0.0.2ge-0/0/2.0" 1300s "35", 1300s '' 1300s "10.200.16.75", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:129: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospf_interfaces.py:607: in main 1300s result = Ospf_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1300s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosInterfacesModule.test_junos_interfaces_replaced_idempotent ______ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_interfaces_replaced_idempotent(self): 1300s self.get_config.return_value = load_fixture( 1300s "junos_interfaces_config.xml", 1300s ) 1300s src = load_fixture("junos_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="ge-0/0/0", 1300s description="Configured by Ansi-Team", 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_interfaces.py:175: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_interfaces.py:961: in main 1300s result = Interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:99: in execute_module 1300s config_xmls = self.set_config(existing_interfaces_facts) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:135: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/interfaces/interfaces.py:147: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______ TestJunosOspfv3Module.test_junos_ospf_interfaces_merged_idempotent ______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospf_interfaces_merged_idempotent(self): 1300s self.get_connection.return_value = load_fixture( 1300s "junos_ospf_interfaces_config.cfg", 1300s ) 1300s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.77", 1300s name="so-0/0/0.0", 1300s address_family=[ 1300s dict( 1300s afi="ipv4", 1300s processes=dict( 1300s area=dict(area_id="0.0.0.10"), 1300s priority=3, 1300s metric=5, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:159: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospf_interfaces.py:607: in main 1300s result = Ospf_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1300s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_delete __________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l2_interfaces_delete(self): 1300s self.get_res_config.return_value = load_fixture( 1300s "junos_interfaces_config.xml", 1300s ) 1300s src = load_fixture("junos_l2_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args(dict(config=[dict(name="ge-0/0/1")], state="deleted")) 1300s commands = [ 1300s '' 1300s "ge-0/0/10" 1300s '' 1300s '' 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:234: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l2_interfaces.py:1057: in main 1300s result = L2_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1300s config_xmls = self.set_config(existing_l2_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________ TestJunosOspfv3Module.test_junos_ospf_interfaces_overridden __________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospf_interfaces_overridden(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s name="ge-0/0/2.0", 1300s address_family=[ 1300s dict( 1300s afi="ipv4", 1300s processes=dict( 1300s area=dict(area_id="0.0.0.1"), 1300s priority=6, 1300s metric=7, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "0.0.0.1ge-0/0/2.0" 1300s "67", 1300s '' 1300s "10.200.16.75", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:252: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospf_interfaces.py:607: in main 1300s result = Ospf_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1300s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosL2InterfacesModule.test_junos_l2_interfaces_delete_idempotent ____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l2_interfaces_delete_idempotent(self): 1300s set_module_args(dict(config=[dict(name="ge-0/0/3")], state="deleted")) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:239: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l2_interfaces.py:1057: in main 1300s result = L2_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1300s config_xmls = self.set_config(existing_l2_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosOspfv3Module.test_junos_ospf_interfaces_overridden_idempotent ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospf_interfaces_overridden_idempotent(self): 1300s self.get_connection.return_value = load_fixture( 1300s "junos_ospf_interfaces_config.cfg", 1300s ) 1300s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s name="ge-0/0/2.0", 1300s address_family=[ 1300s dict( 1300s afi="ipv4", 1300s processes=dict( 1300s area=dict(area_id="0.0.0.1"), 1300s priority=6, 1300s metric=7, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:283: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospf_interfaces.py:607: in main 1300s result = Ospf_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1300s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_merged __________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l2_interfaces_merged(self): 1300s set_module_args( 1300s dict( 1300s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"))], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ge-0/0/10" 1300s "access" 1300s "vlan100" 1300s "" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:109: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l2_interfaces.py:1057: in main 1300s result = L2_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1300s config_xmls = self.set_config(existing_l2_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosOspfv3Module.test_junos_ospf_interfaces_rendered ___________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospf_interfaces_rendered(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s name="ge-0/0/2.0", 1300s address_family=[ 1300s dict( 1300s afi="ipv4", 1300s processes=dict( 1300s area=dict(area_id="0.0.0.1"), 1300s priority=6, 1300s metric=7, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="rendered", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "0.0.0.1ge-0/0/2.0" 1300s "67", 1300s '' 1300s "10.200.16.75", 1300s ] 1300s > self.execute_module(changed=False, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:344: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospf_interfaces.py:607: in main 1300s result = Ospf_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:100: in execute_module 1300s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosL2InterfacesModule.test_junos_l2_interfaces_merged_idempotent ____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l2_interfaces_merged_idempotent(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 1300s dict( 1300s name="ge-0/0/2", 1300s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 1300s unit=0, 1300s enhanced_layer=True, 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:146: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l2_interfaces.py:1057: in main 1300s result = L2_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1300s config_xmls = self.set_config(existing_l2_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosOspfv3Module.test_junos_ospf_interfaces_replaced ___________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospf_interfaces_replaced(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s name="ge-0/0/2.0", 1300s address_family=[ 1300s dict( 1300s afi="ipv4", 1300s processes=dict( 1300s area=dict(area_id="0.0.0.1"), 1300s priority=6, 1300s metric=7, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:183: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospf_interfaces.py:607: in main 1300s result = Ospf_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1300s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______ TestJunosL2InterfacesModule.test_junos_l2_interfaces_overridden ________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l2_interfaces_overridden(self): 1300s set_module_args( 1300s dict( 1300s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"), enhanced_layer=False)], 1300s state="overridden", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ge-0/0/10" 1300s "access" 1300s "vlan100" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:199: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l2_interfaces.py:1057: in main 1300s result = L2_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1300s config_xmls = self.set_config(existing_l2_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosOspfv3Module.test_junos_ospf_interfaces_replaced_idempotent _____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospf_interfaces_replaced_idempotent(self): 1300s self.get_connection.return_value = load_fixture( 1300s "junos_ospf_interfaces_config.cfg", 1300s ) 1300s src = load_fixture("junos_ospf_interfaces.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s name="ge-0/0/2.0", 1300s address_family=[ 1300s dict( 1300s afi="ipv4", 1300s processes=dict( 1300s area=dict(area_id="0.0.0.1"), 1300s priority=6, 1300s metric=7, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospf_interfaces.py:221: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospf_interfaces.py:607: in main 1300s result = Ospf_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:107: in execute_module 1300s config_xmls = self.set_config(existing_ospf_interfaces_facts) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospf_interfaces/ospf_interfaces.py:157: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosL2InterfacesModule.test_junos_l2_interfaces_overridden_idempotent __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l2_interfaces_overridden_idempotent(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 1300s dict( 1300s name="ge-0/0/2", 1300s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 1300s unit=0, 1300s enhanced_layer=True, 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:217: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l2_interfaces.py:1057: in main 1300s result = L2_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1300s config_xmls = self.set_config(existing_l2_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______________ TestJunosOspfv2Module.test_junos_ospfv2_deleted ________________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv2_deleted(self): 1300s set_module_args( 1300s dict( 1300s config=[], 1300s state="deleted", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s '0.0.0.1000.0.0.200' 1300s '' 1300s '' 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv2.py:585: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv2.py:1168: in main 1300s result = Ospfv2(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospf_facts) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_rendered _________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l2_interfaces_rendered(self): 1300s set_module_args( 1300s dict( 1300s config=[dict(name="ge-0/0/4", access=dict(vlan="vlan100"))], 1300s state="rendered", 1300s ), 1300s ) 1300s rendered = ( 1300s '' 1300s "ge-0/0/40" 1300s "access" 1300s "vlan100" 1300s "" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:315: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l2_interfaces.py:1057: in main 1300s result = L2_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:99: in execute_module 1300s config_xmls = self.set_config(existing_l2_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________ TestJunosL2InterfacesModule.test_junos_l2_interfaces_replaced _________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l2_interfaces_replaced(self): 1300s set_module_args( 1300s dict( 1300s config=[dict(name="ge-0/0/1", access=dict(vlan="vlan100"), enhanced_layer=False)], 1300s state="replaced", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "ge-0/0/10" 1300s "access" 1300s "vlan100" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:163: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l2_interfaces.py:1057: in main 1300s result = L2_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1300s config_xmls = self.set_config(existing_l2_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________________ TestJunosOspfv2Module.test_junos_ospfv2_merged ________________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv2_merged(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s rfc1583compatibility="False", 1300s external_preference=10, 1300s overload=dict( 1300s allow_route_leaking=True, 1300s as_external=True, 1300s stub_network=True, 1300s timeout=1200, 1300s ), 1300s spf_options=dict( 1300s delay=3000, 1300s holddown=4000, 1300s rapid_runs=9, 1300s no_ignore_our_externals=True, 1300s ), 1300s prefix_export_limit=30000, 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s area_ranges=[ 1300s dict( 1300s address="10.200.17.0/24", 1300s exact=True, 1300s restrict=True, 1300s override_metric=2000, 1300s ), 1300s ], 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s flood_reduction=False, 1300s passive=True, 1300s bandwidth_based_metrics=[ 1300s dict( 1300s bandwidth="1g", 1300s metric=5, 1300s ), 1300s ], 1300s timers=dict( 1300s dead_interval=4, 1300s hello_interval=2, 1300s poll_interval=2, 1300s retransmit_interval=2, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "30004000" 1300s "9" 1300s "1200" 1300s "10" 1300s "30000" 1300s "" 1300s "0.0.0.10010.200.17.0/24" 1300s "2000" 1300s "so-0/0/0.035" 1300s "1g5" 1300s "42" 1300s "22" 1300s "200", 1300s '' 1300s "10.200.16.75", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv2.py:188: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv2.py:1168: in main 1300s result = Ospfv2(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospf_facts) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosL2InterfacesModule.test_junos_l2_interfaces_replaced_idempotent ___ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_l2_interfaces_replaced_idempotent(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict(name="ge-0/0/1", access=dict(vlan="vlan100"), unit=0, enhanced_layer=True), 1300s dict( 1300s name="ge-0/0/2", 1300s trunk=dict(allowed_vlans=["vlan200", "vlan300"], native_vlan="400"), 1300s unit=0, 1300s enhanced_layer=True, 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_l2_interfaces.py:182: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_l2_interfaces.py:1057: in main 1300s result = L2_interfaces(module).execute_module() 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:106: in execute_module 1300s config_xmls = self.set_config(existing_l2_interfaces_facts) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/l2_interfaces/l2_interfaces.py:154: in set_state 1300s root = build_root_xml_node("interfaces") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____________ TestJunosOspfv2Module.test_junos_ospfv2_merged_areas _____________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv2_merged_areas(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s area_ranges=[ 1300s dict( 1300s address="10.200.17.0/24", 1300s ), 1300s dict( 1300s address="10.200.18.0/24", 1300s ), 1300s ], 1300s interfaces=[ 1300s dict( 1300s name="so-0/1/0.0", 1300s bandwidth_based_metrics=[ 1300s dict( 1300s bandwidth="1g", 1300s metric=5, 1300s ), 1300s dict( 1300s bandwidth="10g", 1300s metric=5, 1300s ), 1300s ], 1300s ), 1300s dict( 1300s name="so-0/1/0.0", 1300s priority=3, 1300s ), 1300s ], 1300s ), 1300s dict( 1300s area_id="0.0.0.200", 1300s area_range="10.200.20.0/24", 1300s interfaces=[ 1300s dict( 1300s name="so-0/1/0.0", 1300s bandwidth_based_metrics=[ 1300s dict( 1300s bandwidth="1g", 1300s metric=5, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "0.0.0.100" 1300s "10.200.17.0/24" 1300s "10.200.18.0/24" 1300s "so-0/1/0.0" 1300s "1g5" 1300s "10g5" 1300s "so-0/1/0.03" 1300s "200" 1300s "0.0.0.20010.200.20.0/24" 1300s "so-0/1/0.0" 1300s "1g5" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv2.py:264: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv2.py:1168: in main 1300s result = Ospfv2(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospf_facts) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________ TestJunosOspfv3Module.test_junos_ospfv3_overridden_idempotent _________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv3_overridden_idempotent(self): 1300s self.get_connection.return_value = load_fixture( 1300s "junos_ospfv3_config.cfg", 1300s ) 1300s src = load_fixture("junos_ospfv3.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="30", 1300s areas=[ 1300s dict( 1300s area_id="100", 1300s stub=dict(default_metric=10, set=True), 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv3.py:303: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv3.py:748: in main 1300s result = Ospfv3(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospfv3_facts) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______________ TestJunosOspfv2Module.test_junos_ospfv2_overridden ______________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv2_overridden(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s rfc1583compatibility="False", 1300s external_preference=10, 1300s overload=dict( 1300s allow_route_leaking=True, 1300s as_external=True, 1300s stub_network=True, 1300s timeout=1200, 1300s ), 1300s spf_options=dict( 1300s delay=3000, 1300s holddown=4000, 1300s rapid_runs=9, 1300s no_ignore_our_externals=True, 1300s ), 1300s prefix_export_limit=30000, 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s area_ranges=[ 1300s dict( 1300s address="10.200.17.0/24", 1300s exact=True, 1300s restrict=True, 1300s override_metric=2000, 1300s ), 1300s ], 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s flood_reduction=False, 1300s passive=True, 1300s bandwidth_based_metrics=[ 1300s dict( 1300s bandwidth="1g", 1300s metric=5, 1300s ), 1300s ], 1300s timers=dict( 1300s dead_interval=4, 1300s hello_interval=2, 1300s poll_interval=2, 1300s retransmit_interval=2, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s '0.0.0.100' 1300s '0.0.0.200' 1300s '' 1300s '' 1300s '' 1300s "30004000" 1300s "9" 1300s "1200" 1300s "" 1300s "10" 1300s "30000" 1300s "0.0.0.100" 1300s "10.200.17.0/24" 1300s "2000" 1300s "so-0/0/0.035" 1300s "" 1300s "1g5" 1300s "42" 1300s "22" 1300s "200" 1300s "", 1300s '' 1300s "10.200.16.75", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv2.py:568: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv2.py:1168: in main 1300s result = Ospfv2(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospf_facts) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______________ TestJunosOspfv3Module.test_junos_ospfv3_rendered _______________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv3_rendered(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="rendered", 1300s ), 1300s ) 1300s commands = ( 1300s '' 1300s "0.0.0.100so-0/0/0.0" 1300s "35" 1300s "200" 1300s ) 1300s > self.execute_module(changed=False, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv3.py:403: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv3.py:748: in main 1300s result = Ospfv3(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:106: in execute_module 1300s config_xmls = self.set_config(existing_ospfv3_facts) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______________ TestJunosOspfv2Module.test_junos_ospfv2_rendered _______________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv2_rendered(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s rfc1583compatibility="False", 1300s external_preference=10, 1300s overload=dict( 1300s allow_route_leaking=True, 1300s as_external=True, 1300s stub_network=True, 1300s timeout=1200, 1300s ), 1300s spf_options=dict( 1300s delay=3000, 1300s holddown=4000, 1300s rapid_runs=9, 1300s no_ignore_our_externals=True, 1300s ), 1300s prefix_export_limit=30000, 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s area_ranges=[ 1300s dict( 1300s address="10.200.17.0/24", 1300s exact=True, 1300s restrict=True, 1300s override_metric=2000, 1300s ), 1300s ], 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s flood_reduction=False, 1300s passive=True, 1300s bandwidth_based_metrics=[ 1300s dict( 1300s bandwidth="1g", 1300s metric=5, 1300s ), 1300s ], 1300s timers=dict( 1300s dead_interval=4, 1300s hello_interval=2, 1300s poll_interval=2, 1300s retransmit_interval=2, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="rendered", 1300s ), 1300s ) 1300s rendered = ( 1300s '' 1300s "30004000" 1300s "9" 1300s "1200" 1300s "" 1300s "10" 1300s "30000" 1300s "0.0.0.100" 1300s "10.200.17.0/24" 1300s "2000" 1300s "so-0/0/0.0" 1300s "35" 1300s "1g" 1300s "5" 1300s "42" 1300s "2" 1300s "2" 1300s "200" 1300s "" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv2.py:807: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv2.py:1168: in main 1300s result = Ospfv2(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:106: in execute_module 1300s config_xmls = self.set_config(existing_ospf_facts) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______________ TestJunosOspfv3Module.test_junos_ospfv3_replaced _______________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv3_replaced(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv3.py:189: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv3.py:748: in main 1300s result = Ospfv3(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospfv3_facts) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______________ TestJunosOspfv2Module.test_junos_ospfv2_replaced _______________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv2_replaced(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s rfc1583compatibility="False", 1300s external_preference=10, 1300s overload=dict( 1300s allow_route_leaking=True, 1300s as_external=True, 1300s stub_network=True, 1300s timeout=1200, 1300s ), 1300s spf_options=dict( 1300s delay=3000, 1300s holddown=4000, 1300s rapid_runs=9, 1300s no_ignore_our_externals=True, 1300s ), 1300s prefix_export_limit=30000, 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s area_ranges=[ 1300s dict( 1300s address="10.200.17.0/24", 1300s exact=True, 1300s restrict=True, 1300s override_metric=2000, 1300s ), 1300s ], 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s flood_reduction=False, 1300s passive=True, 1300s bandwidth_based_metrics=[ 1300s dict( 1300s bandwidth="1g", 1300s metric=5, 1300s ), 1300s ], 1300s timers=dict( 1300s dead_interval=4, 1300s hello_interval=2, 1300s poll_interval=2, 1300s retransmit_interval=2, 1300s ), 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s '0.0.0.1000.0.0.200' 1300s '' 1300s '' 1300s '' 1300s "300040009" 1300s "1200" 1300s "" 1300s "1030000" 1300s "0.0.0.10010.200.17.0/24" 1300s "2000" 1300s "so-0/0/0.035" 1300s "1g5" 1300s "42" 1300s "22" 1300s "200", 1300s '' 1300s "10.200.16.75", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv2.py:478: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv2.py:1168: in main 1300s result = Ospfv2(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospf_facts) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv2/ospfv2.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________ TestJunosOspfv3Module.test_junos_ospfv3_replaced_idempotent __________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv3_replaced_idempotent(self): 1300s self.get_connection.return_value = load_fixture( 1300s "junos_ospfv3_config.cfg", 1300s ) 1300s src = load_fixture("junos_ospfv3.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="30", 1300s areas=[ 1300s dict( 1300s area_id="100", 1300s stub=dict(default_metric=10, set=True), 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv3.py:235: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv3.py:748: in main 1300s result = Ospfv3(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospfv3_facts) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________________ TestJunosOspfv3Module.test_junos_ospfv3_delete ________________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv3_delete(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s interfaces=[dict(name="so-0/0/0.0")], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="deleted", 1300s ), 1300s ) 1300s 1300s commands = [ 1300s '' 1300s "0.0.0.100so-0/0/0.0" 1300s "200", 1300s '' 1300s "10.200.16.75", 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv3.py:332: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv3.py:748: in main 1300s result = Ospfv3(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospfv3_facts) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosOspfv3Module.test_junos_ospfv3_delete_idempotent ___________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv3_delete_idempotent(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.70", 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s interfaces=[dict(name="so-0/0/0.0")], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="deleted", 1300s ), 1300s ) 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv3.py:353: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv3.py:748: in main 1300s result = Ospfv3(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospfv3_facts) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________________ TestJunosOspfv3Module.test_junos_ospfv3_merged ________________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv3_merged(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "0.0.0.100so-0/0/0.0" 1300s "35" 1300s "200", 1300s '' 1300s "10.200.16.75", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv3.py:131: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv3.py:748: in main 1300s result = Ospfv3(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospfv3_facts) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosOspfv3Module.test_junos_ospfv3_merged_idempotent ___________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv3_merged_idempotent(self): 1300s self.get_connection.return_value = load_fixture( 1300s "junos_ospfv3_config.cfg", 1300s ) 1300s src = load_fixture("junos_ospfv3.cfg", content="str") 1300s set_module_args(dict(src=src)) 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="30", 1300s areas=[ 1300s dict( 1300s area_id="100", 1300s stub=dict(default_metric=10, set=True), 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s > self.execute_module(changed=False, commands=[]) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv3.py:163: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv3.py:748: in main 1300s result = Ospfv3(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospfv3_facts) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosRouting_instancesModule.test_junos_routing_instances_domains_merged _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_domains_merged(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="EVPN", 1300s type="virtual-switch", 1300s route_distinguisher="10.0.0.21:444", 1300s bridge_domains=[ 1300s dict( 1300s name="BD456", 1300s vlan_id=456, 1300s enable_mac_move_action=True, 1300s mcae_mac_flush=True, 1300s no_local_switching=True, 1300s service_id=20, 1300s ), 1300s dict( 1300s name="BD457", 1300s vlan_id=457, 1300s ), 1300s ], 1300s ), 1300s dict( 1300s name="mgmt_junos", 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "EVPN" 1300s "virtual-switch" 1300s "" 1300s "BD456" 1300s "20" 1300s "456" 1300s "" 1300s "" 1300s "" 1300s "" 1300s "BD457" 1300s "457" 1300s "10.0.0.21:444" 1300s "mgmt_junos", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:145: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______________ TestJunosOspfv3Module.test_junos_ospfv3_overridden ______________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ospfv3_overridden(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s router_id="10.200.16.75", 1300s areas=[ 1300s dict( 1300s area_id="0.0.0.100", 1300s stub=dict(default_metric=200, set=True), 1300s interfaces=[ 1300s dict( 1300s name="so-0/0/0.0", 1300s priority=3, 1300s metric=5, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "0.0.0.100so-0/0/0.0" 1300s "3" 1300s "5" 1300s "200", 1300s '' 1300s "10.200.16.75", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_ospfv3.py:270: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_ospfv3.py:748: in main 1300s result = Ospfv3(module).execute_module() 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:113: in execute_module 1300s config_xmls = self.set_config(existing_ospfv3_facts) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:150: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/ospfv3/ospfv3.py:163: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosRouting_instancesModule.test_junos_routing_instances_merged _____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_merged(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="test", 1300s type="vrf", 1300s route_distinguisher="10.58.255.1:37", 1300s vrf_imports=["test-policy"], 1300s vrf_exports=["test-policy", "test-policy-1"], 1300s interfaces=[ 1300s dict(name="sp-0/0/0.0"), 1300s dict(name="gr-0/0/0.0"), 1300s ], 1300s connector_id_advertise=True, 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "test" 1300s "vrfsp-0/0/0.0" 1300s "gr-0/0/0.0" 1300s "10.58.255.1:37" 1300s "test-policy" 1300s "test-policytest-policy-1" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:178: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosRouting_instancesModule.test_junos_routing_instances_merged_idempotent _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_merged_idempotent(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="forwardinst", 1300s type="forwarding", 1300s description="Configured by Ansible Content Team", 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:194: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________ TestJunosPrefix_listsModule.test_junos_prefix_lists_merged_01 _________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_prefix_lists_merged_01(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="Internal", 1300s address_prefixes=["172.16.1.32", "172.16.3.32"], 1300s ), 1300s dict(name="Test1", dynamic_db=True), 1300s dict( 1300s name="Test2", 1300s address_prefixes=[ 1300s "172.16.2.32", 1300s "172.16.7.32", 1300s "172.16.9.32", 1300s ], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "Internal" 1300s "172.16.1.32" 1300s "172.16.3.32" 1300s "" 1300s "Test1" 1300s "Test2" 1300s "172.16.2.32" 1300s "172.16.7.32" 1300s "" 1300s "172.16.9.32" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_prefix_lists.py:125: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_prefix_lists.py:653: in main 1300s result = Prefix_lists(module).execute_module() 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1300s config_xmls = self.set_config(existing_prefix_lists_facts) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1300s self.root = build_root_xml_node("policy-options") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosPrefix_listsModule.test_junos_prefix_lists_merged_idempotent_01 ___ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_prefix_lists_merged_idempotent_01(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict(name="customer_64510"), 1300s dict( 1300s name="customer_64500", 1300s dynamic_db=True, 1300s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 1300s ), 1300s ], 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_prefix_lists.py:142: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_prefix_lists.py:653: in main 1300s result = Prefix_lists(module).execute_module() 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1300s config_xmls = self.set_config(existing_prefix_lists_facts) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1300s self.root = build_root_xml_node("policy-options") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosRouting_instancesModule.test_junos_routing_instances_overridden ___ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_overridden(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="test1", 1300s type="vrf", 1300s route_distinguisher="10.58.255.1:37", 1300s vrf_imports=["test-policy"], 1300s vrf_exports=["test-policy", "test-policy-1"], 1300s interfaces=[ 1300s dict(name="sp-0/0/0.0"), 1300s dict(name="gr-0/0/0.0"), 1300s ], 1300s connector_id_advertise=True, 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s 1300s commands = [ 1300s '' 1300s 'forwardinst' 1300s "test1" 1300s "vrfsp-0/0/0.0" 1300s "gr-0/0/0.0" 1300s "10.58.255.1:37" 1300s "test-policytest-policy" 1300s "test-policy-1", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:293: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______ TestJunosPrefix_listsModule.test_junos_prefix_lists_overridden_01 _______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_prefix_lists_overridden_01(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="customer_65500", 1300s address_prefixes=["172.16.2.16/28", "172.16.1.32/28"], 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s 'customer_64510' 1300s 'customer_64500' 1300s "customer_65500" 1300s "172.16.2.16/28" 1300s "172.16.1.32/28" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_prefix_lists.py:217: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_prefix_lists.py:653: in main 1300s result = Prefix_lists(module).execute_module() 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1300s config_xmls = self.set_config(existing_prefix_lists_facts) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1300s self.root = build_root_xml_node("policy-options") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosRouting_instancesModule.test_junos_routing_instances_overridden_idempotent _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_overridden_idempotent(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="forwardinst", 1300s type="forwarding", 1300s description="Configured by Ansible Content Team", 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:309: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosPrefix_listsModule.test_junos_prefix_lists_overridden_idempotent_01 _ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_prefix_lists_overridden_idempotent_01(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict(name="customer_64510"), 1300s dict( 1300s name="customer_64500", 1300s dynamic_db=True, 1300s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 1300s ), 1300s ], 1300s state="overridden", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_prefix_lists.py:234: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_prefix_lists.py:653: in main 1300s result = Prefix_lists(module).execute_module() 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1300s config_xmls = self.set_config(existing_prefix_lists_facts) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1300s self.root = build_root_xml_node("policy-options") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_rendered ____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_rendered(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="test", 1300s type="vrf", 1300s route_distinguisher="10.58.255.1:37", 1300s vrf_imports=["test-policy"], 1300s vrf_exports=["test-policy", "test-policy-1"], 1300s interfaces=[ 1300s dict(name="sp-0/0/0.0"), 1300s dict(name="gr-0/0/0.0"), 1300s ], 1300s connector_id_advertise=True, 1300s ), 1300s ], 1300s state="rendered", 1300s ), 1300s ) 1300s 1300s rendered = ( 1300s '' 1300s "test" 1300s "vrfsp-0/0/0.0" 1300s "gr-0/0/0.0" 1300s "10.58.255.1:37" 1300s "test-policy" 1300s "test-policytest-policy-1" 1300s "" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:346: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:97: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______ TestJunosPrefix_listsModule.test_junos_prefix_lists_rendered_01 ________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_prefix_lists_rendered_01(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="Internal", 1300s address_prefixes=["172.16.1.32", "172.16.3.32"], 1300s ), 1300s dict(name="Test1", dynamic_db=True), 1300s dict( 1300s name="Test2", 1300s address_prefixes=[ 1300s "172.16.2.32", 1300s "172.16.7.32", 1300s "172.16.9.32", 1300s ], 1300s ), 1300s ], 1300s state="rendered", 1300s ), 1300s ) 1300s 1300s rendered = ( 1300s '' 1300s "Internal" 1300s "172.16.1.32" 1300s "172.16.3.32" 1300s "" 1300s "Test1" 1300s "Test2" 1300s "172.16.2.32" 1300s "172.16.7.32" 1300s "" 1300s "172.16.9.32" 1300s "" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_prefix_lists.py:326: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_prefix_lists.py:653: in main 1300s result = Prefix_lists(module).execute_module() 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:96: in execute_module 1300s config_xmls = self.set_config(existing_prefix_lists_facts) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1300s self.root = build_root_xml_node("policy-options") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosRouting_instancesModule.test_junos_routing_instances_rendered_02 ___ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_rendered_02(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="test", 1300s type="mac-vrf", 1300s route_distinguisher="10.58.255.1:37", 1300s vrf_imports=["test-policy"], 1300s vrf_exports=["test-policy", "test-policy-1"], 1300s interfaces=[ 1300s dict(name="sp-0/0/0.0"), 1300s dict(name="gr-0/0/0.0"), 1300s ], 1300s connector_id_advertise=True, 1300s ), 1300s ], 1300s state="rendered", 1300s ), 1300s ) 1300s 1300s rendered = ( 1300s '' 1300s "test" 1300s "mac-vrfsp-0/0/0.0" 1300s "gr-0/0/0.0" 1300s "10.58.255.1:37" 1300s "test-policy" 1300s "test-policytest-policy-1" 1300s "" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:383: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:97: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______ TestJunosPrefix_listsModule.test_junos_prefix_lists_replaced_01 ________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_prefix_lists_replaced_01(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="customer_64510", 1300s address_prefixes=["172.16.1.32/28", "172.16.3.32/28"], 1300s ), 1300s dict( 1300s name="customer_64500", 1300s address_prefixes=["172.16.2.16/28", "172.16.1.32/28"], 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s 'customer_64510' 1300s '' 1300s "customer_64500" 1300s "customer_64510" 1300s "172.16.1.32/28" 1300s "" 1300s "172.16.3.32/28" 1300s "customer_64500" 1300s "172.16.2.16/28" 1300s "172.16.1.32/28" 1300s "", 1300s ] 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_prefix_lists.py:176: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_prefix_lists.py:653: in main 1300s result = Prefix_lists(module).execute_module() 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1300s config_xmls = self.set_config(existing_prefix_lists_facts) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1300s self.root = build_root_xml_node("policy-options") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_replaced ____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_replaced(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="test", 1300s type="vrf", 1300s route_distinguisher="10.58.255.1:37", 1300s vrf_imports=["test-policy"], 1300s vrf_exports=["test-policy", "test-policy-1"], 1300s interfaces=[ 1300s dict(name="sp-0/0/0.0"), 1300s dict(name="gr-0/0/0.0"), 1300s ], 1300s connector_id_advertise=True, 1300s ), 1300s dict( 1300s name="forwardinst", 1300s type="forwarding", 1300s description="Replaced and Configured by Ansible Content Team", 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s 1300s commands = [ 1300s '' 1300s 'forwardinst' 1300s "test" 1300s "vrfsp-0/0/0.0" 1300s "gr-0/0/0.0" 1300s "10.58.255.1:37" 1300s "test-policy" 1300s "test-policytest-policy-1" 1300s "forwardinst" 1300s "Replaced and Configured by Ansible Content Team" 1300s "forwarding" 1300s "", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:240: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosRouting_instancesModule.test_junos_routing_instances_replaced_idempotent _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_replaced_idempotent(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict( 1300s name="forwardinst", 1300s type="forwarding", 1300s description="Configured by Ansible Content Team", 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:256: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosPrefix_listsModule.test_junos_prefix_lists_replaced_idempotent_01 __ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_prefix_lists_replaced_idempotent_01(self): 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict(name="customer_64510"), 1300s dict( 1300s name="customer_64500", 1300s dynamic_db=True, 1300s address_prefixes=["172.16.1.16/28", "172.16.1.32/28"], 1300s ), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_prefix_lists.py:193: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_prefix_lists.py:653: in main 1300s result = Prefix_lists(module).execute_module() 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:104: in execute_module 1300s config_xmls = self.set_config(existing_prefix_lists_facts) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:141: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/prefix_lists/prefix_lists.py:152: in set_state 1300s self.root = build_root_xml_node("policy-options") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosRouting_optionsModule.test_junos_routing_options_merged_01 ______ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_options_merged_01(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s autonomous_system=dict( 1300s as_number="2", 1300s loops=4, 1300s asdot_notation=True, 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_options.py:103: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_options.py:397: in main 1300s result = Routing_options(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1300s config_xmls = self.set_config(existing_routing_options_facts) 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosRouting_instancesModule.test_junos_routing_instances_deleted _____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_deleted(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args(dict(config=[], state="deleted")) 1300s 1300s commands = [ 1300s '' 1300s '', 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:411: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosRouting_optionsModule.test_junos_routing_options_merged_idempotent __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_options_merged_idempotent(self): 1300s self.execute_show_command.return_value = load_fixture( 1300s "junos_routing_options_config.cfg", 1300s ) 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s router_id="12.12.12.13", 1300s autonomous_system=dict(as_number="1"), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_options.py:122: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_options.py:397: in main 1300s result = Routing_options(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1300s config_xmls = self.set_config(existing_routing_options_facts) 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosRouting_optionsModule.test_junos_routing_options_overridden _____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_options_overridden(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s autonomous_system=dict( 1300s as_number="1", 1300s loops=4, 1300s asdot_notation=True, 1300s ), 1300s ), 1300s state="overridden", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_options.py:207: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_options.py:397: in main 1300s result = Routing_options(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1300s config_xmls = self.set_config(existing_routing_options_facts) 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosRouting_instancesModule.test_junos_routing_instances_delted_single_entry _ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_instances_delted_single_entry(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict(config=[dict(name="forwardinst")], state="deleted"), 1300s ) 1300s 1300s commands = [ 1300s '' 1300s 'forwardinst', 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_instances.py:426: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_instances.py:796: in main 1300s result = Routing_instances(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:105: in execute_module 1300s config_xmls = self.set_config(existing_routing_instances_facts) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:143: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_instances/routing_instances.py:155: in set_state 1300s self.root = build_root_xml_node("routing-instances") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______ TestJunosRouting_optionsModule.test_junos_routing_options_rendered ______ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_options_rendered(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s autonomous_system=dict( 1300s as_number="2", 1300s loops=4, 1300s asdot_notation=True, 1300s ), 1300s router_id="12.12.12.12", 1300s ), 1300s state="rendered", 1300s ), 1300s ) 1300s rendered = ( 1300s '' 1300s "24" 1300s "12.12.12.12" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_options.py:191: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_options.py:397: in main 1300s result = Routing_options(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:100: in execute_module 1300s config_xmls = self.set_config(existing_routing_options_facts) 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosRouting_optionsModule.test_junos_routing_options_replaced_01 _____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_routing_options_replaced_01(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s autonomous_system=dict( 1300s as_number="1", 1300s loops=4, 1300s asdot_notation=True, 1300s ), 1300s ), 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_routing_options.py:166: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_routing_options.py:397: in main 1300s result = Routing_options(module).execute_module() 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:106: in execute_module 1300s config_xmls = self.set_config(existing_routing_options_facts) 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:144: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/routing_options/routing_options.py:156: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosSecurity_policiesModule.test_junos_security_policies_merged_01 ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_merged_01(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "from_zones": [ 1300s { 1300s "name": "one", 1300s "to_zones": [ 1300s { 1300s "name": "two", 1300s "policies": [ 1300s { 1300s "match": { 1300s "application": { 1300s "names": [ 1300s "junos-dhcp-relay", 1300s "junos-finger", 1300s ], 1300s }, 1300s "destination_address": { 1300s "addresses": ["a2", "a4"], 1300s }, 1300s "destination_address_excluded": True, 1300s "dynamic_application": { 1300s "any": True, 1300s }, 1300s "source_address": { 1300s "addresses": ["a1", "a3"], 1300s }, 1300s "source_address_excluded": True, 1300s "source_end_user_profile": "test_end_user_profile", 1300s "source_identity": { 1300s "unknown_user": True, 1300s }, 1300s "url_category": { 1300s "names": [ 1300s "Enhanced_Web_Chat", 1300s "Enhanced_Web_Collaboration", 1300s ], 1300s }, 1300s }, 1300s "name": "test_policy_1", 1300s "then": { 1300s "count": True, 1300s "deny": True, 1300s "log": {"session_close": True}, 1300s }, 1300s }, 1300s { 1300s "match": { 1300s "application": { 1300s "names": [ 1300s "junos-dhcp-relay", 1300s ], 1300s }, 1300s "destination_address": { 1300s "addresses": ["a2"], 1300s }, 1300s "source_address": { 1300s "addresses": ["a1"], 1300s }, 1300s }, 1300s "name": "test_policy_2", 1300s "then": { 1300s "reject": { 1300s "enable": True, 1300s "profile": "test_dyn_app", 1300s "ssl_proxy": { 1300s "enable": True, 1300s "profile_name": "SECURITY-SSL-PROXY", 1300s }, 1300s }, 1300s }, 1300s }, 1300s ], 1300s }, 1300s { 1300s "name": "three", 1300s "policies": [ 1300s { 1300s "match": { 1300s "application": { 1300s "names": [ 1300s "junos-dhcp-relay", 1300s ], 1300s }, 1300s "destination_address": { 1300s "addresses": ["a2"], 1300s }, 1300s "source_address": { 1300s "addresses": ["a1"], 1300s }, 1300s }, 1300s "name": "test_policy_3", 1300s "then": { 1300s "permit": { 1300s "destination_address": "drop-translated", 1300s "application_services": { 1300s "advanced_anti_malware_policy": "test_anti_malware", 1300s "application_traffic_control_rule_set": "test_traffic_control", 1300s "gprs_gtp_profile": "gtp1", 1300s "gprs_sctp_profile": "sctp1", 1300s "icap_redirect": "test_icap", 1300s "idp_policy": "test_idp", 1300s "reverse_redirect_wx": True, 1300s "ssl_proxy": { 1300s "enable": True, 1300s "profile_name": "SECURITY-SSL-PROXY", 1300s }, 1300s "uac_policy": { 1300s "enable": True, 1300s }, 1300s "utm_policy": "test_utm", 1300s }, 1300s "firewall_authentication": { 1300s "pass_through": { 1300s "access_profile": "WEBAUTH", 1300s "auth_only_browser": True, 1300s "auth_user_agent": "Opera1", 1300s "client_match": "test-client", 1300s "ssl_termination_profile": "test_ssl_term", 1300s "web_redirect": True, 1300s "web_redirect_to_https": True, 1300s }, 1300s "push_to_identity_management": True, 1300s "user_firewall": { 1300s "access_profile": "WEBAUTH", 1300s "auth_only_browser": True, 1300s "auth_user_agent": "Opera1", 1300s "ssl_termination_profile": "test_ssl_term", 1300s "web_redirect": True, 1300s "web_redirect_to_https": True, 1300s }, 1300s "web_authentication": [ 1300s "FWClient1", 1300s "FWClient2", 1300s ], 1300s }, 1300s "tcp_options": { 1300s "initial_tcp_mss": 64, 1300s "reverse_tcp_mss": 64, 1300s "window_scale": True, 1300s }, 1300s }, 1300s }, 1300s }, 1300s ], 1300s }, 1300s ], 1300s }, 1300s ], 1300s "global": { 1300s "policies": [ 1300s { 1300s "match": { 1300s "application": { 1300s "names": ["junos-dhcp-relay"], 1300s }, 1300s "destination_address": { 1300s "addresses": ["a2"], 1300s }, 1300s "source_address": {"addresses": ["a1"]}, 1300s }, 1300s "name": "test_glob_1", 1300s "then": {"deny": True}, 1300s }, 1300s { 1300s "match": { 1300s "application": { 1300s "names": ["junos-dhcp-relay"], 1300s }, 1300s "destination_address": { 1300s "addresses": ["a2"], 1300s }, 1300s "source_address": {"addresses": ["a1"]}, 1300s }, 1300s "name": "test_glob_2", 1300s "then": {"deny": True}, 1300s }, 1300s ], 1300s }, 1300s }, 1300s state="merged", 1300s ), 1300s ) 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies.py:295: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies.py:2700: in main 1300s result = Security_policies(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1300s config_xmls = self.set_config(existing_security_policies_facts) 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosSecurity_policiesModule.test_junos_security_policies_merged_02 ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_merged_02(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "from_zones": [ 1300s { 1300s "name": "one", 1300s "to_zones": [ 1300s { 1300s "name": "two", 1300s "policies": [ 1300s { 1300s "match": { 1300s "application": {"any": True}, 1300s "destination_address": { 1300s "any_ipv4": True, 1300s "any_ipv6": True, 1300s "any": True, 1300s }, 1300s "dynamic_application": { 1300s "names": [ 1300s "test1", 1300s "test2", 1300s ], 1300s "none": True, 1300s }, 1300s "source_address": { 1300s "any_ipv4": True, 1300s "any_ipv6": True, 1300s "any": True, 1300s }, 1300s "source_identity": { 1300s "unknown_user": True, 1300s "unauthenticated_user": True, 1300s "authenticated_user": True, 1300s "names": ["test1"], 1300s }, 1300s "url_category": { 1300s "any": True, 1300s "none": True, 1300s }, 1300s }, 1300s "name": "test_policy_1", 1300s "then": { 1300s "count": True, 1300s "deny": True, 1300s "log": {"session_init": True}, 1300s }, 1300s }, 1300s ], 1300s }, 1300s { 1300s "name": "three", 1300s "policies": [ 1300s { 1300s "match": { 1300s "application": { 1300s "names": [ 1300s "junos-dhcp-relay", 1300s ], 1300s }, 1300s "destination_address": { 1300s "any": True, 1300s }, 1300s "source_address": { 1300s "any": True, 1300s }, 1300s }, 1300s "name": "test_policy_3", 1300s "then": { 1300s "permit": { 1300s "application_services": { 1300s "idp": True, 1300s "redirect_wx": True, 1300s "uac_policy": { 1300s "captive_portal": "test", 1300s }, 1300s }, 1300s "firewall_authentication": { 1300s "user_firewall": { 1300s "domain": "test", 1300s }, 1300s }, 1300s "destination_address": "drop-untranslated", 1300s "tunnel": { 1300s "ipsec_vpn": "test_vpn", 1300s "pair_policy": "test_policy", 1300s }, 1300s }, 1300s }, 1300s }, 1300s ], 1300s }, 1300s ], 1300s }, 1300s ], 1300s }, 1300s state="merged", 1300s ), 1300s ) 1300s 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies.py:450: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies.py:2700: in main 1300s result = Security_policies(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1300s config_xmls = self.set_config(existing_security_policies_facts) 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_overridden_01 _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_global_overridden_01(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "default_policy": "permit-all", 1300s "policy_rematch": {"enable": True, "extensive": True}, 1300s "policy_stats": {"enable": True, "system_wide": True}, 1300s "pre_id_default_policy_action": { 1300s "log": {"session_init": True}, 1300s "session_timeout": {"icmp": 10, "others": 10}, 1300s }, 1300s "traceoptions": { 1300s "file": { 1300s "files": 3, 1300s "match": "/[A-Z]*/gm", 1300s "no_world_readable": True, 1300s "size": "10k", 1300s }, 1300s "flag": "ipc", 1300s "no_remote_trace": True, 1300s }, 1300s }, 1300s state="overridden", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies_global.py:509: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies_global.py:989: in main 1300s result = Security_policies_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1300s config_xmls = self.set_config( 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosSecurity_policiesModule.test_junos_security_policies_overridden_01 __ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_overridden_01(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "global": { 1300s "policies": [ 1300s { 1300s "description": "test update", 1300s "match": { 1300s "application": {"any": True}, 1300s "destination_address": {"any_ipv6": True}, 1300s "source_address": {"any": True}, 1300s }, 1300s "name": "test_glob_3", 1300s "then": {"deny": True}, 1300s }, 1300s ], 1300s }, 1300s }, 1300s state="overridden", 1300s ), 1300s ) 1300s commands = ( 1300s '' 1300s "test_glob_3test updateany" 1300s "any-ipv6any" 1300s "" 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies.py:825: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies.py:2700: in main 1300s result = Security_policies(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1300s config_xmls = self.set_config(existing_security_policies_facts) 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosSecurity_policiesModule.test_junos_security_policies_rendered ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_rendered(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "global": { 1300s "policies": [ 1300s { 1300s "description": "test update", 1300s "match": { 1300s "application": {"any": True}, 1300s "destination_address": {"any_ipv6": True}, 1300s "source_address": {"any": True}, 1300s }, 1300s "name": "test_glob_3", 1300s "then": {"deny": True}, 1300s }, 1300s ], 1300s }, 1300s }, 1300s state="rendered", 1300s ), 1300s ) 1300s rendered = ( 1300s '' 1300s "test_glob_3test update" 1300s "anyany-ipv6" 1300s "any" 1300s "" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies.py:1055: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies.py:2700: in main 1300s result = Security_policies(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:100: in execute_module 1300s config_xmls = self.set_config(existing_security_policies_facts) 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_rendered _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_global_rendered(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "default_policy": "permit-all", 1300s "policy_rematch": {"enable": True, "extensive": True}, 1300s "policy_stats": {"enable": True, "system_wide": True}, 1300s "pre_id_default_policy_action": { 1300s "log": {"session_init": True}, 1300s "session_timeout": {"icmp": 10, "others": 10}, 1300s }, 1300s "traceoptions": { 1300s "file": { 1300s "files": 3, 1300s "match": "/[A-Z]*/gm", 1300s "no_world_readable": True, 1300s "size": "10k", 1300s }, 1300s "flag": "routing-socket", 1300s "no_remote_trace": True, 1300s }, 1300s }, 1300s state="rendered", 1300s ), 1300s ) 1300s rendered = ( 1300s '' 1300s " " 1300s " enable" 1300s "" 1300s "1010" 1300s "3" 1300s "/[A-Z]*/gm10k" 1300s "routing-socket" 1300s "" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies_global.py:590: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies_global.py:989: in main 1300s result = Security_policies_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:100: in execute_module 1300s config_xmls = self.set_config( 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_replaced_01 _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_global_replaced_01(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "default_policy": "permit-all", 1300s "policy_rematch": {"enable": True, "extensive": True}, 1300s "policy_stats": {"enable": True, "system_wide": True}, 1300s "pre_id_default_policy_action": { 1300s "log": {"session_init": True}, 1300s "session_timeout": {"icmp": 10, "others": 10}, 1300s }, 1300s "traceoptions": { 1300s "file": { 1300s "files": 3, 1300s "match": "/[A-Z]*/gm", 1300s "no_world_readable": True, 1300s "size": "10k", 1300s }, 1300s "flag": "rules", 1300s "no_remote_trace": True, 1300s }, 1300s }, 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies_global.py:623: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies_global.py:989: in main 1300s result = Security_policies_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1300s config_xmls = self.set_config( 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosSecurity_policiesModule.test_junos_security_policies_replaced_01 ___ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_replaced_01(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "global": { 1300s "policies": [ 1300s { 1300s "description": "test update", 1300s "match": { 1300s "application": {"any": True}, 1300s "destination_address": {"any_ipv6": True}, 1300s "source_address": {"any": True}, 1300s }, 1300s "name": "test_glob_3", 1300s "then": {"deny": True}, 1300s }, 1300s ], 1300s }, 1300s }, 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies.py:1080: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies.py:2700: in main 1300s result = Security_policies(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:106: in execute_module 1300s config_xmls = self.set_config(existing_security_policies_facts) 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies/security_policies.py:154: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______ TestJunosSecurity_zonesModule.test_junos_security_zones_merged_01 _______ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_zones_merged_01(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "functional_zone_management": { 1300s "description": "test description", 1300s "host_inbound_traffic": { 1300s "protocols": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "bgp"}, 1300s ], 1300s "system_services": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "dhcp"}, 1300s ], 1300s }, 1300s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1300s "screen": "test_screen", 1300s }, 1300s "zones": [ 1300s { 1300s "address_book": { 1300s "address_sets": [ 1300s { 1300s "addresses": [ 1300s "test_adr1", 1300s "test_adr2", 1300s ], 1300s "name": "test_adrset1", 1300s }, 1300s { 1300s "addresses": [ 1300s "test_adr3", 1300s "test_adr4", 1300s ], 1300s "name": "test_adrset2", 1300s }, 1300s { 1300s "address_sets": [ 1300s "test_adrset1", 1300s "test_adrset2", 1300s ], 1300s "addresses": ["test_adr5"], 1300s "description": "test description", 1300s "name": "test_adrset3", 1300s }, 1300s ], 1300s "addresses": [ 1300s { 1300s "description": "test desc", 1300s "ip_prefix": "10.0.0.0/24", 1300s "name": "test_adr1", 1300s }, 1300s { 1300s "dns_name": { 1300s "ipv6_only": True, 1300s "name": "1.1.1.1", 1300s }, 1300s "name": "test_adr2", 1300s }, 1300s { 1300s "name": "test_adr3", 1300s "range_address": { 1300s "from": "10.2.0.1", 1300s "to": "10.2.0.2", 1300s }, 1300s }, 1300s { 1300s "name": "test_adr4", 1300s "wildcard_address": "10.3.0.1/24", 1300s }, 1300s { 1300s "description": "test desc", 1300s "ip_prefix": "10.1.0.0/24", 1300s "name": "test_adr5", 1300s }, 1300s ], 1300s }, 1300s "advance_policy_based_routing_profile": "test_profile", 1300s "advanced_connection_tracking": { 1300s "mode": "allow-any-host", 1300s "timeout": "20", 1300s "track_all_policies_to_this_zone": True, 1300s }, 1300s "application_tracking": True, 1300s "description": "test description", 1300s "enable_reverse_reroute": True, 1300s "host_inbound_traffic": { 1300s "protocols": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "bgp"}, 1300s ], 1300s "system_services": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "dhcp"}, 1300s ], 1300s }, 1300s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1300s "name": "test_sec_zone1", 1300s "screen": "test_screen", 1300s "source_identity_log": True, 1300s "tcp_rst": True, 1300s "unidirectional_session_refreshing": True, 1300s }, 1300s ], 1300s }, 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_zones.py:218: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_zones.py:1997: in main 1300s result = Security_zones(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 1300s config_xmls = self.set_config(existing_security_zones_facts) 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_01 _ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_global_merged_01(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "default_policy": "permit-all", 1300s "policy_rematch": {"enable": True, "extensive": True}, 1300s "policy_stats": {"enable": True, "system_wide": True}, 1300s "pre_id_default_policy_action": { 1300s "log": {"session_init": True, "session_close": True}, 1300s "session_timeout": {"icmp": 10, "others": 10}, 1300s }, 1300s "traceoptions": { 1300s "file": { 1300s "files": 3, 1300s "match": "/[A-Z]*/gm", 1300s "no_world_readable": True, 1300s "size": "10k", 1300s }, 1300s "flag": "all", 1300s "no_remote_trace": True, 1300s }, 1300s }, 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies_global.py:136: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies_global.py:989: in main 1300s result = Security_policies_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1300s config_xmls = self.set_config( 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosSecurity_zonesModule.test_junos_security_zones_overridden_01 _____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_zones_overridden_01(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "functional_zone_management": { 1300s "description": "test description 2", 1300s "host_inbound_traffic": { 1300s "protocols": [{"name": "all"}], 1300s "system_services": [{"name": "all"}], 1300s }, 1300s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1300s "screen": "test_screen", 1300s }, 1300s "zones": [ 1300s { 1300s "address_book": { 1300s "address_sets": [ 1300s { 1300s "addresses": [ 1300s "test_adr1", 1300s "test_adr2", 1300s ], 1300s "name": "test_adrset1", 1300s }, 1300s { 1300s "addresses": [ 1300s "test_adr3", 1300s "test_adr4", 1300s ], 1300s "name": "test_adrset2", 1300s }, 1300s { 1300s "address_sets": [ 1300s "test_adrset1", 1300s "test_adrset2", 1300s ], 1300s "addresses": ["test_adr5"], 1300s "description": "test description", 1300s "name": "test_adrset3", 1300s }, 1300s ], 1300s "addresses": [ 1300s { 1300s "description": "test desc", 1300s "ip_prefix": "10.0.0.0/24", 1300s "name": "test_adr1", 1300s }, 1300s { 1300s "dns_name": { 1300s "ipv6_only": True, 1300s "name": "1.1.1.1", 1300s }, 1300s "name": "test_adr2", 1300s }, 1300s { 1300s "name": "test_adr3", 1300s "range_address": { 1300s "from": "10.2.0.1", 1300s "to": "10.2.0.2", 1300s }, 1300s }, 1300s { 1300s "name": "test_adr4", 1300s "wildcard_address": "10.3.0.1/24", 1300s }, 1300s { 1300s "description": "test desc", 1300s "ip_prefix": "10.1.0.0/24", 1300s "name": "test_adr5", 1300s }, 1300s ], 1300s }, 1300s "advance_policy_based_routing_profile": "test_profile", 1300s "application_tracking": True, 1300s "description": "test description", 1300s "enable_reverse_reroute": True, 1300s "host_inbound_traffic": { 1300s "protocols": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "bgp"}, 1300s ], 1300s "system_services": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "dhcp"}, 1300s ], 1300s }, 1300s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1300s "name": "test_sec_zone1", 1300s "screen": "test_screen", 1300s "source_identity_log": True, 1300s "tcp_rst": True, 1300s }, 1300s ], 1300s }, 1300s state="overridden", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_zones.py:850: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_zones.py:1997: in main 1300s result = Security_zones(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 1300s config_xmls = self.set_config(existing_security_zones_facts) 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_02 _ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_global_merged_02(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "default_policy": "deny-all", 1300s "policy_rematch": {"enable": True, "extensive": True}, 1300s "policy_stats": {"enable": True, "system_wide": False}, 1300s "pre_id_default_policy_action": { 1300s "log": {"session_init": True}, 1300s "session_timeout": { 1300s "icmp": 10, 1300s "others": 10, 1300s "icmp6": 10, 1300s "ospf": 10, 1300s "tcp": 10, 1300s "udp": 10, 1300s }, 1300s }, 1300s "traceoptions": { 1300s "file": { 1300s "files": 3, 1300s "match": "/[A-Z]*/gm", 1300s "world_readable": True, 1300s "size": "10k", 1300s }, 1300s "flag": "configuration", 1300s "no_remote_trace": True, 1300s }, 1300s }, 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies_global.py:185: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies_global.py:989: in main 1300s result = Security_policies_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1300s config_xmls = self.set_config( 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_03 _ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_global_merged_03(self): 1300s set_module_args( 1300s dict( 1300s config={"traceoptions": {"flag": "compilation"}}, 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies_global.py:209: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies_global.py:989: in main 1300s result = Security_policies_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1300s config_xmls = self.set_config( 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______ TestJunosSecurity_zonesModule.test_junos_security_zones_rendered _______ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_zones_rendered(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "functional_zone_management": { 1300s "description": "test description", 1300s "host_inbound_traffic": { 1300s "protocols": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "bgp"}, 1300s ], 1300s "system_services": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "dhcp"}, 1300s ], 1300s }, 1300s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1300s "screen": "test_screen", 1300s }, 1300s "zones": [ 1300s { 1300s "address_book": { 1300s "address_sets": [ 1300s { 1300s "addresses": [ 1300s "test_adr1", 1300s "test_adr2", 1300s ], 1300s "name": "test_adrset1", 1300s }, 1300s { 1300s "addresses": [ 1300s "test_adr3", 1300s "test_adr4", 1300s ], 1300s "name": "test_adrset2", 1300s }, 1300s { 1300s "address_sets": [ 1300s "test_adrset1", 1300s "test_adrset2", 1300s ], 1300s "addresses": ["test_adr5"], 1300s "description": "test description", 1300s "name": "test_adrset3", 1300s }, 1300s ], 1300s "addresses": [ 1300s { 1300s "description": "test desc", 1300s "ip_prefix": "10.0.0.0/24", 1300s "name": "test_adr1", 1300s }, 1300s { 1300s "dns_name": { 1300s "ipv6_only": True, 1300s "name": "1.1.1.1", 1300s }, 1300s "name": "test_adr2", 1300s }, 1300s { 1300s "name": "test_adr3", 1300s "range_address": { 1300s "from": "10.2.0.1", 1300s "to": "10.2.0.2", 1300s }, 1300s }, 1300s { 1300s "name": "test_adr4", 1300s "wildcard_address": "10.3.0.1/24", 1300s }, 1300s { 1300s "description": "test desc", 1300s "ip_prefix": "10.1.0.0/24", 1300s "name": "test_adr5", 1300s }, 1300s ], 1300s }, 1300s "advance_policy_based_routing_profile": "test_profile", 1300s "application_tracking": True, 1300s "description": "test description", 1300s "enable_reverse_reroute": True, 1300s "host_inbound_traffic": { 1300s "protocols": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "bgp"}, 1300s ], 1300s "system_services": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "dhcp"}, 1300s ], 1300s }, 1300s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1300s "name": "test_sec_zone1", 1300s "screen": "test_screen", 1300s "source_identity_log": True, 1300s "tcp_rst": True, 1300s }, 1300s ], 1300s }, 1300s state="rendered", 1300s ), 1300s ) 1300s rendered = ( 1300s 't' 1300s "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" 1300s "_adr2test_adrset2test_adr3test_adr4test_adrset3test_adr5test_adrset1test_adrset2test descriptiontest_profiletest descriptionallbgpalldhcpge-0/0/3.0ge-0/0/4.0test_screen" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_zones.py:1114: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_zones.py:1997: in main 1300s result = Security_zones(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:100: in execute_module 1300s config_xmls = self.set_config(existing_security_zones_facts) 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosSecurity_zonesModule.test_junos_security_zones_replaced_01 ______ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_zones_replaced_01(self): 1300s set_module_args( 1300s dict( 1300s config={ 1300s "functional_zone_management": { 1300s "description": "test description 2", 1300s "host_inbound_traffic": { 1300s "protocols": [{"name": "all"}], 1300s "system_services": [{"name": "all"}], 1300s }, 1300s "interfaces": ["ge-0/0/1.0", "ge-0/0/2.0"], 1300s "screen": "test_screen", 1300s }, 1300s "zones": [ 1300s { 1300s "address_book": { 1300s "address_sets": [ 1300s { 1300s "addresses": [ 1300s "test_adr1", 1300s "test_adr2", 1300s ], 1300s "name": "test_adrset1", 1300s }, 1300s { 1300s "addresses": [ 1300s "test_adr3", 1300s "test_adr4", 1300s ], 1300s "name": "test_adrset2", 1300s }, 1300s { 1300s "address_sets": [ 1300s "test_adrset1", 1300s "test_adrset2", 1300s ], 1300s "addresses": ["test_adr5"], 1300s "description": "test description", 1300s "name": "test_adrset3", 1300s }, 1300s ], 1300s "addresses": [ 1300s { 1300s "description": "test desc", 1300s "ip_prefix": "10.0.0.0/24", 1300s "name": "test_adr1", 1300s }, 1300s { 1300s "dns_name": { 1300s "ipv6_only": True, 1300s "name": "1.1.1.1", 1300s }, 1300s "name": "test_adr2", 1300s }, 1300s { 1300s "name": "test_adr3", 1300s "range_address": { 1300s "from": "10.2.0.1", 1300s "to": "10.2.0.2", 1300s }, 1300s }, 1300s { 1300s "name": "test_adr4", 1300s "wildcard_address": "10.3.0.1/24", 1300s }, 1300s { 1300s "description": "test desc", 1300s "ip_prefix": "10.1.0.0/24", 1300s "name": "test_adr5", 1300s }, 1300s ], 1300s }, 1300s "advance_policy_based_routing_profile": "test_profile", 1300s "application_tracking": True, 1300s "description": "test description", 1300s "enable_reverse_reroute": True, 1300s "host_inbound_traffic": { 1300s "protocols": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "bgp"}, 1300s ], 1300s "system_services": [ 1300s {"name": "all"}, 1300s {"except": True, "name": "dhcp"}, 1300s ], 1300s }, 1300s "interfaces": ["ge-0/0/3.0", "ge-0/0/4.0"], 1300s "name": "test_sec_zone1", 1300s "screen": "test_screen", 1300s "source_identity_log": True, 1300s "tcp_rst": True, 1300s }, 1300s ], 1300s }, 1300s state="replaced", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_zones.py:1217: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_zones.py:1997: in main 1300s result = Security_zones(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:106: in execute_module 1300s config_xmls = self.set_config(existing_security_zones_facts) 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_zones/security_zones.py:154: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosSecurity_policies_globalModule.test_junos_security_policies_global_merged_04 _ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_security_policies_global_merged_04(self): 1300s set_module_args( 1300s dict(config={"traceoptions": {"flag": "lookup"}}, state="merged"), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_security_policies_global.py:224: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_security_policies_global.py:989: in main 1300s result = Security_policies_global(module).execute_module() 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:108: in execute_module 1300s config_xmls = self.set_config( 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/security_policies_global/security_policies_global.py:158: in set_state 1300s self.root = build_root_xml_node("security") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_06 __________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_06(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s communities=[ 1300s dict( 1300s name="comm1", 1300s clients=[ 1300s dict(address="24.0.0.0/32", restrict=True), 1300s dict(address="30.0.0.0/32", restrict=True), 1300s ], 1300s routing_instances=[ 1300s dict( 1300s name="clv1", 1300s clients=[ 1300s dict( 1300s address="13.13.13.13/24", 1300s restrict=True, 1300s ), 1300s dict(address="24.0.0.0/32"), 1300s dict(address="30.0.0.0/32"), 1300s ], 1300s ), 1300s dict( 1300s name="clv2", 1300s clients=[dict(address="15.15.15.15/24")], 1300s ), 1300s ], 1300s ), 1300s dict(name="comm2"), 1300s ], 1300s contact="rohitthakur2590", 1300s customization=dict(ether_stats_ifd_only=True), 1300s description="Local SNMP Server", 1300s engine_id=dict( 1300s local="local1", 1300s use_default_ip_address=True, 1300s use_mac_address=True, 1300s ), 1300s filter_duplicates=True, 1300s filter_interfaces=dict( 1300s all_internal_interfaces=True, 1300s interfaces=["eth1", "eth2"], 1300s ), 1300s health_monitor=dict( 1300s falling_threshold=50, 1300s idp=True, 1300s interval=100, 1300s rising_threshold=60, 1300s ), 1300s if_count_with_filter_interfaces=True, 1300s interfaces=["eth1", "eth2", "eth3"], 1300s location="inter_lab", 1300s logical_system_trap_filter=True, 1300s name="SNMP_LAB_SERVER", 1300s nonvolatile=dict(commit_delay=30), 1300s rmon=dict( 1300s alarms=[ 1300s dict( 1300s id=4, 1300s variable="1.x.y.z", 1300s sample_type="absolute-value", 1300s rising_threshold=1020, 1300s ), 1300s dict( 1300s id=5, 1300s variable="1.x.y.z", 1300s sample_type="absolute-value", 1300s rising_threshold=1020, 1300s ), 1300s ], 1300s events=[ 1300s dict(id=100, type="log"), 1300s dict(id=200, type="log"), 1300s ], 1300s ), 1300s routing_instance_access=dict( 1300s access_lists=["clv1", "clv2"], 1300s ), 1300s subagent=dict(tcp=dict(routing_instances_default=True)), 1300s snmp_v3=dict( 1300s notify=[dict(name="not1", type="inform", tag="tag2")], 1300s notify_filter=[ 1300s dict( 1300s name="not_fil_01", 1300s oids=[dict(include=True, oid="1.a.s.b.d")], 1300s ), 1300s dict( 1300s name="not_fil_02", 1300s oids=[ 1300s dict(include=True, oid="1.x.b.b.d"), 1300s dict(include=True, oid="1.a.c.b.d"), 1300s ], 1300s ), 1300s ], 1300s snmp_community=[ 1300s dict( 1300s community_index="v3_comm1", 1300s community_name="mycommu", 1300s security_name="sec101", 1300s context="cont1", 1300s tag="109", 1300s ), 1300s dict( 1300s community_index="v3_comm2", 1300s community_name="mycomm", 1300s security_name="sec102", 1300s context="cont1", 1300s tag="109", 1300s ), 1300s ], 1300s target_addresses=[ 1300s dict( 1300s name="tar201", 1300s address="162.12.10.2", 1300s port=23122, 1300s timeout=300, 1300s retry_count=200, 1300s tag_list="tag101", 1300s address_mask="24", 1300s routing_instance="clv2", 1300s target_parameters="tarparam2", 1300s ), 1300s dict( 1300s name="tar202", 1300s address="162.12.10.2", 1300s port=23122, 1300s timeout=300, 1300s retry_count=200, 1300s tag_list="tag101", 1300s address_mask="24", 1300s routing_instance="clv2", 1300s target_parameters="tarparam2", 1300s ), 1300s ], 1300s target_parameters=[ 1300s dict( 1300s name="param111", 1300s notify_filter="not121", 1300s parameters=dict( 1300s message_processing_model="v1", 1300s security_model="v1", 1300s security_level="none", 1300s security_name="secure111", 1300s ), 1300s ), 1300s ], 1300s ), 1300s traceoptions=dict( 1300s file=dict( 1300s files=20, 1300s match="snmp_cfg", 1300s no_world_readable=True, 1300s size=20000, 1300s ), 1300s flag=dict( 1300s all=True, 1300s general=True, 1300s interface_stats=True, 1300s nonvolatile_sets=True, 1300s pdu=True, 1300s protocol_timeouts=True, 1300s routing_socket=True, 1300s subagent=True, 1300s timer=True, 1300s varbind_error=True, 1300s ), 1300s memory_trace=dict(size=1350), 1300s ), 1300s trap_groups=[ 1300s dict( 1300s name="trgrp_01", 1300s destination_port=2346, 1300s categories=dict( 1300s authentication=True, 1300s chassis=True, 1300s otn_alarms=dict( 1300s oc_lof=True, 1300s otu_uas_threshold=True, 1300s ), 1300s ), 1300s targets=["11.11.11.11", "12.12.12.12"], 1300s routing_instance="clv1", 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:616: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosSnmp_serverModule.test_junos_ntp_global_rendered ___________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_ntp_global_rendered(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s client_lists=[ 1300s dict( 1300s name="cl2", 1300s addresses=[dict(address="192.16.4.0/24")], 1300s ), 1300s ], 1300s ), 1300s state="rendered", 1300s ), 1300s ) 1300s rendered = ( 1300s 'cl2' 1300s "192.16.4.0/24" 1300s "" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:1082: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:98: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_routing_access_04 __ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_routing_access_04(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s routing_instance_access=dict( 1300s set=True, 1300s access_lists=["clv1"], 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:379: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_arp_01 ________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_arp_01(self): 1300s set_module_args( 1300s dict( 1300s config=dict(arp=dict(set=True, host_name_resolution=True)), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:97: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups _____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_trap_groups(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s trap_groups=[ 1300s dict( 1300s categories=dict( 1300s authentication=True, 1300s ), 1300s name="egress", 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:179: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ______ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_client_02 ______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_client_02(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s client_lists=[ 1300s dict( 1300s name="cl2", 1300s addresses=[dict(address="192.16.4.0/24")], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:314: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups_02 ____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_trap_groups_02(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s trap_groups=[ 1300s dict( 1300s categories=dict( 1300s chassis=True, 1300s chassis_cluster=True, 1300s configuration=True, 1300s dot3oam_events=True, 1300s link=True, 1300s ), 1300s name="monitor", 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:213: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_groups_otn_alrams _ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_trap_groups_otn_alrams(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s trap_groups=[ 1300s dict( 1300s categories=dict( 1300s otn_alarms=dict( 1300s oc_lof=True, 1300s oc_lom=True, 1300s oc_los=True, 1300s ), 1300s ), 1300s name="monitor", 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:243: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_clients_03 ______ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_clients_03(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s client_lists=[ 1300s dict( 1300s name="cl3", 1300s addresses=[ 1300s dict(address="172.16.1.0/24"), 1300s dict(address="10.11.11.11", restrict=True), 1300s ], 1300s ), 1300s dict( 1300s name="cl4", 1300s addresses=[dict(address="172.16.4.0/24")], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:353: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ____ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options _____ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_trap_options(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s trap_options=dict( 1300s agent_address=dict( 1300s outgoing_interface=True, 1300s ), 1300s context_oid=True, 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:149: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_communities_05 ____ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_communities_05(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s communities=[ 1300s dict( 1300s name="comm1", 1300s clients=[ 1300s dict(address="24.0.0.0/32", restrict=True), 1300s ], 1300s routing_instances=[ 1300s dict( 1300s name="clv1", 1300s clients=[ 1300s dict( 1300s address="13.13.13.13/24", 1300s restrict=True, 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:415: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options_02 ___ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_trap_options_02(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s trap_options=dict( 1300s enterprise_oid=True, 1300s source_address=dict( 1300s address="192.168.2.0", 1300s ), 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:286: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_views ________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_views(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s views=[ 1300s dict( 1300s name="all", 1300s oids=[dict(oid=".1")], 1300s ), 1300s ], 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:121: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________________ TestJunosVlansModule.test_junos_vlans_deleted _________________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_vlans_deleted(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args(dict(config=[dict(name="vlan1")], state="deleted")) 1300s 1300s commands = [ 1300s '' 1300s 'vlan1', 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_vlans.py:193: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_vlans.py:462: in main 1300s result = Vlans(module).execute_module() 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1300s config_xmls = self.set_config(existing_vlans_facts) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1300s root = build_root_xml_node("vlans") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __ TestJunosSnmp_serverModule.test_junos_snmp_server_merged_trap_options_set ___ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_snmp_server_merged_trap_options_set(self): 1300s set_module_args( 1300s dict( 1300s config=dict( 1300s trap_options=dict( 1300s set=True, 1300s ), 1300s ), 1300s state="merged", 1300s ), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_snmp_server.py:268: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_snmp_server.py:1579: in main 1300s result = Snmp_server(module).execute_module() 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:104: in execute_module 1300s config_xmls = self.set_config(existing_snmp_server_facts) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:142: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/snmp_server/snmp_server.py:154: in set_state 1300s self.root = build_root_xml_node("configuration") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________________ TestJunosVlansModule.test_junos_vlans_merged _________________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_vlans_merged(self): 1300s set_module_args( 1300s dict( 1300s config=[dict(name="vlan2", vlan_id=2, l3_interface="irb.12")], 1300s state="merged", 1300s ), 1300s ) 1300s commands = [ 1300s '' 1300s "vlan22" 1300s "irb.12", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_vlans.py:105: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_vlans.py:462: in main 1300s result = Vlans(module).execute_module() 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1300s config_xmls = self.set_config(existing_vlans_facts) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1300s root = build_root_xml_node("vlans") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______________ TestJunosVlansModule.test_junos_vlans_deleted_01 _______________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_vlans_deleted_01(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args(dict(config=[], state="deleted")) 1300s 1300s commands = [ 1300s '' 1300s 'vlan1', 1300s ] 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_vlans.py:206: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_vlans.py:462: in main 1300s result = Vlans(module).execute_module() 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1300s config_xmls = self.set_config(existing_vlans_facts) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1300s root = build_root_xml_node("vlans") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ___________ TestJunosVlansModule.test_junos_vlans_merged_idempotent ____________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_vlans_merged_idempotent(self): 1300s set_module_args( 1300s dict(config=[dict(name="vlan1", vlan_id=1)], state="merged"), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_vlans.py:112: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_vlans.py:462: in main 1300s result = Vlans(module).execute_module() 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1300s config_xmls = self.set_config(existing_vlans_facts) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1300s root = build_root_xml_node("vlans") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _________ TestJunosVlansModule.test_junos_vlans_overridden_idempotent __________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_vlans_overridden_idempotent(self): 1300s set_module_args( 1300s dict(config=[dict(name="vlan1", vlan_id=1)], state="overridden"), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_vlans.py:171: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_vlans.py:462: in main 1300s result = Vlans(module).execute_module() 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1300s config_xmls = self.set_config(existing_vlans_facts) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1300s root = build_root_xml_node("vlans") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s _______________ TestJunosVlansModule.test_junos_vlans_overridden _______________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_vlans_overridden(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=[dict(name="vlan3", vlan_id=3, l3_interface="irb.13")], 1300s state="overridden", 1300s ), 1300s ) 1300s 1300s commands = [ 1300s '' 1300s 'vlan1' 1300s "vlan33" 1300s "irb.13", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_vlans.py:164: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_vlans.py:462: in main 1300s result = Vlans(module).execute_module() 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1300s config_xmls = self.set_config(existing_vlans_facts) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1300s root = build_root_xml_node("vlans") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________________ TestJunosVlansModule.test_junos_vlans_replaced ________________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_vlans_replaced(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict(name="vlan1", vlan_id=1, l3_interface="irb.10"), 1300s dict(name="vlan2", vlan_id=2), 1300s ], 1300s state="replaced", 1300s ), 1300s ) 1300s 1300s commands = [ 1300s '' 1300s 'vlan1' 1300s 'vlan2' 1300s "vlan11" 1300s "irb.10" 1300s "vlan22", 1300s ] 1300s > result = self.execute_module(changed=True, commands=commands) 1300s 1300s tests/unit/modules/network/junos/test_junos_vlans.py:137: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_vlans.py:462: in main 1300s result = Vlans(module).execute_module() 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1300s config_xmls = self.set_config(existing_vlans_facts) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1300s root = build_root_xml_node("vlans") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s ________________ TestJunosVlansModule.test_junos_vlans_rendered ________________ 1300s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_vlans_rendered(self): 1300s """ 1300s :return: 1300s """ 1300s set_module_args( 1300s dict( 1300s config=[ 1300s dict(name="vlan1", vlan_id=1), 1300s dict(name="vlan2", vlan_id=2, l3_interface="irb.12"), 1300s ], 1300s state="rendered", 1300s ), 1300s ) 1300s rendered = ( 1300s '' 1300s "vlan11" 1300s "vlan22" 1300s "irb.12" 1300s ) 1300s > result = self.execute_module(changed=False) 1300s 1300s tests/unit/modules/network/junos/test_junos_vlans.py:228: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_vlans.py:462: in main 1300s result = Vlans(module).execute_module() 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:102: in execute_module 1300s config_xmls = self.set_config(existing_vlans_facts) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1300s root = build_root_xml_node("vlans") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s __________ TestJunosVlansModule.test_junos_vlans_replaced_idempotent ___________ 1300s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1300s 1300s self = 1300s 1300s def test_junos_vlans_replaced_idempotent(self): 1300s set_module_args( 1300s dict(config=[dict(name="vlan1", vlan_id=1)], state="replaced"), 1300s ) 1300s > result = self.execute_module(changed=True) 1300s 1300s tests/unit/modules/network/junos/test_junos_vlans.py:144: 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s tests/unit/modules/network/junos/junos_module.py:82: in execute_module 1300s result = self.changed(changed) 1300s tests/unit/modules/network/junos/junos_module.py:97: in changed 1300s self.module.main() 1300s plugins/modules/junos_vlans.py:462: in main 1300s result = Vlans(module).execute_module() 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:109: in execute_module 1300s config_xmls = self.set_config(existing_vlans_facts) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:146: in set_config 1300s resp = self.set_state(want, have) 1300s plugins/module_utils/network/junos/config/vlans/vlans.py:158: in set_state 1300s root = build_root_xml_node("vlans") 1300s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1300s 1300s def build_root_xml_node(tag): 1300s > return new_ele(tag) 1300s E NameError: name 'new_ele' is not defined 1300s 1300s ../../ansible/netcommon/plugins/module_utils/network/common/netconf.py:140: NameError 1300s =============================== warnings summary =============================== 1300s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_confirm 1300s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_lines 1300s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_json 1300s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_set 1300s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_text 1300s tests/unit/modules/network/junos/test_junos_config.py::TestJunosConfigModule::test_junos_config_src_xml 1300s /tmp/autopkgtest.HRV60t/build.QGA/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. 1300s if diff: 1300s 1300s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1300s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml - 1300s =========================== short test summary info ============================ 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_001 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_002 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_delete 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_002_001 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_delete_purged 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_003 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merge_groups 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_004 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_advertise_bgp_static 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_005 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_advertise_external 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bfd_liveness_detection 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_005_001 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bgp_error_tolerance 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_006 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bmp 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_007 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_bmp_2 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_007_001 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_egress_te 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_008 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_egress_te_backup_paths 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_009 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_groups_allow 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_010 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_011 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_optimal_route_reflection 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_merged_routing_options 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_012 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_013 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_013_001 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_rendered_empty 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_014 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_replaced 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_global.py::TestJunosBgp_globalModule::test_junos_bgp_global_replaced_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_015 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_016 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_017 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_018 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_019 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_020 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_021 1300s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_merged 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_022 1300s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_merged_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_overridden 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_023 1300s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_overridden_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_023_001 1300s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_replaced 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_024 1300s FAILED tests/unit/modules/network/junos/test_junos_l3_interfaces.py::TestJunosL3InterfacesModule::test_junos_l3_interfaces_replaced_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_025 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_deleted_user_11 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_026 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_07 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_archive_01 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_027 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_console_02 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_028 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_files_03 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_029 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_files_04 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_hosts_05 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_030 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_hosts_idempotent_06 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_config_033 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_merged_user_08 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_deleted_031 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_overridden_user_10 1300s FAILED tests/unit/modules/network/junos/test_junos_bgp_address_family.py::TestJunosBgp_address_familyModule::test_junos_bgp_address_family_deleted_032 1300s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_merged_01 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_rendered_12 1300s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_overridden_01 1300s FAILED tests/unit/modules/network/junos/test_junos_logging_global.py::TestJunosLogging_globalModule::test_junos_logging_global_replaced_user_09 1300s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_hostname.py::TestJunosHostnameModule::test_junos_hostname_replaced 1300s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_delete 1300s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_merged_01 1300s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_delete_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_merged_02 1300s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_merged 1300s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_overridden_01 1300s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_merged_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_overridden 1300s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_overridden_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ntp_global.py::TestJunosNtp_globalModule::test_junos_ntp_global_replaced_01 1300s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_delete 1300s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_delete_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_replaced 1300s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_merged 1300s FAILED tests/unit/modules/network/junos/test_junos_interfaces.py::TestJunosInterfacesModule::test_junos_interfaces_replaced_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_merged_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_delete 1300s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_overridden 1300s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_delete_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_overridden_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_merged 1300s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_merged_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_replaced 1300s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_overridden 1300s FAILED tests/unit/modules/network/junos/test_junos_ospf_interfaces.py::TestJunosOspfv3Module::test_junos_ospf_interfaces_replaced_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_overridden_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_deleted 1300s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_replaced 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_merged 1300s FAILED tests/unit/modules/network/junos/test_junos_l2_interfaces.py::TestJunosL2InterfacesModule::test_junos_l2_interfaces_replaced_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_merged_areas 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_overridden_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_overridden 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_replaced 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv2.py::TestJunosOspfv2Module::test_junos_ospfv2_replaced 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_replaced_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_delete 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_delete_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_merged 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_merged_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_domains_merged 1300s FAILED tests/unit/modules/network/junos/test_junos_ospfv3.py::TestJunosOspfv3Module::test_junos_ospfv3_overridden 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_merged 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_merged_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_merged_01 1300s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_merged_idempotent_01 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_overridden 1300s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_overridden_01 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_overridden_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_overridden_idempotent_01 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_rendered_01 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_rendered_02 1300s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_replaced_01 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_replaced 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_replaced_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_prefix_lists.py::TestJunosPrefix_listsModule::test_junos_prefix_lists_replaced_idempotent_01 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_merged_01 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_deleted 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_merged_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_overridden 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_instances.py::TestJunosRouting_instancesModule::test_junos_routing_instances_delted_single_entry 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_routing_options.py::TestJunosRouting_optionsModule::test_junos_routing_options_replaced_01 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_merged_01 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_merged_02 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_overridden_01 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_overridden_01 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_replaced_01 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies.py::TestJunosSecurity_policiesModule::test_junos_security_policies_replaced_01 1300s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_merged_01 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_01 1300s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_overridden_01 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_02 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_03 1300s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_security_zones.py::TestJunosSecurity_zonesModule::test_junos_security_zones_replaced_01 1300s FAILED tests/unit/modules/network/junos/test_junos_security_policies_global.py::TestJunosSecurity_policies_globalModule::test_junos_security_policies_global_merged_04 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_06 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_ntp_global_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_routing_access_04 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_arp_01 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_client_02 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups_02 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_groups_otn_alrams 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_clients_03 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_communities_05 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options_02 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_views 1300s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_deleted 1300s FAILED tests/unit/modules/network/junos/test_junos_snmp_server.py::TestJunosSnmp_serverModule::test_junos_snmp_server_merged_trap_options_set 1300s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_merged 1300s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_deleted_01 1300s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_merged_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_overridden_idempotent 1300s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_overridden 1300s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_replaced 1300s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_rendered 1300s FAILED tests/unit/modules/network/junos/test_junos_vlans.py::TestJunosVlansModule::test_junos_vlans_replaced_idempotent 1300s ================= 190 failed, 115 passed, 6 warnings in 9.91s ================== 1300s 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.HRV60t/build.QGA/src/ansible_collections/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/junipernetworks/junos --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1300s ## return code is 1 1300s 1300s 1300s 1300s ############################################################ 1300s ############################################################ 1300s #### Running FLAKY tests in ansible_collections/netapp_eseries/santricity 1300s ############################################################ 1300s ############################################################ 1300s Unit test controller with Python 3.13 1301s ============================= test session starts ============================== 1301s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1301s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity 1301s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1301s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1301s created: 2/2 workers 1301s 2 workers [0 items] 1301s 1301s 1301s ==================================== ERRORS ==================================== 1301s _______ ERROR collecting tests/unit/modules/test_na_santricity_alerts.py _______ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_alerts.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_alerts.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ___ ERROR collecting tests/unit/modules/test_na_santricity_alerts_syslog.py ____ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_alerts_syslog.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_alerts_syslog.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ________ ERROR collecting tests/unit/modules/test_na_santricity_asup.py ________ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_asup.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_asup.py:8: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ______ ERROR collecting tests/unit/modules/test_na_santricity_auditlog.py ______ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_auditlog.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_auditlog.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ________ ERROR collecting tests/unit/modules/test_na_santricity_auth.py ________ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_auth.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_auth.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s _ ERROR collecting tests/unit/modules/test_na_santricity_client_certificate.py _ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_client_certificate.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_client_certificate.py:10: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ______ ERROR collecting tests/unit/modules/test_na_santricity_discover.py ______ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_discover.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_discover.py:9: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ___ ERROR collecting tests/unit/modules/test_na_santricity_drive_firmware.py ___ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_drive_firmware.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_drive_firmware.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s _______ ERROR collecting tests/unit/modules/test_na_santricity_facts.py ________ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_facts.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_facts.py:9: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ______ ERROR collecting tests/unit/modules/test_na_santricity_firmware.py ______ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_firmware.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_firmware.py:10: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s _______ ERROR collecting tests/unit/modules/test_na_santricity_global.py _______ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_global.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_global.py:9: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ________ ERROR collecting tests/unit/modules/test_na_santricity_host.py ________ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_host.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_host.py:9: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s _____ ERROR collecting tests/unit/modules/test_na_santricity_hostgroup.py ______ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_hostgroup.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_hostgroup.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s _ ERROR collecting tests/unit/modules/test_na_santricity_ib_iser_interface.py __ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_ib_iser_interface.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_ib_iser_interface.py:9: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s __ ERROR collecting tests/unit/modules/test_na_santricity_iscsi_interface.py ___ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_iscsi_interface.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_iscsi_interface.py:9: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ____ ERROR collecting tests/unit/modules/test_na_santricity_iscsi_target.py ____ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_iscsi_target.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_iscsi_target.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ________ ERROR collecting tests/unit/modules/test_na_santricity_ldap.py ________ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_ldap.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_ldap.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ____ ERROR collecting tests/unit/modules/test_na_santricity_lun_mapping.py _____ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_lun_mapping.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_lun_mapping.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ___ ERROR collecting tests/unit/modules/test_na_santricity_mgmt_interface.py ___ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_mgmt_interface.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_mgmt_interface.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ___ ERROR collecting tests/unit/modules/test_na_santricity_nvme_interface.py ___ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_nvme_interface.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_nvme_interface.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s _ ERROR collecting tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py _ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s _ ERROR collecting tests/unit/modules/test_na_santricity_proxy_firmware_upload.py _ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_firmware_upload.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_proxy_firmware_upload.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ___ ERROR collecting tests/unit/modules/test_na_santricity_proxy_systems.py ____ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_proxy_systems.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_proxy_systems.py:9: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s ____ ERROR collecting tests/unit/modules/test_na_santricity_storagepool.py _____ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_storagepool.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_storagepool.py:9: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s _______ ERROR collecting tests/unit/modules/test_na_santricity_syslog.py _______ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_syslog.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_syslog.py:7: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s _______ ERROR collecting tests/unit/modules/test_na_santricity_volume.py _______ 1301s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/unit/modules/test_na_santricity_volume.py'. 1301s Hint: make sure your test modules/packages have valid Python names. 1301s Traceback: 1301s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1301s return _bootstrap._gcd_import(name[level:], package, level) 1301s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1301s assertion_rewriting_hook.exec_module(module) 1301s tests/unit/modules/test_na_santricity_volume.py:9: in 1301s from ansible_collections.community.internal_test_tools.tests.unit.plugins.modules.utils import ( 1301s E ModuleNotFoundError: No module named 'ansible_collections.community.internal_test_tools' 1301s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml - 1301s =========================== short test summary info ============================ 1301s ERROR tests/unit/modules/test_na_santricity_alerts.py 1301s ERROR tests/unit/modules/test_na_santricity_alerts_syslog.py 1301s ERROR tests/unit/modules/test_na_santricity_asup.py 1301s ERROR tests/unit/modules/test_na_santricity_auditlog.py 1301s ERROR tests/unit/modules/test_na_santricity_auth.py 1301s ERROR tests/unit/modules/test_na_santricity_client_certificate.py 1301s ERROR tests/unit/modules/test_na_santricity_discover.py 1301s ERROR tests/unit/modules/test_na_santricity_drive_firmware.py 1301s ERROR tests/unit/modules/test_na_santricity_facts.py 1301s ERROR tests/unit/modules/test_na_santricity_firmware.py 1301s ERROR tests/unit/modules/test_na_santricity_global.py 1301s ERROR tests/unit/modules/test_na_santricity_host.py 1301s ERROR tests/unit/modules/test_na_santricity_hostgroup.py 1301s ERROR tests/unit/modules/test_na_santricity_ib_iser_interface.py 1301s ERROR tests/unit/modules/test_na_santricity_iscsi_interface.py 1301s ERROR tests/unit/modules/test_na_santricity_iscsi_target.py 1301s ERROR tests/unit/modules/test_na_santricity_ldap.py 1301s ERROR tests/unit/modules/test_na_santricity_lun_mapping.py 1301s ERROR tests/unit/modules/test_na_santricity_mgmt_interface.py 1301s ERROR tests/unit/modules/test_na_santricity_nvme_interface.py 1301s ERROR tests/unit/modules/test_na_santricity_proxy_drive_firmware_upload.py 1301s ERROR tests/unit/modules/test_na_santricity_proxy_firmware_upload.py 1301s ERROR tests/unit/modules/test_na_santricity_proxy_systems.py 1301s ERROR tests/unit/modules/test_na_santricity_storagepool.py 1301s ERROR tests/unit/modules/test_na_santricity_syslog.py 1301s ERROR tests/unit/modules/test_na_santricity_volume.py 1301s ============================== 26 errors in 1.07s ============================== 1301s ## return code is 1 1301s 1301s 1301s 1301s ############################################################ 1301s ############################################################ 1301s #### Running FLAKY tests in ansible_collections/netapp/ontap 1301s ############################################################ 1301s ############################################################ 1301s 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.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1302s Unit test modules with Python 3.13 1309s ============================= test session starts ============================== 1309s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1309s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp/ontap 1309s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1309s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1309s created: 2/2 workers 1309s 2 workers [3004 items] 1309s 1309s s.ss.sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 2%] 1309s sssssssssssssssssssssssssssssssssssssssssssssssss.s.ss.ss.sss.s.ss.s.ss. [ 4%] 1310s ss.ss.sss................s.ss.sss.s.sss.s.sss.ss.ss.s.ss.sss.ss.ss.ss.ss [ 7%] 1310s .ss..sss.s.ss.s.ss.sssssssssssssssssssss.sss.sssFs...................... [ 9%] 1311s ......................s.s.sss.s.sss.ss.s.ss.s.sss.s.s.s.sss.s.ss.s.ss.ss [ 11%] 1311s s.s......ss.ss.ss.s.ss.s.s.ss.ss.ss.s.sssssssssssssssssssssss.ss.sss.s.s [ 14%] 1312s .s.ss.ss.sss.s.ss.ss.ss.s.s.ss.s.ss.ss.s.s.ss.s..s.s.ss.s.s.ss.ss.s.s.s. [ 16%] 1312s ss.ssssssss.sss.ss.sss.ss.s.ss.ss.sss.ss.s....................s.s.ss.ss. [ 19%] 1312s ss.sssssssss.ss.s.ss.ss.ss.ss.s.ss.ss.s.ss.ss.s.ssssssssssssssssssssssss [ 21%] 1313s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 23%] 1313s sss.s.ss.s.ss.s.s.sss.s.ss.s.s.ss.s.ss.sssssssssssssssssssssssssssssssss [ 26%] 1313s ssssssssssssssss.ss.ss.ss.ssssssssssssssssssssssssssssssssssssssssssssss [ 28%] 1314s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 31%] 1314s sssssssssssssssssssssssssssssssssssss.s.ss.sss.ss.ss.sss.ss.ss.ss.ssssss [ 33%] 1315s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 35%] 1315s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 38%] 1315s sssssssssssssssssssssssssssssssss.ss.ss.ss.s.sss.s.ss.ss.sss.ss.sss.ss.s [ 40%] 1316s s.s.ss.ss.s.ss.ss.s..............s.ss.s.s.ss.ss.ss.s.ss.ssssssss.ss.ss.. [ 43%] 1316s ss.ss.ss.ss.sss.s.ss.sss.ss.sss.ssssssssssssssssssssssssssssssssssssssss [ 45%] 1316s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 47%] 1317s sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss.s.s....... [ 50%] 1317s .........ss.ss.s.ss.ss.s.ss......ss.s..sss.ss.s.ss.s.ss.ss.sss.ss.ss.sss [ 52%] 1318s ssssssssssssssssssssssssssssssssssssssssssss.s.ss.ss.sss.s.ss.ss.s.ss.s. [ 55%] 1318s ss.sssssssssssssssssssssssssss.ss.sss.s.ss.s.ss.s.ss.ss.ss.s.s.ss.ss.sss [ 57%] 1318s .ss.ss.s.s.ss.sss.ss.ss.s.ss.s.ss.ss.ss.ss.ss.s.ss.s.ss................. [ 59%] 1319s ........................................................................ [ 62%] 1319s .s.ss.ss.ss.ss.ss.ss.s....s.ss.s.s.ss.s.ss.s.........................s.s [ 64%] 1320s s.ss.ss.ss.sss.sss.s.ss.sss.ss.ss.s.ss.s.s.ss.s.s................ss.s.ss [ 67%] 1320s .ss.ss.ss.ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 69%] 1321s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 71%] 1321s sssssssssssssssssssssssssssssssssssss.s.s.ss.s.s.ss.ss.ss.ss.ss.s.ss.ss. [ 74%] 1321s ss.sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 76%] 1322s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 79%] 1322s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 81%] 1322s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 83%] 1323s ss.ss..ss.s.s.ss.ss.ss.s............ss.ss.s.s.ss.s.sssssssssssssssssssss [ 86%] 1323s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 88%] 1323s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 91%] 1324s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 93%] 1324s ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss [ 95%] 1324s ss.sss.s.ss.ss.ss.ss.s.ss.ss.s.sssssssssssssssssssssssssssssssss.s.s.... [ 98%] 1325s ..s.ss.s.s.sssssssssssssss......s.ssssssssssss...... [100%] 1325s =================================== FAILURES =================================== 1325s ______________________ TestMyModule.test_zapi_send_error _______________________ 1325s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1325s 1325s self = 1325s 1325s def test_zapi_send_error(self): 1325s '''Test rest send error''' 1325s data = self.mock_args() 1325s data['use_rest'] = 'Never' 1325s set_module_args(data) 1325s with pytest.raises(AnsibleFailJson) as exc: 1325s self.get_invoke_mock_object(use_rest=False).apply() 1325s msg = "Error on sending autosupport message to node %s: NetApp API failed. Reason - test:Expected error." % data['name'] 1325s > assert exc.value.args[0]['msg'] == msg 1325s E assert "Error: the p... 'netapp_lib'" == 'Error on sen...pected error.' 1325s E 1325s E - Error on sending autosupport message to node test_node: NetApp API failed. Reason - test:Expected error. 1325s E + Error: the python NetApp-Lib module is required. Import error: No module named 'netapp_lib' 1325s 1325s tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py:103: AssertionError 1325s ----------------------------- Captured stdout call ----------------------------- 1325s WARNING: Error: "message" option conflicts with Ansible internal variable - please use "autosupport_message". 1325s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp/ontap/tests/output/junit/python3.13-modules-units.xml - 1325s =========================== short test summary info ============================ 1325s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_active_directory.py: skipping as missing required netapp_lib 1325s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_cluster.py: skipping as missing required netapp_lib 1325s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_active_directory_domain_controllers.py: skipping as missing required netapp_lib 1325s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_aggregate.py: skipping as missing required netapp_lib 1325s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_cluster_ha.py: skipping as missing required netapp_lib 1325s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_cluster_peer.py: skipping as missing required netapp_lib 1325s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_command.py: skipping as missing required netapp_lib 1325s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_debug.py: skipping as missing required netapp_lib 1325s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_disks.py: skipping as missing required netapp_lib 1325s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_dns.py: skipping as missing required netapp_lib 1325s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_domain_tunnel.py: skipping as missing required netapp_lib 1325s SKIPPED [29] tests/unit/plugins/modules/test_na_ontap_efficiency_policy.py: skipping as missing required netapp_lib 1325s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_autosupport.py: skipping as missing required netapp_lib 1325s SKIPPED [32] tests/unit/plugins/modules/test_na_ontap_broadcast_domain.py: skipping as missing required netapp_lib 1325s SKIPPED [2] tests/unit/plugins/modules/test_na_ontap_cg_snapshot.py: skipping as missing required netapp_lib 1325s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_export_policy.py: skipping as missing required netapp_lib 1325s SKIPPED [18] tests/unit/plugins/modules/test_na_ontap_export_policy_rule.py: skipping as missing required netapp_lib 1325s SKIPPED [34] tests/unit/plugins/modules/test_na_ontap_cifs.py: skipping as missing required netapp_lib 1325s SKIPPED [25] tests/unit/plugins/modules/test_na_ontap_cifs_acl.py: skipping as missing required netapp_lib 1325s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_cifs_local_group.py: skipping as missing required netapp_lib 1325s SKIPPED [3] tests/unit/plugins/modules/test_na_ontap_file_directory_policy.py: skipping as missing required netapp_lib 1325s SKIPPED [18] tests/unit/plugins/modules/test_na_ontap_cifs_local_group_member.py: skipping as missing required netapp_lib 1325s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_cifs_local_user_modify.py: skipping as missing required netapp_lib 1325s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_firewall_policy.py: skipping as missing required netapp_lib 1325s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_cifs_local_user_set_password.py: skipping as missing required netapp_lib 1325s SKIPPED [40] tests/unit/plugins/modules/test_na_ontap_firmware_upgrade.py: skipping as missing required netapp_lib 1325s SKIPPED [49] tests/unit/plugins/modules/test_na_ontap_cifs_server.py: skipping as missing required netapp_lib 1325s SKIPPED [43] tests/unit/plugins/modules/test_na_ontap_flexcache.py: skipping as missing required netapp_lib 1325s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_job_schedule.py: skipping as missing required netapp_lib 1325s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_fpolicy_event.py: skipping as missing required netapp_lib 1325s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_fpolicy_ext_engine.py: skipping as missing required netapp_lib 1325s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_fpolicy_policy.py: skipping as missing required netapp_lib 1325s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_kerberos_realm.py: skipping as missing required netapp_lib 1325s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_fpolicy_scope.py: skipping as missing required netapp_lib 1325s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_ldap_client.py: skipping as missing required netapp_lib 1325s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_fpolicy_status.py: skipping as missing required netapp_lib 1325s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_igroup.py: skipping as missing required netapp_lib 1325s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_license.py: skipping as missing required netapp_lib 1325s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_igroup_initiator.py: skipping as missing required netapp_lib 1325s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_license_nlf.py: skipping as missing required netapp_lib 1325s SKIPPED [48] tests/unit/plugins/modules/test_na_ontap_info.py: skipping as missing required netapp_lib 1325s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_log_forward.py: skipping as missing required netapp_lib 1325s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_login_messages.py: skipping as missing required netapp_lib 1325s SKIPPED [77] tests/unit/plugins/modules/test_na_ontap_interface.py: skipping as missing required netapp_lib 1325s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_lun.py: skipping as missing required netapp_lib 1325s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_lun_app_rest.py: skipping as missing required netapp_lib 1325s SKIPPED [5] tests/unit/plugins/modules/test_na_ontap_lun_copy.py: skipping as missing required netapp_lib 1325s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_lun_map.py: skipping as missing required netapp_lib 1325s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_lun_map_reporting_nodes.py: skipping as missing required netapp_lib 1325s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_lun_map_rest.py: skipping as missing required netapp_lib 1325s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_ipspace.py: skipping as missing required netapp_lib 1325s SKIPPED [21] tests/unit/plugins/modules/test_na_ontap_iscsi.py: skipping as missing required netapp_lib 1325s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_nvme_subsystem.py: skipping as missing required netapp_lib 1325s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_motd.py: skipping as missing required netapp_lib 1325s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_name_mappings.py: skipping as missing required netapp_lib 1325s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_name_service_switch.py: skipping as missing required netapp_lib 1325s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_object_store.py: skipping as missing required netapp_lib 1325s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_ndmp.py: skipping as missing required netapp_lib 1325s SKIPPED [32] tests/unit/plugins/modules/test_na_ontap_net_ifgrp.py: skipping as missing required netapp_lib 1325s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_partitions.py: skipping as missing required netapp_lib 1325s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_ports.py: skipping as missing required netapp_lib 1325s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_net_port.py: skipping as missing required netapp_lib 1325s SKIPPED [23] tests/unit/plugins/modules/test_na_ontap_net_routes.py: skipping as missing required netapp_lib 1325s SKIPPED [23] tests/unit/plugins/modules/test_na_ontap_portset.py: skipping as missing required netapp_lib 1325s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_net_subnet.py: skipping as missing required netapp_lib 1325s SKIPPED [12] tests/unit/plugins/modules/test_na_ontap_nfs.py: skipping as missing required netapp_lib 1325s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_qos_adaptive_policy_group.py: skipping as missing required netapp_lib 1325s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_qos_policy_group.py: skipping as missing required netapp_lib 1325s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_node.py: skipping as missing required netapp_lib 1325s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_ntfs_dacl.py: skipping as missing required netapp_lib 1325s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_ntfs_sd.py: skipping as missing required netapp_lib 1325s SKIPPED [29] tests/unit/plugins/modules/test_na_ontap_qtree.py: skipping as missing required netapp_lib 1325s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_nvme.py: skipping as missing required netapp_lib 1325s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_nvme_namespace.py: skipping as missing required netapp_lib 1325s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_quota_policy.py: skipping as missing required netapp_lib 1325s SKIPPED [47] tests/unit/plugins/modules/test_na_ontap_quotas.py: skipping as missing required netapp_lib 1325s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_security_config.py: skipping as missing required netapp_lib 1325s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_restit.py: skipping as missing required netapp_lib 1325s SKIPPED [27] tests/unit/plugins/modules/test_na_ontap_security_key_manager.py: skipping as missing required netapp_lib 1325s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_security_ssh.py: skipping as missing required netapp_lib 1325s SKIPPED [33] tests/unit/plugins/modules/test_na_ontap_snapmirror_policy.py: skipping as missing required netapp_lib 1325s SKIPPED [17] tests/unit/plugins/modules/test_na_ontap_service_processor_network.py: skipping as missing required netapp_lib 1325s SKIPPED [19] tests/unit/plugins/modules/test_na_ontap_snapshot.py: skipping as missing required netapp_lib 1325s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_snaplock_clock.py: skipping as missing required netapp_lib 1325s SKIPPED [79] tests/unit/plugins/modules/test_na_ontap_snapmirror.py: skipping as missing required netapp_lib 1325s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_snapshot_policy.py: skipping as missing required netapp_lib 1325s SKIPPED [30] tests/unit/plugins/modules/test_na_ontap_snapshot_policy_rest.py: skipping as missing required netapp_lib 1325s SKIPPED [83] tests/unit/plugins/modules/test_na_ontap_svm.py: skipping as missing required netapp_lib 1325s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_snmp_traphosts.py: skipping as missing required netapp_lib 1325s SKIPPED [44] tests/unit/plugins/modules/test_na_ontap_software_update.py: skipping as missing required netapp_lib 1325s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_storage_auto_giveback.py: skipping as missing required netapp_lib 1325s SKIPPED [2] tests/unit/plugins/modules/test_na_ontap_template.py: skipping as missing required netapp_lib 1325s SKIPPED [15] tests/unit/plugins/modules/test_na_ontap_storage_failover.py: skipping as missing required netapp_lib 1325s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_ucadapter.py: skipping as missing required netapp_lib 1325s SKIPPED [35] tests/unit/plugins/modules/test_na_ontap_unix_group.py: skipping as missing required netapp_lib 1325s SKIPPED [39] tests/unit/plugins/modules/test_na_ontap_user.py: skipping as missing required netapp_lib 1325s SKIPPED [26] tests/unit/plugins/modules/test_na_ontap_unix_user.py: skipping as missing required netapp_lib 1325s SKIPPED [25] tests/unit/plugins/modules/test_na_ontap_user_dicts.py: skipping as missing required netapp_lib 1325s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_user_role.py: skipping as missing required netapp_lib 1325s SKIPPED [111] tests/unit/plugins/modules/test_na_ontap_volume.py: skipping as missing required netapp_lib 1325s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_volume_autosize.py: skipping as missing required netapp_lib 1325s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_volume_clone_rest.py: skipping as missing required netapp_lib 1325s SKIPPED [16] tests/unit/plugins/modules/test_na_ontap_volume_efficiency.py: skipping as missing required netapp_lib 1325s SKIPPED [11] tests/unit/plugins/modules/test_na_ontap_volume_clone.py: skipping as missing required netapp_lib 1325s SKIPPED [94] tests/unit/plugins/modules/test_na_ontap_volume_rest.py: skipping as missing required netapp_lib 1325s SKIPPED [10] tests/unit/plugins/modules/test_na_ontap_vscan.py: skipping as missing required netapp_lib 1325s SKIPPED [21] tests/unit/plugins/modules/test_na_ontap_vscan_on_access_policy.py: skipping as missing required netapp_lib 1325s SKIPPED [4] tests/unit/plugins/modules/test_na_ontap_volume_snaplock.py: skipping as missing required netapp_lib 1325s SKIPPED [9] tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task_rest.py: skipping as missing required netapp_lib 1325s SKIPPED [8] tests/unit/plugins/modules/test_na_ontap_vscan_scanner_pool.py: skipping as missing required netapp_lib 1325s SKIPPED [7] tests/unit/plugins/modules/test_na_ontap_vscan_on_demand_task.py: skipping as missing required netapp_lib 1325s SKIPPED [14] tests/unit/plugins/modules/test_na_ontap_vserver_audit.py: skipping as missing required netapp_lib 1325s SKIPPED [6] tests/unit/plugins/modules/test_na_ontap_vserver_cifs_security.py: skipping as missing required netapp_lib 1325s SKIPPED [28] tests/unit/plugins/modules/test_na_ontap_vserver_peer.py: skipping as missing required netapp_lib 1325s SKIPPED [20] tests/unit/plugins/modules/test_na_ontap_wait_for_condition.py: skipping as missing required netapp_lib 1325s SKIPPED [13] tests/unit/plugins/modules/test_na_ontap_zapit.py: skipping as missing required netapp_lib 1325s FAILED tests/unit/plugins/modules/test_na_ontap_autosupport_invoke.py::TestMyModule::test_zapi_send_error 1325s ================= 1 failed, 645 passed, 2358 skipped in 23.02s ================= 1325s 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.HRV60t/build.QGA/src/ansible_collections/netapp/ontap/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp/ontap --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1325s ## return code is 1 1325s 1325s 1325s 1325s ############################################################ 1325s ############################################################ 1325s #### Running FLAKY tests in ansible_collections/ngine_io/cloudstack 1325s ############################################################ 1325s ############################################################ 1325s Unit test controller with Python 3.13 1326s ============================= test session starts ============================== 1326s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1326s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ngine_io/cloudstack 1326s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1326s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1326s created: 2/2 workers 1326s 2 workers [0 items] 1326s 1326s 1326s ==================================== ERRORS ==================================== 1326s _________ ERROR collecting tests/unit/modules/test_cs_traffic_type.py __________ 1326s ImportError while importing test module '/tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ngine_io/cloudstack/tests/unit/modules/test_cs_traffic_type.py'. 1326s Hint: make sure your test modules/packages have valid Python names. 1326s Traceback: 1326s /usr/lib/python3.13/importlib/__init__.py:88: in import_module 1326s return _bootstrap._gcd_import(name[level:], package, level) 1326s /usr/lib/python3/dist-packages/ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py:65: in exec_module 1326s assertion_rewriting_hook.exec_module(module) 1326s tests/unit/modules/test_cs_traffic_type.py:4: in 1326s from units.compat import unittest 1326s E ModuleNotFoundError: No module named 'units' 1326s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml - 1326s =========================== short test summary info ============================ 1326s ERROR tests/unit/modules/test_cs_traffic_type.py 1326s =============================== 1 error in 0.32s =============================== 1326s 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.HRV60t/build.QGA/src/ansible_collections/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ngine_io/cloudstack --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ngine_io/cloudstack tests/unit/modules/test_cs_traffic_type.py" returned exit status 1. 1326s ## return code is 1 1326s 1326s 1326s 1326s ############################################################ 1326s ############################################################ 1326s #### Running FLAKY tests in ansible_collections/sensu/sensu_go 1326s ############################################################ 1326s ############################################################ 1326s Unit test modules with Python 3.13 1327s ============================= test session starts ============================== 1327s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1327s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go 1327s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1327s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1327s created: 2/2 workers 1327s 2 workers [346 items] 1327s 1328s ........................................................................ [ 20%] 1328s ..................................................................F..... [ 41%] 1328s ........................................................................ [ 62%] 1329s ........................................................................ [ 83%] 1329s .......................................................... [100%] 1329s =================================== FAILURES =================================== 1329s _ TestDatastoreParams.test_parameters_datastore[my_resource-absent--None-None-None-None-None-None-False-True-expected_payload2] _ 1329s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1329s 1329s self = 1329s mocker = 1329s name = 'my_resource', state = 'absent', dsn = '', pool_size = None 1329s max_conn_lifetime = None, max_idle_conns = None, batch_workers = None 1329s batch_buffer = None, batch_size = None, enable_round_robin = False 1329s strict = True 1329s expected_payload = {'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 'spec': {'dsn': '', 'enable_round_robin': False, 'strict': True}, 'type': 'PostgresConfig'} 1329s 1329s @pytest.mark.parametrize( 1329s # name ... Resource name 1329s # state ... Prefered resource state (Present/Absent) 1329s # dsn ... url or postgre connection string 1329s # pool_size ... max number of connections 1329s # max_conn_lifetime ... max time a connection can persist 1329s # max_idle_conns ... max number of idle connections 1329s # batch_workers ... number of GOroutines 1329s # batch_buffer ... max requests to buffer in memory 1329s # batch_size ... number of requests in each transaction 1329s # enable_round_robin ... round robin (True/False) 1329s # strict ... strict (True/False) 1329s # expected_payload ... expected payload 1329s ("name", "state", "dsn", "pool_size", "max_conn_lifetime", "max_idle_conns", "batch_workers", 1329s "batch_buffer", "batch_size", "enable_round_robin", "strict", "expected_payload"), 1329s [ 1329s # Present 1329s ("my_resource", "present", "postgresql://user:secret@host:port/dbname", 2, 1, 1, 1, 1, 1, 1329s False, True, 1329s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 1329s 'spec': 1329s { 1329s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 2, 'max_conn_lifetime': '1', 1329s 'max_idle_conns': 1, 'batch_workers': 1, 'batch_buffer': 1, 'batch_size': 1, 1329s 'enable_round_robin': False, 'strict': True}}), 1329s 1329s ("another_resource", "present", "postgresql://user:secret@host:port/dbname", 0, 0, 0, 0, 0, 0, 1329s False, False, 1329s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'another_resource'}, 1329s 'spec': 1329s { 1329s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 0, 'max_conn_lifetime': '0', 1329s 'max_idle_conns': 0, 'batch_workers': 0, 'batch_buffer': 0, 'batch_size': 0, 1329s 'enable_round_robin': False, 'strict': False}}), 1329s # Absent 1329s ("my_resource", "absent", "", None, None, None, None, None, None, 1329s False, True, 1329s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 1329s 'spec': 1329s { 1329s 'dsn': '', 'enable_round_robin': False, 'strict': True}}), 1329s 1329s ("my_resource", "absent", "postgresql://user:secret@host:port/dbname", 2, 1, 1, 1, 2, 3, 1329s False, True, 1329s {'type': 'PostgresConfig', 'api_version': 'store/v1', 'metadata': {'name': 'my_resource'}, 1329s 'spec': 1329s { 1330s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1330s 'dsn': 'postgresql://user:secret@host:port/dbname', 'pool_size': 2, 'max_conn_lifetime': '1', 1330s 'max_idle_conns': 1, 'batch_workers': 1, 'batch_buffer': 2, 'batch_size': 3, 1330s 'enable_round_robin': False, 'strict': True}}), 1330s ], 1330s ) 1330s def test_parameters_datastore(self, mocker, name, state, dsn, pool_size, max_conn_lifetime, max_idle_conns, batch_workers, 1330s batch_buffer, batch_size, enable_round_robin, strict, expected_payload): 1330s sync_mock = mocker.patch.object(datastore, "sync") 1330s sync_mock.return_value = True, {} 1330s set_module_args( 1330s name=name, 1330s dsn=dsn, 1330s state=state, 1330s pool_size=pool_size, 1330s max_conn_lifetime=max_conn_lifetime, 1330s max_idle_conns=max_idle_conns, 1330s batch_workers=batch_workers, 1330s batch_buffer=batch_buffer, 1330s batch_size=batch_size, 1330s enable_round_robin=enable_round_robin, 1330s strict=strict, 1330s ) 1330s with pytest.raises(AnsibleExitJson): 1330s > datastore.main() 1330s 1330s tests/unit/plugins/modules/test_datastore.py:343: 1330s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1330s plugins/modules/datastore.py:184: in main 1330s module = AnsibleModule( 1330s /tmp/ansible-test-c_cxcob8/ansible/module_utils/basic.py:445: in __init__ 1330s self.fail_json(msg=msg) 1330s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1330s 1330s args = (,) 1330s 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'} 1330s 1330s def fail_json(*args, **kwargs): 1330s kwargs['failed'] = True 1330s > raise AnsibleFailJson(kwargs) 1330s 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} 1330s 1330s tests/unit/plugins/modules/common/utils.py:38: AnsibleFailJson 1330s =============================== warnings summary =============================== 1330s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_password_is_invalid_older_than_5_21_0 1330s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:39: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1330s client.version = version.StrictVersion("5.20.2") 1330s 1330s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_older_than_5_21_0[False] 1330s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_older_than_5_21_0[True] 1330s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:120: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1330s client.version = version.StrictVersion("5.20.0") 1330s 1330s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_newer_than_5_21_0 1330s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:129: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1330s client.version = version.StrictVersion("5.21.0") 1330s 1330s tests/unit/plugins/modules/test_user.py::TestUpdatePasswordHash::test_sensu_go_newer_than_5_21_0_check_mode 1330s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:146: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1330s client.version = version.StrictVersion("5.21.0") 1330s 1330s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_password_is_invalid_5_21_0_or_newer 1330s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:53: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1330s client.version = version.StrictVersion("5.21.0") 1330s 1330s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_missing_bcrypt_library[True-False-True] 1330s tests/unit/plugins/modules/test_user.py::TestUpdatePassword::test_missing_bcrypt_library[False-True-None] 1330s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go/tests/unit/plugins/modules/test_user.py:105: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. 1330s client.version = version.StrictVersion("5.21.1") 1330s 1330s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1330s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml - 1330s =========================== short test summary info ============================ 1330s 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] 1330s ================== 1 failed, 345 passed, 8 warnings in 3.20s =================== 1330s ## return code is 1 1330s 1330s 1330s 1330s ############################################################ 1330s ############################################################ 1330s #### Running FLAKY tests in ansible_collections/splunk/es 1330s ############################################################ 1330s ############################################################ 1330s Unit test controller with Python 3.13 1331s ============================= test session starts ============================== 1331s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1331s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/splunk/es 1331s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1331s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1331s created: 2/2 workers 1331s 2 workers [31 items] 1331s 1331s ..............F................ [100%] 1331s =================================== FAILURES =================================== 1331s _ TestSplunkEsCorrelationSearches.test_es_correlation_searches_replaced_idempotent _ 1331s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1331s 1331s self = 1331s conn = 1331s monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x3ffa6840640> 1331s 1331s @patch("ansible.module_utils.connection.Connection.__rpc__") 1331s def test_es_correlation_searches_replaced_idempotent( 1331s self, 1331s conn, 1331s monkeypatch, 1331s ): 1331s self._plugin._connection.socket_path = tempfile.NamedTemporaryFile().name 1331s self._plugin._connection._shell = MagicMock() 1331s 1331s def create_update(self, rest_path, data=None): 1331s return RESPONSE_PAYLOAD 1331s 1331s def get_by_path(self, path): 1331s return RESPONSE_PAYLOAD 1331s 1331s def delete_by_path(self, path): 1331s return {} 1331s 1331s monkeypatch.setattr(SplunkRequest, "create_update", create_update) 1331s monkeypatch.setattr(SplunkRequest, "get_by_path", get_by_path) 1331s monkeypatch.setattr(SplunkRequest, "delete_by_path", delete_by_path) 1331s 1331s self._plugin._task.args = { 1331s "state": "replaced", 1331s "config": [REQUEST_PAYLOAD[0]], 1331s } 1331s result = self._plugin.run(task_vars=self._task_vars) 1331s 1331s > assert result["changed"] is True 1331s E assert False is True 1331s 1331s tests/unit/plugins/action/test_es_correlation_searches.py:309: AssertionError 1331s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/splunk/es/tests/output/junit/python3.13-controller-units.xml - 1331s =========================== short test summary info ============================ 1331s FAILED tests/unit/plugins/action/test_es_correlation_searches.py::TestSplunkEsCorrelationSearches::test_es_correlation_searches_replaced_idempotent 1331s ========================= 1 failed, 30 passed in 0.93s ========================= 1331s 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.HRV60t/build.QGA/src/ansible_collections/splunk/es/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/splunk/es --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1331s ## return code is 1 1331s 1331s 1331s 1331s ############################################################ 1331s ############################################################ 1331s #### Running FLAKY tests in ansible_collections/vmware/vmware 1331s ############################################################ 1331s ############################################################ 1331s Unit test modules with Python 3.13 1332s ============================= test session starts ============================== 1332s platform linux -- Python 3.13.3, pytest-8.3.5, pluggy-1.5.0 1332s rootdir: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vmware/vmware 1332s configfile: ../../../../../../../usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini 1332s plugins: xdist-3.6.1, forked-1.6.0, mock-3.14.0, typeguard-4.4.2 1332s created: 2/2 workers 1332s 2 workers [18 items] 1332s 1332s ............FF...F [100%] 1332s =================================== FAILURES =================================== 1332s _______________ TestModuleRestBase.test_get_content_library_ids ________________ 1332s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1332s 1332s self = 1332s mocker = 1332s 1332s def test_get_content_library_ids(self, mocker): 1332s > self.__prepare(mocker) 1332s 1332s tests/unit/plugins/modules/test_utils_module_rest_base.py:29: 1332s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1332s tests/unit/plugins/modules/test_utils_module_rest_base.py:16: in __prepare 1332s self.base = ModuleRestBase( 1332s plugins/module_utils/_module_rest_base.py:29: in __init__ 1332s super().__init__(connection_params=module.params) 1332s plugins/module_utils/clients/_rest.py:48: in __init__ 1332s self.check_requirements() 1332s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1332s 1332s self = 1332s 1332s def check_requirements(self): 1332s """ 1332s Check all requirements for this client are satisfied 1332s """ 1332s if REQUESTS_IMP_ERR: 1332s raise MissingLibError('requests', REQUESTS_IMP_ERR) 1332s if VSPHERE_IMP_ERR: 1332s > raise MissingLibError( 1332s 'vSphere Automation SDK', VSPHERE_IMP_ERR, 1332s url='https://code.vmware.com/web/sdk/7.0/vsphere-automation-python' 1332s ) 1332s 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 1332s 1332s plugins/module_utils/clients/_rest.py:65: MissingLibError 1332s ____________________ TestModuleRestBase.test_get_vm_by_name ____________________ 1332s [gw1] linux -- Python 3.13.3 /usr/bin/python3 1332s 1332s self = 1332s mocker = 1332s 1332s def test_get_vm_by_name(self, mocker): 1332s > self.__prepare(mocker) 1332s 1332s tests/unit/plugins/modules/test_utils_module_rest_base.py:21: 1332s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1332s tests/unit/plugins/modules/test_utils_module_rest_base.py:16: in __prepare 1332s self.base = ModuleRestBase( 1332s plugins/module_utils/_module_rest_base.py:29: in __init__ 1332s super().__init__(connection_params=module.params) 1332s plugins/module_utils/clients/_rest.py:48: in __init__ 1332s self.check_requirements() 1332s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1332s 1332s self = 1332s 1332s def check_requirements(self): 1332s """ 1332s Check all requirements for this client are satisfied 1332s """ 1332s if REQUESTS_IMP_ERR: 1332s raise MissingLibError('requests', REQUESTS_IMP_ERR) 1332s if VSPHERE_IMP_ERR: 1332s > raise MissingLibError( 1332s 'vSphere Automation SDK', VSPHERE_IMP_ERR, 1332s url='https://code.vmware.com/web/sdk/7.0/vsphere-automation-python' 1332s ) 1332s 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 1332s 1332s plugins/module_utils/clients/_rest.py:65: MissingLibError 1332s _____________________ TestRestClient.test_get_tags_by_moid _____________________ 1332s [gw0] linux -- Python 3.13.3 /usr/bin/python3 1332s 1332s self = 1332s mocker = 1332s 1332s def test_get_tags_by_moid(self, mocker): 1332s > self.__prepare(mocker) 1332s 1332s tests/unit/plugins/modules/test_utils_rest_client.py:21: 1332s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1332s tests/unit/plugins/modules/test_utils_rest_client.py:10: in __prepare 1332s client_mock = mocker.patch('ansible_collections.vmware.vmware.plugins.module_utils.clients._rest.create_vsphere_client') 1332s /usr/lib/python3/dist-packages/pytest_mock/plugin.py:440: in __call__ 1332s return self._start_patch( 1332s /usr/lib/python3/dist-packages/pytest_mock/plugin.py:258: in _start_patch 1332s mocked: MockType = p.start() 1332s /usr/lib/python3.13/unittest/mock.py:1654: in start 1332s result = self.__enter__() 1332s /usr/lib/python3.13/unittest/mock.py:1497: in __enter__ 1332s original, local = self.get_original() 1332s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1332s 1332s self = 1332s 1332s def get_original(self): 1332s target = self.getter() 1332s name = self.attribute 1332s 1332s original = DEFAULT 1332s local = False 1332s 1332s try: 1332s original = target.__dict__[name] 1332s except (AttributeError, KeyError): 1332s original = getattr(target, name, DEFAULT) 1332s else: 1332s local = True 1332s 1332s if name in _builtins and isinstance(target, ModuleType): 1332s self.create = True 1332s 1332s if not self.create and original is DEFAULT: 1332s > raise AttributeError( 1332s "%s does not have the attribute %r" % (target, name) 1332s ) 1332s E AttributeError: does not have the attribute 'create_vsphere_client' 1332s 1332s /usr/lib/python3.13/unittest/mock.py:1467: AttributeError 1332s =============================== warnings summary =============================== 1332s tests/unit/plugins/modules/test_utils_pyvmomi_client.py::TestPyvmomiClient::test_get_all_objs_by_type 1332s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vmware/vmware/plugins/module_utils/clients/_pyvmomi.py:130: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 1332s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 1332s 1332s tests/unit/plugins/modules/test_utils_pyvmomi_client.py::TestPyvmomiClient::test_class_init 1332s /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vmware/vmware/plugins/module_utils/clients/_pyvmomi.py:125: DeprecationWarning: ssl.PROTOCOL_TLS is deprecated 1332s ssl_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) 1332s 1332s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1332s - generated xml file: /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vmware/vmware/tests/output/junit/python3.13-modules-units.xml - 1332s =========================== short test summary info ============================ 1332s FAILED tests/unit/plugins/modules/test_utils_module_rest_base.py::TestModuleRestBase::test_get_content_library_ids 1332s FAILED tests/unit/plugins/modules/test_utils_module_rest_base.py::TestModuleRestBase::test_get_vm_by_name 1332s FAILED tests/unit/plugins/modules/test_utils_rest_client.py::TestRestClient::test_get_tags_by_moid 1332s =================== 3 failed, 15 passed, 2 warnings in 0.94s =================== 1332s FATAL: Command "pytest -r a -n auto --color no -p no:cacheprovider -c /usr/lib/python3/dist-packages/ansible_test/_data/pytest/config/default.ini --junit-xml /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vmware/vmware/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vmware/vmware --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1332s ## return code is 1 1332s ############################################################ 1332s ############################################################ 1332s #### failed tests are: 1332s #### ansible_collections/ansible/utils 1332s #### ansible_collections/cisco/aci 1332s #### ansible_collections/cisco/dnac 1332s #### ansible_collections/community/dns 1332s #### ansible_collections/community/general 1332s #### ansible_collections/community/hrobot 1332s #### ansible_collections/community/library_inventory_filtering_v1 1332s #### ansible_collections/infoblox/nios_modules 1332s #### ansible_collections/junipernetworks/junos 1332s #### ansible_collections/netapp_eseries/santricity 1332s #### ansible_collections/netapp/ontap 1332s #### ansible_collections/ngine_io/cloudstack 1332s #### ansible_collections/sensu/sensu_go 1332s #### ansible_collections/splunk/es 1332s #### ansible_collections/vmware/vmware 1332s ############################################################ 1332s ############################################################ 1333s autopkgtest [15:12:16]: test unit-tests-flaky.py: -----------------------] 1334s autopkgtest [15:12:17]: test unit-tests-flaky.py: - - - - - - - - - - results - - - - - - - - - - 1334s unit-tests-flaky.py FLAKY non-zero exit status 1 1334s autopkgtest [15:12:17]: test unit-tests-flaky.py: - - - - - - - - - - stderr - - - - - - - - - - 1334s 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.HRV60t/build.QGA/src/ansible_collections/ansible/utils/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ansible/utils --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/cisco/aci/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/aci --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/aci tests/unit/module_utils/test_aci.py" returned exit status 1. 1334s 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.HRV60t/build.QGA/src/ansible_collections/cisco/dnac/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/cisco/dnac --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/community/dns/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/dns --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/community/general/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/general --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/community/hrobot/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/hrobot --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/community/library_inventory_filtering_v1/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/library_inventory_filtering_v1 --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/community/library_inventory_filtering_v1 tests/unit/plugins/plugin_utils/test_inventory_filter.py" returned exit status 1. 1334s 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.HRV60t/build.QGA/src/ansible_collections/infoblox/nios_modules/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/infoblox/nios_modules --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/junipernetworks/junos/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/junipernetworks/junos --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp_eseries/santricity --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/netapp/ontap/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/netapp/ontap --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/ngine_io/cloudstack/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ngine_io/cloudstack --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/ngine_io/cloudstack tests/unit/modules/test_cs_traffic_type.py" returned exit status 1. 1334s 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.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/sensu/sensu_go --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/splunk/es/tests/output/junit/python3.13-controller-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/splunk/es --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s 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.HRV60t/build.QGA/src/ansible_collections/vmware/vmware/tests/output/junit/python3.13-modules-units.xml --strict-markers --rootdir /tmp/autopkgtest.HRV60t/build.QGA/src/ansible_collections/vmware/vmware --confcutdir /tmp/autopkgtest.HRV60t/build.QGA/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. 1334s autopkgtest [15:12:17]: @@@@@@@@@@@@@@@@@@@@ summary 1334s unit-tests-stable.py PASS 1334s unit-tests-flaky.py FLAKY non-zero exit status 1 1352s nova [W] Using flock in prodstack6-s390x 1352s Creating nova instance adt-questing-s390x-ansible-20250502-145003-juju-7f2275-prod-proposed-migration-environment-2-41ac9d81-7acf-49a5-9cef-a0a1e823e877 from image adt/ubuntu-questing-s390x-server-20250502.img (UUID 632ecfca-a19d-4f3a-af48-b7883fa0ccf2)... 1352s nova [W] Timed out waiting for 45d017d8-e116-4b0c-9b9a-5d712e8e470b to get deleted. 1352s nova [W] Using flock in prodstack6-s390x 1352s Creating nova instance adt-questing-s390x-ansible-20250502-145003-juju-7f2275-prod-proposed-migration-environment-2-41ac9d81-7acf-49a5-9cef-a0a1e823e877 from image adt/ubuntu-questing-s390x-server-20250502.img (UUID 632ecfca-a19d-4f3a-af48-b7883fa0ccf2)... 1352s nova [W] Timed out waiting for 96662a6e-329d-495f-8ecc-0faf5d6315bd to get deleted.