diff options
Diffstat (limited to 'ansible_collections/cisco/dnac')
415 files changed, 2508 insertions, 1849 deletions
diff --git a/ansible_collections/cisco/dnac/.github/workflows/docs.yml b/ansible_collections/cisco/dnac/.github/workflows/docs.yml index 1f69ba0d6..46ab0dbc2 100644 --- a/ansible_collections/cisco/dnac/.github/workflows/docs.yml +++ b/ansible_collections/cisco/dnac/.github/workflows/docs.yml @@ -6,21 +6,21 @@ on: - v[0-9]+.[0-9]+.[0-9]+ branches: - main - + workflow_dispatch: jobs: docs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: configure git run: | git config user.name "${GITHUB_ACTOR}" git config user.email "${GITHUB_ACTOR}@bots.github.com" git fetch --no-tags --prune --depth=1 origin +refs/heads/*:refs/remotes/origin/* - name: Set up Python - uses: actions/setup-python@v2 + uses: actions/setup-python@v5 with: - python-version: "3.7" + python-version: "3.11" - name: Install dependencies run: make doc-setup - name: Build docs diff --git a/ansible_collections/cisco/dnac/.github/workflows/sanity_tests.yml b/ansible_collections/cisco/dnac/.github/workflows/sanity_tests.yml index 32d46d478..e974d81c7 100644 --- a/ansible_collections/cisco/dnac/.github/workflows/sanity_tests.yml +++ b/ansible_collections/cisco/dnac/.github/workflows/sanity_tests.yml @@ -5,22 +5,30 @@ on: pull_request: schedule: - cron: '0 6 * * *' + workflow_dispatch: env: NAMESPACE: cisco COLLECTION_NAME: dnac jobs: + # https://docs.ansible.com/ansible/latest/reference_appendices/release_and_maintenance.html#ansible-core-support-matrix + # 2.14 supports Python 3.9-3.11 + # 2.15 supports Python 3.9-3.11 + # 2.16 supports Python 3.10-3.12 + # https://docs.ansible.com/ansible/devel/roadmap/ROADMAP_2_17.html + # milestone is 2.17 until after 2.17 branches from devel + # devel is 2.17 until 2024-04-01 sanity: name: Sanity (â’¶${{ matrix.ansible }}) strategy: matrix: ansible: - - stable-2.14 - stable-2.15 - - devel - runs-on: ubuntu-20.04 + - stable-2.16 + - stable-2.17 + runs-on: ubuntu-22.04 steps: - name: Check out code - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: path: cisco-en-programmability/dnacenter-ansible - name: Create directory @@ -28,9 +36,9 @@ jobs: - name: Move repository run: mv ./cisco-en-programmability/dnacenter-ansible ./ansible_collections/${{env.NAMESPACE}}/${{env.COLLECTION_NAME}} - name: Set up Python - uses: actions/setup-python@v3 + uses: actions/setup-python@v5 with: - python-version: '3.10' + python-version: '3.11' - name: Install ansible-base (${{ matrix.ansible }}) run: pip install https://github.com/ansible/ansible/archive/${{ matrix.ansible }}.tar.gz --disable-pip-version-check - name: Run sanity tests diff --git a/ansible_collections/cisco/dnac/.github/workflows/sanity_tests_devel.yml b/ansible_collections/cisco/dnac/.github/workflows/sanity_tests_devel.yml new file mode 100644 index 000000000..98b549491 --- /dev/null +++ b/ansible_collections/cisco/dnac/.github/workflows/sanity_tests_devel.yml @@ -0,0 +1,32 @@ +name: CI Devel +on: + workflow_dispatch: +env: + NAMESPACE: cisco + COLLECTION_NAME: dnac +jobs: + sanity: + name: Sanity (â’¶${{ matrix.ansible }}) + strategy: + matrix: + ansible: + - devel + runs-on: ubuntu-22.04 + steps: + - name: Check out code + uses: actions/checkout@v4 + with: + path: cisco-en-programmability/dnacenter-ansible + - name: Create directory + run: mkdir -p ./ansible_collections/${{env.NAMESPACE}} + - name: Move repository + run: mv ./cisco-en-programmability/dnacenter-ansible ./ansible_collections/${{env.NAMESPACE}}/${{env.COLLECTION_NAME}} + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.11' + - name: Install ansible-base (${{ matrix.ansible }}) + run: pip install https://github.com/ansible/ansible/archive/${{ matrix.ansible }}.tar.gz --disable-pip-version-check + - name: Run sanity tests + run: ansible-test sanity --docker -v --color + working-directory: ./ansible_collections/${{env.NAMESPACE}}/${{env.COLLECTION_NAME}} diff --git a/ansible_collections/cisco/dnac/FILES.json b/ansible_collections/cisco/dnac/FILES.json index 3986f5776..7286b9cd5 100644 --- a/ansible_collections/cisco/dnac/FILES.json +++ b/ansible_collections/cisco/dnac/FILES.json @@ -2818,7 +2818,7 @@ "name": "plugins/module_utils/dnac.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d1e4ec066734657d8a31d57fdf241dfb7b21e88d042db1fea1f65f2f09b7ff24", + "chksum_sha256": "f36fc397baecb8b3936be4de24ebb50c5fc2c7bc3b3ed76d5cde908b715fd0bd", "format": 1 }, { @@ -2832,1085 +2832,1085 @@ "name": "plugins/modules/tag_member.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "203c909628aff2179480a93f6e37ab0a16e075db1c288c024e61455242e7dc81", + "chksum_sha256": "34fdb2053f4dbe10ec14ed19fa2207895d307dba5ea319dff4ec631cd71c589c", "format": 1 }, { "name": "plugins/modules/disasterrecovery_system_operationstatus_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "169d958c1852cf2c344f64539855c6a6b189217d00aaae488df74651596ab5b4", + "chksum_sha256": "338fc2d9fb90e5a71ac2d4c6f8cf7d28dc25869f5d2ef6fdf5757e23b38edb4b", "format": 1 }, { "name": "plugins/modules/network_device_by_serial_number_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "454e39903902ff3ca060d8fde9d8f63109351e9012a6409e9cda63eb018de397", + "chksum_sha256": "333d4019c7c97edb935b5edc2dbf6f31ac01a9fb85edbcc4970cdf10838abf54", "format": 1 }, { "name": "plugins/modules/wireless_enterprise_ssid_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "de5ae304337527808b45223ee75b92ac6e44a745594986860c8dbf534cafe4a0", + "chksum_sha256": "77347253283a1530cd0fad6437990a9fc4324810cd8b32ec6f9eb938d3d9d156", "format": 1 }, { "name": "plugins/modules/sda_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7b3abf7c124506adb650e100e25ff93095e8d44f88970edeac372829f37b301b", + "chksum_sha256": "bb754d9e70ec973e1a807c5725d33c0eda80eb8c5c92cede20dfa29865f90822", "format": 1 }, { "name": "plugins/modules/network_device_custom_prompt.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6f4ffb70cfcad7ccda83fe1adbc105a687ff29f84158b2eafd310560404ba6cc", + "chksum_sha256": "80d8f21b58d669ec05a6f5d3e9a0cffa4a9acb12497202d5d7f73fa6f178326a", "format": 1 }, { "name": "plugins/modules/configuration_template_deploy_status_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bb7d0b67ea6d91f6e65a11b06df6b9ea0b3836814e6cb3d4ffa1e769deff4ffa", + "chksum_sha256": "08013512def343c074bf7c61562eb19f7d032e068c9c7490a75ef4f056a745af", "format": 1 }, { "name": "plugins/modules/file_namespaces_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c317859717dac84425184ebf9b11f48f6cfec9d6104b8a5e09f7fa02d22d7b4f", + "chksum_sha256": "f4321c28883bf4ef2f5c2e2138ba553eef2449a64af6fec22f70f942fd185a10", "format": 1 }, { "name": "plugins/modules/syslog_config_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "252947ca52152d098f82596a66adaba99f8a26c96aa5f746eb07d42d99b11a1a", + "chksum_sha256": "64fab4d7ca2e088eec6df77a7b34dad99413db65e0d1e2dc1bc1df087a03f958", "format": 1 }, { "name": "plugins/modules/buildings_planned_access_points_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "904446f88544bfed37ab92855b5b3f05ab0dafad096689e6a45cbaea631d55c6", + "chksum_sha256": "913eac273b931f533e656c155798c8cb6f6470cb162d11ee99b4bc8da3494970", "format": 1 }, { "name": "plugins/modules/reports_view_group_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6d99b212f111603c01bcc4c7f1bff2ff589825f2e583c8e2559dad43055a0c85", + "chksum_sha256": "851bf33899e8784e2d86d5c1cfb2bdb5694001ee71acb73e0a8386720e2eb399", "format": 1 }, { "name": "plugins/modules/wireless_provision_ssid_create_provision.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bcc7b579d54ffc26c1def2f4196367b2eb758d18c143249122fb43a9529dd89c", + "chksum_sha256": "cded1c74ad3da8fc10d9ada27632cdd8cc36d904fb1fb8150754160d6539dbf3", "format": 1 }, { "name": "plugins/modules/pnp_device_claim.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a6371657e6f9fe7e968d118d7a7f5e5bb1da056535daaef24e441b78d381bf16", + "chksum_sha256": "602231c84933ddd1e3ee06b665a6732c14d2789ceed318ab2a45cc7b1d37c554", "format": 1 }, { "name": "plugins/modules/snmpv2_read_community_credential.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "cbe2cebcfc426a79bb8ddf73979d1f089d4c09ce7fac9f98009d4ee9c17bfdca", + "chksum_sha256": "233bb1488321b2efad2aac315fccb11a4ab4ff577638f6a13f368e776346960f", "format": 1 }, { "name": "plugins/modules/snmp_properties.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "19254d3864bc2b7c3b902d500b9dea3c18b394ddcc751ed74f2e3f16fa176f8a", + "chksum_sha256": "696f1758dcdb3a1d7baf721a1d3116f0d1708179ea191a11a3a156e4206234d1", "format": 1 }, { "name": "plugins/modules/wireless_profile_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "02d3c53adadf11257d89c1b9e1d616459358fbac84e6e476070984e9b7b466ee", + "chksum_sha256": "c7b6af622e5a439f772afff88f0d4a08b643539de664e06e04236eadd4947fc8", "format": 1 }, { "name": "plugins/modules/network_device_config_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "05ada1ef97871761da405e8ce7582f2ad7fb743e0c0c6540421e94baa94c9d6a", + "chksum_sha256": "35f355bdab72a72b05cccd892b9f9746aca19892ae563b3d2ae7ba34801baf24", "format": 1 }, { "name": "plugins/modules/tag_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "91a490365698f866a3a5ff9e8ec155137f2cd24b7e197628cb67f16a17cc0a44", + "chksum_sha256": "572dbeaf9d5419df7af96b1d25e4acf37aafafc515b144eb5e2f1718e5e48a5d", "format": 1 }, { "name": "plugins/modules/site_assign_credential.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0c6afa5b7e46cf956f8bd6d030b5f16e38675a7fe78d84f2f265dcf1a744d419", + "chksum_sha256": "a24bf8e37412386945e0a1285f305c3d00c3dfe546693451cd0eaaf09ea58fbf", "format": 1 }, { "name": "plugins/modules/sda_fabric_control_plane_device.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "81d97f3aa30c6dd3aec636bfee7aeaaa8b3c7e0579ef437917a2c7963f5f460e", + "chksum_sha256": "9e1fc3c6997610fb5eb58da1ff86cac1c2f12fe29f570b04c21f221d8eff08c0", "format": 1 }, { "name": "plugins/modules/profiling_rules_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bca7cbc7c41b1ba80975b3d23fe4c05d42908852a4b81b56461e2342c3db9f99", + "chksum_sha256": "d7ec7710c2e4481aa1380b07cffe76c8d5c5563c6e45b7592a6cad08d3fe71b8", "format": 1 }, { "name": "plugins/modules/roles_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d62bd99d36a17041da882dcfb46a8c59b9394bf6c794b93d8e63d1a9777f5fcb", + "chksum_sha256": "de94f18450380a4392ddf55fe23341d727d5c38401e9e4bb145768f1f549d312", "format": 1 }, { "name": "plugins/modules/task_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6e5444016cfeb218c4b6e19d04d0d91094d22d5955f30b412628f030ac91c634", + "chksum_sha256": "c939839ee83d08e2568d652d43cc2dd043f7f4bc45bdf6b643593990b318f5f9", "format": 1 }, { "name": "plugins/modules/wireless_sensor_test_results_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "453c901bb4c12bee21a750e0ef18fd8b031d15ab2c4d26d819c5a23ecf3b1f75", + "chksum_sha256": "2aba1ead06b80720d76b8d2ab036fdda406b4c85bf12520413d3bdfc07b9401a", "format": 1 }, { "name": "plugins/modules/wireless_dynamic_interface.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6375d7e2d6845946accc418fcdaa8dcfc99df04f8a663df722b023b51ca497c7", + "chksum_sha256": "060b815aa82c2113c3ce30c15d309e5ca171dc20bc8e03b451e758b5804f717a", "format": 1 }, { "name": "plugins/modules/nfv_provision_detail_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fb031a00e038a41b28c3f79eb4ce5b15d00d45587342ae4b47b55b8ae6165027", + "chksum_sha256": "f22479fd4fd40caef85c62bef81ee9f9d95ec8a38d7fb4d356d333ca9790e148", "format": 1 }, { "name": "plugins/modules/interface_operation_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a6a58a9012fabb20547a7773a84cc4272b7528e870a77928949e13cc0699b50d", + "chksum_sha256": "752c7f20ff323991e808abe801061cbb02fbc322ab7c1291707a5689c87c9bcc", "format": 1 }, { "name": "plugins/modules/tag_member_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a191cc31927b7aeeddc64eaa65eee654178e1b04d52296e93deee41d4bfe7b06", + "chksum_sha256": "8ed423053ce775e469f32b9082d8fd6a5b4c2a72e122bceca773e2196c5c3b80", "format": 1 }, { "name": "plugins/modules/lan_automation_status_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "94adddc8a9a3631e0f823a5eebf6c79b35dc847863d3d623c4635f4b70915cc0", + "chksum_sha256": "ca3459c865c3cfd1300abbbe00327ad89370e0171dc9db54ceea74bafc69649e", "format": 1 }, { "name": "plugins/modules/endpoint_analytics_profiling_rules.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d2ccc3c8e87787793ab67415146ab0c593d8d4fc9b4c9930ccaa366806fda0b8", + "chksum_sha256": "0ee09af1955e780d336f71e53f5aade0fef05319a22c0a056a07dd5230c157a4", "format": 1 }, { "name": "plugins/modules/event_syslog_config_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5ceec8de938e398ad905706ced95bae8f98b372805637b9d095351e57bfb222c", + "chksum_sha256": "97fa31b07f0261b63564720aae6185620f35e7fc86a5a154a8580c497c35c7c6", "format": 1 }, { "name": "plugins/modules/business_sda_wireless_controller_delete.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4e53deeff2c7302fababc9cb81cd82bb303e745946a70029ea825e1e55f417cf", + "chksum_sha256": "9005bf199793e794b60b820b8a3c35e37d460facfbb78eeac939899ebeb5953d", "format": 1 }, { "name": "plugins/modules/user.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "15816f3c76bdd77734d55c36d2aaf6af8894d63e5191e21f78e1e9cfe4b8a207", + "chksum_sha256": "fc5b1bd717058796844b4c90dbe087fe9b5161b3addd2b73d52bd52f98e29766", "format": 1 }, { "name": "plugins/modules/associate_site_to_network_profile.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c0678189c515d58820a676a89f138a0d114a598a8058da9d43808587fc2ad1d9", + "chksum_sha256": "602abf01696377306e1a74e83b6fc749a3438adeb6531133a2a57ecfa7325e70", "format": 1 }, { "name": "plugins/modules/compliance_check_run.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c45f742ec63b5dccfc99b521fa209e5de0751bd3b31dad01112196b122f4912a", + "chksum_sha256": "72ff23d614916219c240716a8201b6db09a5948defa6ca3f84b90bcc74c619d8", "format": 1 }, { "name": "plugins/modules/pnp_device_unclaim.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4ff71f21b9da847e293450033954de0ed0214c1bf81405dc8a84211e1a8b1941", + "chksum_sha256": "c4bff9d9b35533a014fa68451e2d3ebe6ab2c7298b1c629ab49f78214e0169bc", "format": 1 }, { "name": "plugins/modules/interface_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "44124a84201011dd914c4442137dd4ff17eecd755086f9e959cc930371e0975f", + "chksum_sha256": "9d154bfc41b0268be60fc3bfe934d162d6d3c7889f4212c138238fdb59beec62", "format": 1 }, { "name": "plugins/modules/lan_automation_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f3f59906e42a06d33bb7f50a9ef71e42b8f9ebed3272d3c021e8cf9857ae7f20", + "chksum_sha256": "01ce3ce65cc63c09db01ed03b67ec8c6b3a617e9cc47aa6c1cf6315ae3ac7a60", "format": 1 }, { "name": "plugins/modules/pnp_device_authorize.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0e2b62b5ead00baef86df268bcff38b458e171e2835303261b80d9b8208fbe25", + "chksum_sha256": "48371d790ad877e32f1397e82d42245bc66da1558dade583eca97e303d6f4f2b", "format": 1 }, { "name": "plugins/modules/task_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d5ebbd9c4361b97087aa51846b2806e3122704818b96a6cf5fa2db3b9ff7a328", + "chksum_sha256": "96121154401e39130b0faf0da4714179d91fac8c54ac7b7e0e742a2e4f3bb3c7", "format": 1 }, { "name": "plugins/modules/app_policy_intent_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "abb3f3e155c35a773565ea043a23a02e449c3b8d4f09bdd276173cb2721129ae", + "chksum_sha256": "c62d8cfc4d50b9dad0c73184b3e10acfab20ef9267cbde21dd20ade5f913e98a", "format": 1 }, { "name": "plugins/modules/pnp_device_import.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4af97e486e34b84e313106034f9975fc662621f333dd146e82e70d5213d57ffb", + "chksum_sha256": "60538898d31429714400e1bee616715662a6dc0868c10fe642aaf2c4d8804411", "format": 1 }, { "name": "plugins/modules/authentication_import_certificate_p12.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "be9370de13872b64e89aa4688f426207ad7cb36260c67ae838a6f8e0939188f8", + "chksum_sha256": "cddda97a5a8bb76dfb9913c6ced565b770c5c95b33375e626eeab2f1b588be94", "format": 1 }, { "name": "plugins/modules/sp_profile_delete_v2.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2db4c0b1df0fb25326f24d9c60c0fe2dbba094d38e355bf96b1f65ecf8ac8c45", + "chksum_sha256": "0111f60a0dd6a58af385bf585064db9679166cf1f2636cb820308791ed2797d1", "format": 1 }, { "name": "plugins/modules/topology_network_health_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bf2fb1801951e493fba7308a4274be2241b4df4cfb195753b88d1f2749f649ec", + "chksum_sha256": "85f8527871c7e42a00295658f92bb184d284a5755b1e5ee4f21c4d9a3f8b449d", "format": 1 }, { "name": "plugins/modules/wireless_provision_device_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "19c1799fc23fbf3fd97a2f3a3ad749d6031931575136fc01637fa855b49b47e8", + "chksum_sha256": "097a942722519fd081a35577b59dd618719156d3cae7b1020e4c089d7836c191", "format": 1 }, { "name": "plugins/modules/discovery_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "08b06425c4819419c08b077df7e8f66066357a54be2364c8888b25a3a06db5b2", + "chksum_sha256": "dd2feb16fbcfe5032e7e1728e28bf8b350ee9db828d94c5aaf55c4e9a92b4e57", "format": 1 }, { "name": "plugins/modules/device_reboot_apreboot_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3a1b9e994c90c4ade0c9b87e530cc0d090d5df93eef287dbbb8c979deef9f599", + "chksum_sha256": "e22d725706aba70caefdc1734ffd4fc84f98dd4b8f06813147ae00589bd973e1", "format": 1 }, { "name": "plugins/modules/discovery_device_range_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "1f2f3fdb22c9cf5c909dbcdb1475d6b54f82a4a6ea233c3e3fb896e026a300df", + "chksum_sha256": "5849703f79a8c63a95508fd8cc76c37fdbd7ddd554f2d446077f17f06f80ea03", "format": 1 }, { "name": "plugins/modules/event_subscription_email.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "1b2d71eb95c5bb7161305eb06427fc780814251ff09ef7e3640155e04128ed79", + "chksum_sha256": "b20e8d01d362ea518177479564b41475bb22390529bd9e146a43d0b3574cc7f3", "format": 1 }, { "name": "plugins/modules/sensor.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "92ebd09304b9d1a42d2e011fa9b4abfd9bad86382dd8945993bfa7d22d4d483d", + "chksum_sha256": "61a1f62c0323db3cd354dab37154431035575c4d30f56de9526fdfa0e8e95282", "format": 1 }, { "name": "plugins/modules/integration_settings_instances_itsm.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f69b1536b8496c66d7aba8ad2e681c6e41762106b63a1567e051416ec7e1768f", + "chksum_sha256": "4447c1484dad5ad8b0c6e581a5a79e8a00cd25d5c919960c83a7bc8ec73f0c70", "format": 1 }, { "name": "plugins/modules/site_design_floormap.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "83fe70f63be605e69b1e808223942566a24c6dcffd78c1f008ba3dc9d20d9aa8", + "chksum_sha256": "d602258e6a2793627b1288a73251242d9ffd1ad8e50a0a61414295ea4c77a53b", "format": 1 }, { "name": "plugins/modules/pnp_workflow_manager.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "aa8f6e21144259fab986674b6c92acf78b620297976704f4a93b43a265b67f08", + "chksum_sha256": "01319e51ca12527ac93fff93abecbfe9466a2dc2e9e97517c172a1d3e2d4b7ee", "format": 1 }, { "name": "plugins/modules/global_pool.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7d49cd0161314e7e14177fa026c94262dc23f43be0490272d7d1ee1e0ecba399", + "chksum_sha256": "e3b5942ca9610d638861c899a28b7edff86176ef90ffb6aa84c74d07398cc12c", "format": 1 }, { "name": "plugins/modules/device_interface_by_ip_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "12100e56b2e3b321eed3abbd9da9a1b7b72bc382828de29a1b44a95e973e5272", + "chksum_sha256": "247b37667e6600267377a09c95d468f263cf393c9269cc3fe7352a86391d7b96", "format": 1 }, { "name": "plugins/modules/network_device_chassis_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9022f3da91c1718d963b207de578bdc23e936e317d8e9c7d6b89e5ec8ff3bffd", + "chksum_sha256": "61e6ae2c6c39475d4e508591966135ac0715bf438868fa6f2421738e3d460899", "format": 1 }, { "name": "plugins/modules/sda_fabric_authentication_profile_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "edbe6c125b774da02e2ddaec0d1209954677a3802c60fde88850b85f71fa7ce0", + "chksum_sha256": "ba207e06e273caafae8ee2031bf163b960f08dfbde7e5211489ea78dafd1d1f5", "format": 1 }, { "name": "plugins/modules/client_detail_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f114628126b5e913083b833c521fa086ef784fc24e7879cf1d74cb663bd7a4be", + "chksum_sha256": "50d9012553e45a39231c185123ed81d2bc273ff0440f9231f88578efe4ab301a", "format": 1 }, { "name": "plugins/modules/license_term_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4f520a32196e272e231ce166b08afcb91472631a779e8a7fa7e03bacf66682b3", + "chksum_sha256": "93698c9894a43757eef2431a0db6c00ad611440dc70aec7169ebca0cf5875f61", "format": 1 }, { "name": "plugins/modules/license_device_deregistration.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "eeeab2bd24a92035122df2d90216837ea1c661b074b8ef6659ad9f52ebc7cac0", + "chksum_sha256": "ddeed833b64145c5d88b04421115f39d30effab218656bdedeb828c869c50764", "format": 1 }, { "name": "plugins/modules/device_interface_ospf_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b0060a5eb9b34449bed92581966ea6aa8064594543280d845386250fbeaed033", + "chksum_sha256": "ed30d8d2a7ee30d254452ca157bad1f22117a286d37fe9bef525dbd5582c35f9", "format": 1 }, { "name": "plugins/modules/sda_virtual_network_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2e0789344a1291f94ae02145fc6b12069ef843f83db8ad235a2ec2a0084c79e7", + "chksum_sha256": "35c830cba1f0a91954ae39b856aecd01ad51dc0d5c1d10d891671af5ed6e4c6e", "format": 1 }, { "name": "plugins/modules/discovery_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2b86177971e4457bb94184fcaa7f18c7f79eabd14f7874e25dfc32768ac910db", + "chksum_sha256": "9503c3fbb9a27e54e0b290ef82ac1255de261218561abdf11ff0204bd7f4517f", "format": 1 }, { "name": "plugins/modules/business_sda_hostonboarding_ssid_ippool_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "cf348fcaecb559dbca49ce5b5d9e540e48812b696f575c192676474c23b46da8", + "chksum_sha256": "02000c3c68ecb37e768d5938da1bb59a84df7a7e252684dc80f5adb287df972c", "format": 1 }, { "name": "plugins/modules/swim_workflow_manager.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c1e32599b2c25efd5a1be3e66e8ea1bf0b6871218bde74b2e4e828c67d1bf994", + "chksum_sha256": "70b080cb6316ab39cdc8e1d6ace2ff128760698778c49a134c576947c942e515", "format": 1 }, { "name": "plugins/modules/execute_suggested_actions_commands.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "19844c72afef6beaa1d1b72bff597f7a80e73b09ba3a68ea2c5ad042f0c16662", + "chksum_sha256": "f66085b17d99d7819eda3961cf0cfcb7b9dbbc317908c0f01dd61898236f203f", "format": 1 }, { "name": "plugins/modules/business_sda_wireless_controller_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "84f5b496f3795549f66eb8a40401e8151e0e0334b3a0ab81afe9833db612a216", + "chksum_sha256": "b08d11477f17e38c0b2227c8ce36413c494d9a50a6a076ae12859cc504d4abee", "format": 1 }, { "name": "plugins/modules/network_settings_workflow_manager.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c0a00e9cece5905436095add9b58a97e5292f9f941df31af8bd5f77e5a665352", + "chksum_sha256": "e72eded9f5e28624682f928bc3791f830e6964f28d4bb57b76fe8671d44f5fe0", "format": 1 }, { "name": "plugins/modules/wireless_provision_device_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "12136ddb30e224adc6d3291346817097d4446fba99bb5eb7e747d8a3d1585a92", + "chksum_sha256": "9db7025f8f65a52d3f0752e767c2c1c9613a80f8007b4e78315fa70e945c6d28", "format": 1 }, { "name": "plugins/modules/network_device_sync.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "70d9cffd145e26f9506673554dcd917054d0514d5876d7e13307c88b290669d3", + "chksum_sha256": "78f9ceb7e7b4371e85c3cd52f71c6e6b307ffd23cdfd37111b544928422757ab", "format": 1 }, { "name": "plugins/modules/wireless_rf_profile.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4327a68c352ee3a396e3dbf795daf7ed3be99c0b95101d2c0cfb06883c27344e", + "chksum_sha256": "5472514c55110035ba8c47f60313201f8b49b0bf9c2b2bbac47c7c5dc08c5cbf", "format": 1 }, { "name": "plugins/modules/sda_fabric_site_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "78bf22da9023c2d264ac803a007557f506822dea4daab444662366cf56da0f33", + "chksum_sha256": "508c83e7ef73c711338d199b4b05eda7e94bfc4831958ca8f1fcfd62a77f8b5f", "format": 1 }, { "name": "plugins/modules/event_subscription_syslog_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2f00b770e9beaa154270e9f6484a76a2cd9bab29c121ad80cccf9239a23bf65a", + "chksum_sha256": "37591b77c22a26b1ce79bba87f94dc5e1c96a94da9ac5dd797a74960a646bb05", "format": 1 }, { "name": "plugins/modules/configuration_template_import_project.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "84adb47b58a6d3a6783475832347ad2168d329157d34e3ca2be8ed20c8014a69", + "chksum_sha256": "99a2b7ba0b8cff781db383abcd667cd23d02d1991b27deada9c2802f56870bd7", "format": 1 }, { "name": "plugins/modules/topology_vlan_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "db096d3fd5525976db78b3c4a91e7ca8b7d51f69413daadab850cd4ab7fa04c9", + "chksum_sha256": "70aaf59cc3a489a2f4aa5d0b052d7aeb89c09fc4435c0513beeafffeaa0e99de", "format": 1 }, { "name": "plugins/modules/lan_automation_log_by_serial_number_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fc24198351f08f730bbd6af533d2cee6fcfd8602fb1ffa46cfe79c8cd7105dbb", + "chksum_sha256": "205f22f0ec447a840cafa8b219e22b88636967ae405420cbfc99a99d9c64bbd5", "format": 1 }, { "name": "plugins/modules/service_provider_v2_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fb76e209b0560eae94118f3145de3459fea00f3ea869b44fd2fd987889f821e8", + "chksum_sha256": "7887050a78e4710122fa71fa4f758063a83b3ea50b6286541dc4c7cef6bed68a", "format": 1 }, { "name": "plugins/modules/site_health_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4993391714d00efd42500ca81834ecce34a31b559fdee18ec149693528920dd1", + "chksum_sha256": "9b20f00dd0a3fdd8e623c90781e001de3488e082ff7f78d3d0c2a78c2e8cb7dc", "format": 1 }, { "name": "plugins/modules/event_series_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f7bff6806a626c0a80c6440ead86d4136386cac6a166015f145d6d1c1a762ee2", + "chksum_sha256": "e8ccee65b615913c707e66532d126931f8bcac3fbdea044d97151642c57d5423", "format": 1 }, { "name": "plugins/modules/configuration_template_clone.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "476d838d47b3997dc18a371395ff3cb6cce7168726c025cd1c76dab8165f7352", + "chksum_sha256": "7d717330707d9fe6eea2482a6108756b83227fc12c89d0be6133015f5cda28d9", "format": 1 }, { "name": "plugins/modules/swim_image_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "cfca9340b6a13a2bd5a087ff3c6e14c4a23c766477e5d31a900deaf0791f882b", + "chksum_sha256": "bdb0d985b3d8e3e87099c574b5c06770159c6b937f86d6aeda7e7d1b6b80cb94", "format": 1 }, { "name": "plugins/modules/sda_provision_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c2739b9dca50d41ea851746d65d3f497974991d2cebad4c5a63f5c14b68bbd5e", + "chksum_sha256": "c368e9b1b79763ca9c1c0ac900b575b13b40463165301e4a50d2505c46cfa4b8", "format": 1 }, { "name": "plugins/modules/pnp_intent.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "46895eac51c54b6786d2d15fabe55a7fe4c38db13f6be4701876ad0db8ca1693", + "chksum_sha256": "63951047324164840c1b84ad51e6861d3015a7cb1d247024a43d725251ddca69", "format": 1 }, { "name": "plugins/modules/system_performance_historical_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "580525d7d40982c76a858fd37f62a9a17cb605eaab0b12f01a68ba007490bd6e", + "chksum_sha256": "db43d9616769582ea8ac005948a39665f274157f4f8e165361f2541a9635de43", "format": 1 }, { "name": "plugins/modules/sda_fabric_control_plane_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c1e486a19e64166bba9aa986e01c9a0627c0b384760f24bfd412e7131a12e42a", + "chksum_sha256": "a01c251bfa7e2011ccd7d311d4dd0c85428790ea78cb3180f878004d22551241", "format": 1 }, { "name": "plugins/modules/eox_status_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b7978f697c8a208f25b7fecd54ec1e9fef590d25dac54f0f31b12db93584d3b1", + "chksum_sha256": "64980b0ccb39275f2b8dd625f90fdd001625be11fb2d4342f60e2fe420af8df9", "format": 1 }, { "name": "plugins/modules/threat_detail.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ff998c518ece001129362b6e239b1d043d377b6bde90d2dde7899f838d1ffa0c", + "chksum_sha256": "865c8e83860d3a399ae0420597636dc67ae83c826d1ca2f2d40eddcc4c130def", "format": 1 }, { "name": "plugins/modules/configuration_template_version_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d187096538d665d3630c1ed3edae1adf425d093b552e9dc179050ea1f8a53414", + "chksum_sha256": "c1b7aa1f6a2ec4ed5ade524168e4c6804d0694e29f5cbf9acab3502ee4e7ad0c", "format": 1 }, { "name": "plugins/modules/syslog_config_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "31516b0a94c60248bb48e8521d6e3f11a52b9465fa4fb76212142d711cfcf6f1", + "chksum_sha256": "26816bb5140d94d96173d69a16b49a0132e6febbb3ff3eb1e856746a77eca271", "format": 1 }, { "name": "plugins/modules/nfv_provision_details.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fd9f58a5a78e6cf3b9ef4a18828bfd3d3c71bf9067bddeb0f21cbd6257d960e7", + "chksum_sha256": "8d59bcb7f9b05d8a5268472ee86786c1dfe55d168c22f05bb08eb66fb32ceb53", "format": 1 }, { "name": "plugins/modules/event_subscription_details_rest_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "12dc1a8fabe5dae7f1d74727d8c9bb9f0084c774d33131083b32a175c4eb6608", + "chksum_sha256": "39f3ded1e5b9d76cf7e0ea7a54e73bea15bcc76a90ebdfbb78c5295ad86c19d5", "format": 1 }, { "name": "plugins/modules/discovery_range_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "8ba689381e0b1232ccf4d48f2635e19e96b2d217ec30f0d460f21becf1991b93", + "chksum_sha256": "584f18f492f252b82331acf732253ea92bb96fd989cfe2545a73884106fedc4b", "format": 1 }, { "name": "plugins/modules/site_design_floormap_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "16a61115901f52e2c0486eecff5fae808a20a5b5165b451f345c151cec3c02ff", + "chksum_sha256": "22f432894c23601c08b42da3f77b42ca341e3a8075c249c83a046ab97e999404", "format": 1 }, { "name": "plugins/modules/discovery_job_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "74fa4b86bce115c77937388bf8c30dd1c212c51c9359bfb30a22ea347cbe228c", + "chksum_sha256": "f623ef881ce3592e32ea25604dbd075d837b9a5c1e8c1997178bd0474c425cb2", "format": 1 }, { "name": "plugins/modules/global_pool_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c135645efbd68ff6b09096ba7f37bce0049bcf344133060f5c05a2e58a7c0000", + "chksum_sha256": "b377a33bab9641cb9756c14252cef50419eb6b49f131cf7cb57195a40a1d096a", "format": 1 }, { "name": "plugins/modules/pnp_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f8f235117077b827547ba282ab803569826a3995bd54181520595f11dcdf0ccb", + "chksum_sha256": "69fd7b9a578ff1b2aa1a3832a5b15caa0f53794a28881e2dd210cb8d2a54544e", "format": 1 }, { "name": "plugins/modules/device_replacement.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c32f6b4a2041ea18f9c199868c982a5a5f4d9c0c857ab95b77ea044f9b925b49", + "chksum_sha256": "76619f7b6f994527b0048eb03b6f197872ae889bb692fd6c5a67ce373610d405", "format": 1 }, { "name": "plugins/modules/sensor_test_template_duplicate.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "94b795d09e7eb4e147aa0d43def6667526f92ae82d09d0826242899df7573721", + "chksum_sha256": "bdcbee1705c8ac319ba71af6725dad6164a78605bdb0da4ebe833539701f196c", "format": 1 }, { "name": "plugins/modules/wireless_dynamic_interface_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "256ec24d864d6e46e1379dd40e292a558a509cc4abb3948af7730a5d01256365", + "chksum_sha256": "47d74bea911de6d0409ee28fdc3a86dd205102460acf1dbe0dc057ccdf09babc", "format": 1 }, { "name": "plugins/modules/discovery.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2f5200ccf2fe958bf6ea1b31e49ca942e561f763352a8b858a8e86a5058a7319", + "chksum_sha256": "831619571aa2f0c113400c8fa930b69f305fda6fbb8621dcb8dbcd871cd0a279", "format": 1 }, { "name": "plugins/modules/wireless_accespoint_configuration.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b8289bbf4a1b7aa90fd2b0c3e3f178558a61e5aa5cbe86ee0ab2323c1a96bea6", + "chksum_sha256": "141d3a2c603c8b4f62466e0e6db45672bae260ae1a12f487cfe2c20026dff748", "format": 1 }, { "name": "plugins/modules/qos_device_interface_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7c8c372defb3175519a0ed18ab65de12f7cdb7d6c42a83096022a163ea1843e8", + "chksum_sha256": "d3a84c0cb694ca3c097b9ff30bc976aa135a2ac91181afe2e38d5b187cb8530d", "format": 1 }, { "name": "plugins/modules/provision_intent.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "1edf799c5bace445ba47dd5ab7edac249819cded67c0c02c86fec3c6573aaf47", + "chksum_sha256": "eee5fd64e6ab7543062b2ec3750196a24c128bbda13be65068d0bd74750bc3d1", "format": 1 }, { "name": "plugins/modules/pnp_workflow_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "51b76732895b15f2c0b44f86a4e4779a7857003a67d61327c375e7c3217bfd97", + "chksum_sha256": "40f26611c60bf2ec8533a82785eee65bb2a247be209105a002f1cb1dcf7081b4", "format": 1 }, { "name": "plugins/modules/license_smart_account_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3445ec738f2b098332069e43a52018612f20776e07fc7180d6a2756a4d67b6c0", + "chksum_sha256": "dd3bffa15d967017ca8313b2e75fa3c467b9282da5baaaac7360b5be9319a5c5", "format": 1 }, { "name": "plugins/modules/network_device_module_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d3c2dc6102957c2786d7eef87a7125df8a1c6cc6232cc054bcd6701c073cab9d", + "chksum_sha256": "d99ee768d2564d3283b7693b1a9f9ffb30bba6647022d1d4cb41daf1b37cfac0", "format": 1 }, { "name": "plugins/modules/assign_device_to_site.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "66692e2cf30951ef15947042093c7609a875642c8b31559d0653ec95c0834cfc", + "chksum_sha256": "96e597a643befd67693dba086d91ae2fbae6986a98d2956ed112b8dc47ad6378", "format": 1 }, { "name": "plugins/modules/event_config_connector_types_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "534789a3e5be6ce3b9bdf8207b6f59fd2014db754d3a5e5941bd098b46d09f43", + "chksum_sha256": "0cddf97005b6d88a1880b132aecb16ea2e11cd52e1a6fb198f39028a3b961aa2", "format": 1 }, { "name": "plugins/modules/network_device_inventory_insight_link_mismatch_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "314220c437622968514032d5c5e995f9c2685135aab4efc15aabe5112d9e1363", + "chksum_sha256": "4d9fc23291299a4966e404b79d9df1bf8c30b038637111640b565c854a486d7c", "format": 1 }, { "name": "plugins/modules/task_operation_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c03bb12584fd9811458a83fb3ce3be39d604e5098fa0936e0173caa6f4a0b7ba", + "chksum_sha256": "2ada3350d24c3f06eb24f7878a6d47145d565b9d87dfb5474da61a7c5e592828", "format": 1 }, { "name": "plugins/modules/site_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "54ad0d4f3f891b4ebdf0f568834b356ce3fae3a977d8707fefae8b7ae9681338", + "chksum_sha256": "a8389054876e4e0d52709b43e47a559882e808cfae93b3ece582d2854d7ceaa9", "format": 1 }, { "name": "plugins/modules/credential_to_site_by_siteid_create_v2.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fe62a0861858da8c5534313962518b666bc95b9a9e2e931a29f815faceb16811", + "chksum_sha256": "6fd1eb16206ca007172456bf66824edf8cc86a7a9c21cd40a4497f2ee15347ca", "format": 1 }, { "name": "plugins/modules/sda_virtual_network_v2.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ef032aeeb0615651230b4170cd3570ed98e1b02fcac89eb7ed1f1c0a5fb6ba62", + "chksum_sha256": "de5463a3e5a8c767a4620f2b0d6959f03e615c1662d9d1277e421df577515ffa", "format": 1 }, { "name": "plugins/modules/network_device_by_ip_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9ac509acdc4c762cb3e857dfd580416711971ce107996a436319507b1c7cfa5d", + "chksum_sha256": "753ed26c0934c1cca81a58079b45b8a57e3987f8f7428c722ee906b8ffc35d76", "format": 1 }, { "name": "plugins/modules/network_device_lexicographically_sorted_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "94ef35daae89197a574ddc16ce3d40af9fee355571cb60c567d2d789615adb2e", + "chksum_sha256": "1ffa1d43fdac74ed390659d347cd2914d48e622ad97edf07136caf763d9bdeb3", "format": 1 }, { "name": "plugins/modules/pnp_workflow.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5f6d1953dfc0f6c6e9888e743d725a644936e5a1dbc104638aa7b407d9493767", + "chksum_sha256": "3c927bafdeaeabcee4b03392cb8f833cee992c06df87392bc9850424a9a36f23", "format": 1 }, { "name": "plugins/modules/event_subscription_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "38b483efd2cbf485c0e7cf897d00e2d7bed3301ae35b7e7f2fe4735eef9a088a", + "chksum_sha256": "e3726450f73d3d9a369f6e13df3dfef8da2e6d13aad9070a8bf8101f3353f5ba", "format": 1 }, { "name": "plugins/modules/topology_layer_3_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3be4779df4aca09518d8964f4031591abfd39fdd700b8a01375a9f77f5385cb6", + "chksum_sha256": "763bc8e38e403d4bf06b8168c4eb875928478eba61089dc829de0e0d91160895", "format": 1 }, { "name": "plugins/modules/device_credential_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "88f138a794dc5a42197fc455246f35a747fc5733fdecfec34d510813274a6509", + "chksum_sha256": "7d82073fb51ff17af9d0e94ae606ca0a20cad4bad8d0ccdd1fa308a4b4cbfbd8", "format": 1 }, { "name": "plugins/modules/snmpv2_write_community_credential.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "66d40b380a308d0c4d463e6c2afbd7e511401995c5ec6cbb8383c04850171174", + "chksum_sha256": "cd7292c2440f6f5053ef12fbf76b0a1b27989ec6263c20f2664504f88d867582", "format": 1 }, { "name": "plugins/modules/global_credential_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5a29fab81c5dcc34942e0520555106d407c1d5be5ad2350ebe5bb2e3517246dc", + "chksum_sha256": "7eefe1e65619a4de2b2075074b53053b0c99dfa795c1142b28069d4fa71826d2", "format": 1 }, { "name": "plugins/modules/wireless_rf_profile_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "008c3081fa5cdfea7ec1c7c55005006cbd38ec279db7405d9e324fe4c50f3616", + "chksum_sha256": "a6ca9ea355c4df2052d03af05e398cf2d13b971aa7cb492c9fe69069d5fa16db", "format": 1 }, { "name": "plugins/modules/applications_health_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "daa4f710c924bb7cef9c5094f875555c9b805122f8897964e71fc4a685dd8630", + "chksum_sha256": "463b0623e0e944947016aef514f897154ab1eb1848c1b91f9a9a73c122757c50", "format": 1 }, { "name": "plugins/modules/sensor_test_template_edit.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c61fd70d849e2635aabe7ee0681de73480c563c156852e93e3d6e49706cfe94b", + "chksum_sha256": "4274322757ed2a99ba127d28c92e6cda2f49f4cf031af6e97422a3a2783170d8", "format": 1 }, { "name": "plugins/modules/network_device_stack_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "28232e8cbfbc70dca83dd34983d61a61c07710425b037a846553e5102e3e1d03", + "chksum_sha256": "c55fd06561816f1bf354e19c0f8ef97fc2de5d21fe57d30e9953b7caac320df6", "format": 1 }, { "name": "plugins/modules/site_workflow_manager.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d691b4d29437329a12425232c52a9027819b496ccd47e80e19a44fffcbdafc42", + "chksum_sha256": "4c0530303d930f81006f318ad9e9df5569163153476b53ba4c0a0fcffacb2b1f", "format": 1 }, { "name": "plugins/modules/global_credential_delete.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5635804686b6c1dcbfdd600187002f55c99a6bb2ce33909b1b20754e773f0698", + "chksum_sha256": "87ca0d16efa2b308878513ca6be96c9d13bfc99c9f5218ca3742ddbb8b83fb60", "format": 1 }, { "name": "plugins/modules/sda_multicast.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "289d7dee1f62e05d7669940ea71920b41ed28aebd07dac84b53503d7c0e7c9cd", + "chksum_sha256": "399e17ea2b5769b4096df6b0a13a2cc0ffc7de4a4f2f75afd7f3240a3750884d", "format": 1 }, { "name": "plugins/modules/sda_device_role_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f181e587c723787107c7b28b62249b768c61c6b660095bf72e8de1b2b156126e", + "chksum_sha256": "2060f3f260e3c7fca652b67872a6232ab819ba5d773c8a6c4d7036aac7de39eb", "format": 1 }, { "name": "plugins/modules/pnp_virtual_account_devices_sync.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "534814958e8c3ea6fc935dbd08d60571f10ee8ec64f234877a0c36334088b27f", + "chksum_sha256": "f1c8fed58d9c4d513773b7948e03b27765aeceff9a45a74759c07b14af8c4bc1", "format": 1 }, { "name": "plugins/modules/eox_status_summary_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3596d5ae0791f33cf9f002543a5183b639fce9e502620a5f8ee08145d4c23961", + "chksum_sha256": "5a28ed446010d97b1f21516a3253120c0f0099619c7d033ca97071b20acd7988", "format": 1 }, { "name": "plugins/modules/accesspoint_configuration_details_by_task_id_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ba466bb29584fc099e2839a25cd635b4807920d2ac6b5032bf5b62678b96ae92", + "chksum_sha256": "b5d2c060f6664ccbf75f82150a414c8a6b18a6eb801346041b3233bffe6f97f6", "format": 1 }, { "name": "plugins/modules/applications.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3c687ea107d2c34cb1eed2256c3beaf1ec0bc93e9498b860b0260a2903bf4ff9", + "chksum_sha256": "426447a41c87ed84cfbd9c3ae0830ddafcdaa68a3c6aa732c74a27026e936daf", "format": 1 }, { "name": "plugins/modules/itsm_integration_events_failed_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f2236cbf493a04f2b417951e8fd6c9aa12221a42489679b7b8b6a7afd23458b2", + "chksum_sha256": "407fc6cb6189f1403844e652bc64ff03cbcea66f0eadd3775185b7487f3f986e", "format": 1 }, { "name": "plugins/modules/network_device_user_defined_field.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0c8f47c86bbb2e877ffe5c6c91c5e717650f66d4f2e86e641cc767c8d2a64d51", + "chksum_sha256": "a3357526777edc63c0663320959ec9c1d087e5602793111abdcb2d0b8602b4b1", "format": 1 }, { "name": "plugins/modules/configuration_template_export_project.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f077d02ea1cfd2971e35cc6b7e8338e5115f7f6ccaef66d001bdfcd701e0b645", + "chksum_sha256": "58a0750f67b1831b04ad09fb602f4c47c264b817ff995c0c8ca468f3dfe1e2b9", "format": 1 }, { "name": "plugins/modules/reserve_ip_subpool.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "40e4454daa55dc0975a3d1edb6192132274686870f7a30d4e3b78ed746920faf", + "chksum_sha256": "b11c7cc628c5b50c93abca9d675e14acc91074183dd68e6eb4ecedcc093d1747", "format": 1 }, { "name": "plugins/modules/network_device_interface_neighbor_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "859bee561489a592e76de54057ebbc7c566a6c8740051c442d8dd329b67e20f5", + "chksum_sha256": "53b55d54fc692e05378ff615c491c2a4c25fa58520ad616af7fa18831011036c", "format": 1 }, { "name": "plugins/modules/device_credential_workflow_manager.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f2a4e13de9da183ced28ef4ff11c9036c76fcd474b760af56f4d40caa449f16d", + "chksum_sha256": "1f9eab5ed7aa33debf4b7652aa0b117b7b6786d538c550bb2999878cdd85d29c", "format": 1 }, { "name": "plugins/modules/network_device_polling_interval_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2c1c47c56f5d792bd03e85ddde3e0a2538a01f31aba0814c34074438aee07255", + "chksum_sha256": "6a8f3d47966abc700d31c6ca0834ec60f94cad60422f3fcbc8d43e7e13ae620c", "format": 1 }, { "name": "plugins/modules/network_v2_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "29b1e3bd4541c270be72ac7819940415855965505e5254723cc5e438835db48c", + "chksum_sha256": "5a831b1065c921dc1a98ab5fff748a83b6322e1ff1d7bf51f4adddd921ea9440", "format": 1 }, { "name": "plugins/modules/tag_membership.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9d5ec68b09e4009577498372d660f5d7b2e597cd0cad41017553061a1c2cf405", + "chksum_sha256": "85e2d7164b26e761166d4f04343289d331610d2bc62665b1c2521354415a7893", "format": 1 }, { "name": "plugins/modules/profiling_rules_in_bulk_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4dedbb18660f9611d8de15bd78df9b0bff8263e74d67fb5d5f8cb9c6e9bd605c", + "chksum_sha256": "3e79aa1f0409bfdd17aa57ed69a7626daa52c510ebee3a500f760983a4723e25", "format": 1 }, { "name": "plugins/modules/event_artifact_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b6c3f785d839db3db95af4cae1e5a5698bede3dccbb89d69ff9783a37f80121e", + "chksum_sha256": "6121fe9593a6fef7f9870a196e4a201cd138337b90c1726e20a0056cc82552ba", "format": 1 }, { "name": "plugins/modules/network_device_module_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9d7ebf4dd462a77b11d973103227958da46700fae8d9617747297a65a8acc2af", + "chksum_sha256": "988dd211b76c628305d21acdbb3a4f1a59e716d819d3ea5773f1994b79823859", "format": 1 }, { "name": "plugins/modules/global_credential_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a49f82933150a1a09572081a72c7d2325b29e195b71da8b89f843c83156c59ed", + "chksum_sha256": "bbeb591b1502b1f63b91404301e266e4b66bd157ed4b03934ea77ba4ee096d66", "format": 1 }, { "name": "plugins/modules/pnp_server_profile_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2da8840d0a28503a26353de3b410390f4d65fd6c8980d611dd45e491daa1b7b7", + "chksum_sha256": "1e88323ee47995da579c9263e3442833b08fe47c68de3e86b8d66e3d3e38b2f1", "format": 1 }, { "name": "plugins/modules/projects_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2ab5f34c01ee5d2655d2c5136c12033914c3fab2726dfb8437ee0de5af571aaf", + "chksum_sha256": "8291f865748dab5754228e60da5e2321ca6a1fe8cfb14463b51df1e16427f3b6", "format": 1 }, { "name": "plugins/modules/authentication_policy_servers_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d82fcf066d29e5d6b758d72a23e9cef7a91ac5f1c631cb77e0ed469b41a2b120", + "chksum_sha256": "1551391c2a66ef1bbad5408128dca9846f792337a583af80269237b310933101", "format": 1 }, { "name": "plugins/modules/pnp_device_claim_to_site.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a16e99cea123c0bf32450cc3153a826723b95523946f9a293dcb98130fc1f522", + "chksum_sha256": "1362012e0e6134286e284fdbd89fd8493b4fcf6271089de7c40a307340131789", "format": 1 }, { "name": "plugins/modules/applications_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "48b9d8878343b80673ab59b4e95b98a6fd1cc79567f04b5e05c810f848746f4f", + "chksum_sha256": "a821bb44a947903868c0d3fa718b64e09d87825e856aa8512bea8295d55b6b20", "format": 1 }, { "name": "plugins/modules/network_device_wireless_lan_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e68d7e70c4570b17440581639eea6b46945d54bef49deccf2edf881fb096838e", + "chksum_sha256": "0a5b00d3249e3bf2691cb50f8e6edf843fad6e3a0cdae63a57bf5cd72f33d15b", "format": 1 }, { "name": "plugins/modules/pnp_device_config_preview.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "8e32fb6de985448dc5a125315550f0ee8d8fd2c08d3f9e232782e944d57a4b08", + "chksum_sha256": "019be448c8f8e4a283e68e46cd79aa30a826bd9b83eef9280c60ae617696cf76", "format": 1 }, { "name": "plugins/modules/path_trace.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9ba78935fec396d6574c33755dd9ff6562f1868a5e49ed80d2bfc844e33a0a0b", + "chksum_sha256": "99068699100cf4e24c2dfaf1caa2d8d6fe150a9762a6bf318af532574ac56148", "format": 1 }, { @@ -3924,1722 +3924,1722 @@ "name": "plugins/modules/device_replacement_deploy.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7d292b3e8eefaa09cc699f47c6d8dafbbd30ea35397a4b5f31a0ab5bc6cb9548", + "chksum_sha256": "ecdce508fbb0473d0784e3c159cd76ff6b07cdeb999d54c825ed2b25cea9a0d7", "format": 1 }, { "name": "plugins/modules/system_health_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "8006a53552f482b3f3f97188885c6374861761702f5aaebecd8f1e317eeee1d8", + "chksum_sha256": "1f325dcf5afc01848e3d7b1619a670d01c12d0624c7a1ca8db4c2e4a535748ce", "format": 1 }, { "name": "plugins/modules/app_policy_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3c208b9ec193ffe33c13897aec059032575aabb44c8760379a4896a420e7333e", + "chksum_sha256": "7b625c39fb2a224fe7dd3b91b30646ec3d12b2bd697083fbe05e43271c7081ca", "format": 1 }, { "name": "plugins/modules/event_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d2cf1e4bffddc28c9b92529804c9384b8e64fe4635ebdc7ca8dc4f98cab4d8a4", + "chksum_sha256": "8e3591a1fb3519b884c967564907eb4af42118c1f6c8c91afd311afde2165c41", "format": 1 }, { "name": "plugins/modules/client_proximity_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "074df4c86da99d225d3ebd2d85347c57d9e9d27054d7de171c018cffa286c721", + "chksum_sha256": "9bbbdb160591c895f91d752f917ba887c17f298a6c3f4248af59cd5b09cc8696", "format": 1 }, { "name": "plugins/modules/tag_member_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7906513bcf9e12ae42e8a036e4e7cbeafb95cef6912212f9d0a46aede30ffd21", + "chksum_sha256": "411390492f0e57f70f66d25bdcf722016ff30f769f6afdd849ed2cfbeb67d6d4", "format": 1 }, { "name": "plugins/modules/network_device_global_polling_interval_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c2d226f1d292ef76f50bcdfa9d41b76f6c052df80eb4b8419f1264705a282f91", + "chksum_sha256": "67732485524ac9a2b11fb8cfa118cfb4b66fcb191fc69d3f372b5c5c49161593", "format": 1 }, { "name": "plugins/modules/application_sets_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "87e9f963c750e336fad6c6044849fd70e2ff7657b154d0ea0023df9a3287c6ad", + "chksum_sha256": "829d68acb8ef33ae1eaad98e5391fdb71696b9785f5800779e603a1e4e0c7680", "format": 1 }, { "name": "plugins/modules/wireless_provision_access_point.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f49c90192930f8c36a2cf691e1fb1fd7fbad63692fcbd0573b51f8d91a151186", + "chksum_sha256": "ad1add88dd3f16ca410cde9be6c97e4f62053ef92fb5b0743fa31227d9b6a473", "format": 1 }, { "name": "plugins/modules/site_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "71b93dad486934d8706d7d854b303fabb9f36316536e1e3b7341303ec2aaa684", + "chksum_sha256": "a51b7f98adbe7d53bb7ca70b73b059ed10c1f1dca1b01677375b506be41a18f1", "format": 1 }, { "name": "plugins/modules/pnp_global_settings_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ab1409f92e774337e260796212688bddd73804a4f87da25ac5050cc5c15456ce", + "chksum_sha256": "724999fb1b00383d5ade1f29a5ee65c66f9462a26afc04636bf17689b4be6699", "format": 1 }, { "name": "plugins/modules/planned_access_points_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d8eeae0466c7d4abd531085860fcec1544dff0be9bf6707c2ce133081322d484", + "chksum_sha256": "5425befb5c57fc61d2a57040fb4328b4cc9f208704a1d53d336d4dde18158138", "format": 1 }, { "name": "plugins/modules/event_subscription.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ca27b7a6a525a197cbf24d682e839a372c988520297d2406093fa1b23269d993", + "chksum_sha256": "8f94beb2a6d694ecceb446365140c0a98b53532947f417eae5a506ca772c9ffb", "format": 1 }, { "name": "plugins/modules/disassociate_site_to_network_profile.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a57099910d732a1081521b0586f14ba568f38b56f18cdf9f84d7726a25fc6b78", + "chksum_sha256": "9e719471dd45977103c51c3adea0b01296b0952f8229abccb9da232af87fb5c7", "format": 1 }, { "name": "plugins/modules/security_advisories_per_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "510a8d32961299a16d6901f64f7a0e4830efb08196d08cd633b1ae4d80595418", + "chksum_sha256": "7b8e497ab8f7a2c4ffc741c01c97b24294c0368afab2ea6a497a1c733f8f5aad", "format": 1 }, { "name": "plugins/modules/wireless_profile.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bbd0d63fdc3b88a7382790da0d74397f1dbec93156adcf730459d94060bdad90", + "chksum_sha256": "b9a3286b939cee7d41e926459c389371eb71712704f2cc80cc62d5d4c030e12c", "format": 1 }, { "name": "plugins/modules/authentication_import_certificate.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "95ba72943a0e100576a8dca2f24b42024451108d1570e63a01a241274f6e88b8", + "chksum_sha256": "f25ff63970622b3ca833b8d9417934f11ff1a3ce0c67ab48c094f8679c440d2c", "format": 1 }, { "name": "plugins/modules/sda_port_assignment_for_user_device.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2003691a23f90ba8c744a45d2652c60b9bf2296a61203c1d14cea140f31ecb0f", + "chksum_sha256": "0c5b6bb1caa7a59337c0d2cf2f7189dd89d6d75af96aedda38735d4a57addc17", "format": 1 }, { "name": "plugins/modules/site_delete.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7f87362a1180c33a0958bd3cc6a9b5282acd363eee262c988470b1b6bdb0aa89", + "chksum_sha256": "136244729cba0e4ee3c153b5f21b303450f51775a19424b9f4ae5e698b827f56", "format": 1 }, { "name": "plugins/modules/nfv_profile.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fa6d9b1c6d23a665849933dae5d506fbf2f12977d538afe65defd166e7945176", + "chksum_sha256": "a925b77fe717b8b23909239509a9afc244f7df072c5c010207d2a83d8b7bee65", "format": 1 }, { "name": "plugins/modules/network_device_range_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3a4d0a3e5d09e7a1101073a7f8f77bd740df06fdb9b3156e533fd83edc598475", + "chksum_sha256": "8ea25e0bc3e101c707b72dc2caf814118f067175f3dd28c8dd7c630daf834f23", "format": 1 }, { "name": "plugins/modules/network_device_custom_prompt_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "925594e1d3ab4d227f727dd2ff4f6071ddf7fa3ba370ef89012e727dd03c5b5f", + "chksum_sha256": "ca6368c4d89bdf14c64cb4e719cd206d0758038e3ff50db8ac29c7e7ea037cde", "format": 1 }, { "name": "plugins/modules/pnp_device.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0315da3f9fc9553e61cd089e24427ca21a4571f93c6903dcdd7eca94de895a26", + "chksum_sha256": "87b4e7b1a8100d3b3165455e59e9a80bb82790ed58167253d8e893abda8292a0", "format": 1 }, { "name": "plugins/modules/license_virtual_account_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4a14f345427186acd7cd817934f77ac1b9a220b9d8b999d747c03f8595d85bac", + "chksum_sha256": "0fd065702a56e2130a33816c8e4fc626cdce32c14785b1c06a20605498c21bd6", "format": 1 }, { "name": "plugins/modules/device_credential_delete.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e871368c6d1375f33f853132e5f5653d1d25ca48fdb7cb5d5580df72ce197a97", + "chksum_sha256": "73611279350c75b42fb90582f76fefff1ab74f85656f49b715c412cd9eacbeb4", "format": 1 }, { "name": "plugins/modules/topology_layer_2_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f29d376c210c83aca735d11614f22ed9a4c9ca3fc97998d65b6b84fb95a1d4e7", + "chksum_sha256": "9dea8f1c6b0b8319a453be363cc0162ca525538b313d05c03e5cb8139d4b5ba4", "format": 1 }, { "name": "plugins/modules/threat_detail_count.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b6d4604c1629ee70e899f9907aad240e7698f1895e5ea0d12b4ddb8b466d3981", + "chksum_sha256": "42588fff16510897afde5d58916f13e4201dc8dbfa0918b01004b96785d6fd95", "format": 1 }, { "name": "plugins/modules/device_credential_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bd2fb6aaee258088a4be03ce7b497590c53079a30d97897665a483001de952c3", + "chksum_sha256": "277c1c63c75d3ed29a244a143e5aca494b04346a27e56692c180f810d4fe43ae", "format": 1 }, { "name": "plugins/modules/device_credential_intent.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "66fa8406e7af3248eef9be43a7e2ce267d81eb478ea00755b9531461aca0d961", + "chksum_sha256": "9c7b1a9f78eac8b641fb6360e573adbd30e4703f93f0d79a994429d425076c7b", "format": 1 }, { "name": "plugins/modules/site_intent.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "81af801ed37704ab603d8d0531a78bef58a8ca2994e4ef0f09d6ab6fd88e97a5", + "chksum_sha256": "b1faa8cc81d9795cc1f818b0af82b399b096d6e1271af4152f9c83ac7ea6e98f", "format": 1 }, { "name": "plugins/modules/site_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e1d4b175913d5f99f4a24e42672c98918d8c524750e97ba97d633d1aaaab0f77", + "chksum_sha256": "73ab43253acb3ae2b8e09d59724d762048c28945898d998f69df3d73610fc6c3", "format": 1 }, { "name": "plugins/modules/network_device_user_defined_field_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "97ac775b499496379b6591c51d6d5ee1dbb3510715234ec127df1935be15ed47", + "chksum_sha256": "c8510f70069c4aea3bb52a4aaa1a5ca8c1aa55d4e31efdb93a9f5c9e12853c36", "format": 1 }, { "name": "plugins/modules/http_read_credential.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6f974bce513629e3badc474d280670460b34b945815c1dfec75874846c72cec1", + "chksum_sha256": "a9a2195ab6cdb6dc40a885de01e3601ac7553a503a6cf118bd4d0dc1e8d81ba7", "format": 1 }, { "name": "plugins/modules/compliance_device_details_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "8883b487fb7f4e894814db5c066ea8d62bcb9bab6eab77c1e65f8f41dcf59dad", + "chksum_sha256": "94fd67bee2ce423dd2be0429769caa55a9ce461541108767f66b44e76a81b4ef", "format": 1 }, { "name": "plugins/modules/swim_import_local.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "8f56e87c5847d17450511876f9b1030e8cd0e389e4fcd26d8197531e649672ef", + "chksum_sha256": "fe5f9c42b91c809caad535b1e7070e531d246018b17bd37122ac2f165d547712", "format": 1 }, { "name": "plugins/modules/dnac_packages_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d255616ea04f1d4f2d0d3a756b5345a3a76846e07a4fce3939f68e214a7c4e7e", + "chksum_sha256": "78752569cf03879b371c78c9c16803553171fdcc3deaef98505cc77752414ade", "format": 1 }, { "name": "plugins/modules/configuration_template_export_template.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e035fcfb51ca192b8d1e4b7658e78ee2c336371b02b7ec9f5011819bbb4b73dd", + "chksum_sha256": "5ede848070ed4d186baac3dda19d2a89dbe84221bb4d44d3dee857e1c718034f", "format": 1 }, { "name": "plugins/modules/transit_peer_network_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "feec3917cfa16d8a5d36ca23b0bba5e94347a8d73bcc35647d6c02166bf7a02e", + "chksum_sha256": "563a9bdf5c6166c9e5abf1a8433376eca11180c07f544b302928b3be534dddd9", "format": 1 }, { "name": "plugins/modules/wireless_provision_ssid_delete_reprovision.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a3fec6fc6428f9488499b493a82f5b511f608229c4d6bf744fd786764045ff8e", + "chksum_sha256": "1c3750918a721cc0820f4a20d127c944952a770968ecbe3dbc64a00d5b559832", "format": 1 }, { "name": "plugins/modules/sda_virtual_network_v2_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "1b0b6479857fbe6389b251c011365a9835d6978b9b773bc2d97a11aed13413bb", + "chksum_sha256": "c50256d12da60d7e78fd69bedbdcb5997616ad8b47f5d326124af10b9d49947f", "format": 1 }, { "name": "plugins/modules/event_subscription_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "32494ddbb9d39f85db2be63c47229e3b05528c542375e51ccf956faced80797b", + "chksum_sha256": "d716dceb1475a191a63d5ccb8d6897102a5bd5d3f345c1fab109fd7056f478be", "format": 1 }, { "name": "plugins/modules/sda_fabric_authentication_profile.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f369c0441b9669962ed4004da63dd8f917b39d17755d68c1a755d40f6fdc4246", + "chksum_sha256": "0f400cdcf47e1f8a7767554424e50fd5573b8d58fe3c218b54d27ae3f93eecb2", "format": 1 }, { "name": "plugins/modules/discovery_intent.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5d4d5d62ed389c1286fcbc13ecbb47790cff49e0c7ae12b8ae0dd313963bfd7e", + "chksum_sha256": "9d917e426c5ab41b8346699d99d920e4764d687992add75011f21be9326eee38", "format": 1 }, { "name": "plugins/modules/command_runner_run_command.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6693edbedb0428d946372c9013ad5e347aed94992308d5617fa1a4cfcc76fb45", + "chksum_sha256": "5eb5992001e9431eb08775d3845169a2062b842aff1b3735a41dcaf470c201aa", "format": 1 }, { "name": "plugins/modules/sda_fabric_edge_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5c78801500b503cbed50ca503b398dcbc0e2329f22be2fc9e8a8abf2c33fed07", + "chksum_sha256": "997a913eae617e9210e6db7efe98cd81284a81bf23f5c3909297c7f389f7c955", "format": 1 }, { "name": "plugins/modules/client_enrichment_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fa48ef333815f9c0d2c1cc17d98c980359463ea002eff33dcfa7858f6ded2329", + "chksum_sha256": "2dcfc9666186dd28a0758aecce6e8ef4c8261f85f4d312b7d9874df8b70ab181", "format": 1 }, { "name": "plugins/modules/discovery_workflow_manager.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2e4e1f1c128ca5334ed627854e7af56a330e09f7fa7bfd2e20605ad215879e25", + "chksum_sha256": "7dcecd303f5b7e180e64e220ec5c1289e0e97f7257f28292f4863a10174741fd", "format": 1 }, { "name": "plugins/modules/event_syslog_config.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0e275395b5ae661de22e64c9c21bc10f0f3bc07c88dd0299560d2bdb6e3c2a73", + "chksum_sha256": "0bde247c5caa064449e0633732bbd312497e3e0f69aaede6f9c15f155016e214", "format": 1 }, { "name": "plugins/modules/sda_provision_device.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "285f1ddeca25ad12bf753ee7b7e3ba5ce8749e652da0549a87cc6477b148c8d7", + "chksum_sha256": "16c231a9de2ccbc861b11a5ac41c8e438669a06cd0988eb9db8a406c870d7fe7", "format": 1 }, { "name": "plugins/modules/interface_network_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ad46cfa858fb72bbd15702cc70ccf3d59c2960b601062e2cb1448d5c947d8d05", + "chksum_sha256": "7151fb0da471791cf5ce401fcb5c7779376f045a1e77415752c75f6281b7e700", "format": 1 }, { "name": "plugins/modules/reserve_ip_subpool_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fb6c6f881f932f4955b0d52a5393dccd1fa1a7f3570f2ccf5219dc0c72fb1fad", + "chksum_sha256": "0e23957ae461ad94694930f6dbcee49f15a66e33a5482b7260c77f0f548a72e2", "format": 1 }, { "name": "plugins/modules/configuration_template_version_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5c729bdf17c3f58fe8cb07c05abe38b6eb7212f54b780ef862a9613768ea52aa", + "chksum_sha256": "6db9c81a5e9cd3a66121eecc8e5b87b4265cb9a410bfafa294cd080d338ae6a6", "format": 1 }, { "name": "plugins/modules/dna_command_runner_keywords_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "43318675e447145e40a85a72914d396af2d0a28f50e973d04452fc7e74e91866", + "chksum_sha256": "65e79488afa4ef3820aab5e915a0aab9e578bbf7a31a2bbcf908772bbde354f1", "format": 1 }, { "name": "plugins/modules/tag_member_type_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a27fd34a02e877fbcba7fd2391212254f28990401fdd87de10662b669ca6219d", + "chksum_sha256": "e03ef4a4e4b6b6c4eee059129aeb0a87d675065c9f3289923b3b9db6d8888142", "format": 1 }, { "name": "plugins/modules/cli_credential.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "94eb8979f9fcb0bb622e23ee6d689f4dd067d70e5f92f369f79e5fb270845d98", + "chksum_sha256": "ae8078d2bc7f17fa3946400f9d9f91cbac2122cb0af50814581524065edb4983", "format": 1 }, { "name": "plugins/modules/event_webhook_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "cf60d61cae706455b9af76ab05c54186e1dd50ae6f5e0e11f63d642e75179ffa", + "chksum_sha256": "3327f4d0facc8deca05dcf652187bce2e0b853d251febe9a45a6532204d3b54c", "format": 1 }, { "name": "plugins/modules/license_device_license_summary_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2a77dab6f909264faa05dfbe955a80d85f6f7bd7fc8fc0d903138ac581352e34", + "chksum_sha256": "03459e80c875ce7f99aed01d53b079418711565ff526edf4a4aaaac686a8641e", "format": 1 }, { "name": "plugins/modules/role_permissions_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "58174ea096129749a9c9cdd3659fd71434154e4fb988ae66f556835b286241cf", + "chksum_sha256": "53d012b05cc0d04388db377e9f987708362162becba7af1dbb233502fe8147e2", "format": 1 }, { "name": "plugins/modules/device_interface_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fa5e221ac6a7c0df2c6ef63401b0457b5647c3aa69ae4b8ae21ddc9bc506a8a1", + "chksum_sha256": "90eacd9d08fd01b5d978f44fcda0d499c6921292a159447b81800c5d17eec4fc", "format": 1 }, { "name": "plugins/modules/disasterrecovery_system_status_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "92f315efa7b89279e8f7b192c09ff8a88289fac4b59cc7691a2e105a69216b0c", + "chksum_sha256": "79a90ecec047649cac72b3f47f3311c4c9f31967bb50d8719e2f995377fcd2fd", "format": 1 }, { "name": "plugins/modules/device_replacement_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "33735267f9937053587282f65594631dedfc3fd9fefcb36736d80f0495507f1c", + "chksum_sha256": "72ffc7e99647b8d75827d26f188dcf5ac046d25205bdfa4f378dc948362de367", "format": 1 }, { "name": "plugins/modules/pnp_virtual_account_deregister.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e8a6700ff0d2530ea16147dc5e64040202f2ee8e66d953cd8ee05375a3b6e442", + "chksum_sha256": "cc1ec82c0edaa6b470c3b047c52521e927b7b8ce2127802656ccb5cf7a056ff3", "format": 1 }, { "name": "plugins/modules/configuration_template_import_template.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5667f04a13569fbd8a4b026e6e3f97c4ee2d40928a96fefb560c3e37bc22de8e", + "chksum_sha256": "1f3afd88bfc842a3254fd93bd5c5ac2f77bb3d42e36ced80809454885c54c290", "format": 1 }, { "name": "plugins/modules/pnp_device_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ea228c564b4efc6c40fc9dccf20d8911ac984a954ffd9a6fb9f1d45da7693214", + "chksum_sha256": "05e9933ab8d49d305e4eb8cd975eda7201d0a7907a22fad8c41aa1792e0ec3b0", "format": 1 }, { "name": "plugins/modules/event_series_audit_logs_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3c9e1a8d9825781f9def1f39c11306f0f9ee54d6edcc9ec797f698ac276d2855", + "chksum_sha256": "83db2fba5b867f93003eef05e77dc06cae596077d8031cb8e4786412835b09ab", "format": 1 }, { "name": "plugins/modules/service_provider_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0c7c9630a8057f22c4e21b28165db903ab8437dda7d8980158a6feb7b32d907e", + "chksum_sha256": "7d17180dc4cd643a09611991cf2043425189cb9a73c6f59065981d8281b3ae87", "format": 1 }, { "name": "plugins/modules/event_email_config_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "967f7df7906c17e63a36b6389de1778caf882fd7ec68bd2848047503734d81cf", + "chksum_sha256": "a2abdfc66a3d67f00d17e810ee2d13570ca3539a9ba9a9720bd472194317d31d", "format": 1 }, { "name": "plugins/modules/endpoint_analytics_profiling_rules_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "cbd6b5f88a5e9f37a80e02b713ebddd6d493d451370323bfb1b6dbf7a5b1b579", + "chksum_sha256": "1cf4ab1ba574bb96b930fa6d10bfee4a8144bb410ea1411a57a009907e7c273e", "format": 1 }, { "name": "plugins/modules/system_health_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5fafcf66ef848c98360eae0deefb190fcfc26b65332e7285f11d6b31bfef862f", + "chksum_sha256": "bc062d3bcd58caca91751be0e30e482f8922ab7b740a95dfabcb3617abc3eb7b", "format": 1 }, { "name": "plugins/modules/tag_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2b4ef16e18f7349df46dbf9d5ad0ddab34dcc3243d591021c19e363ce1fa45d3", + "chksum_sha256": "84b58cb1ff6b7051130a080d0cc358d184ee463049814ebecdf4b87f0d13c3a8", "format": 1 }, { "name": "plugins/modules/template_preview.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5e0dbff7da5368bb3e8cddf549478e1a017d3436dce0c7d2eabd6946aaaa64dc", + "chksum_sha256": "0767e4f700a883074575115d80e90a55eca61ecd684f7a581f6a3e449892ecd3", "format": 1 }, { "name": "plugins/modules/sda_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a1863286578d1d7058c66030f5196c6d0d5c31da4b1a769b4c0d86fa6350fc93", + "chksum_sha256": "9ceca94ff68b9cce8a259c9a202302eccabcfb1a6624406cb19d669a8134eaf1", "format": 1 }, { "name": "plugins/modules/network_device_equipment_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "41828a661d23590cc8f7859f8a9cabd4a450ecd413871feaac70cf6a9f080b1d", + "chksum_sha256": "a894f8ad27d154d6bfbb8457a9925bd20efca3313133dce4a6a4f50d3e692a23", "format": 1 }, { "name": "plugins/modules/sda_virtual_network_ip_pool_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "06e5e7b4126e3f5ec10d5beafc32c625c57468272102dc7ace67fb658ec7e993", + "chksum_sha256": "a8ef7391bb0d784b2959a69bad9a6415fee524d07b7088f218d11d9e61ae386e", "format": 1 }, { "name": "plugins/modules/lan_automation_delete.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3a1c5fc9af9d3a406faacfd220afe0551f229cd79c11a749d10ed70c07f0a6ee", + "chksum_sha256": "fbeb1f2b815cc579dcc630713ccfb5b1683195d17c0002303d9929e73a5d3aa3", "format": 1 }, { "name": "plugins/modules/app_policy_default_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7bf88c2b9746391d9e7f43dc96ad6dcc1d874426c718031d3eb97d6d97267d3e", + "chksum_sha256": "046a8cc036a2f26035e3f993e5f576648e1bfcb59f651a2f74e724c7bf292395", "format": 1 }, { "name": "plugins/modules/swim_import_via_url.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d017455247056b195a47ea156a9d6cff5d37f9d77876109af39b64e9f56f2db1", + "chksum_sha256": "5d9113ffafc2a9fcf72f4aa671f970b5b86383e6e582eee1d02c00ccd4d2518c", "format": 1 }, { "name": "plugins/modules/business_sda_hostonboarding_ssid_ippool.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6bbf473a0e595e7c35cd39b42268bd3a1527160e7badf498a7c4f71d9dad392d", + "chksum_sha256": "5c0381440528dbfc720d6914c6f68260a7ebf3d5aabd832fec9baf3bf4a048fa", "format": 1 }, { "name": "plugins/modules/event_snmp_config_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "8a35d4a47816981688a1c29e20d6c979a96bc4c7dfceb39ec0c03f34489067b6", + "chksum_sha256": "8526121f3e913a218cd02fa7c4e1b03933c00ddf54695823e555db7e4790f15c", "format": 1 }, { "name": "plugins/modules/snmp_properties_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "67fa7347d7fa944367c449e70a381b6b7985d70ebb1d6af1b4b9c04f750b1f23", + "chksum_sha256": "dca676e7508f5ecbe4760a4d25fd75a388cb7088ea113a4368e19af0807cfb16", "format": 1 }, { "name": "plugins/modules/event_email_config_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ddb249265a519600ff736f4aba950bcc74cb19d028a931003fd646a48f9b1f8e", + "chksum_sha256": "5857874a63efdf544c3bd4cfb5a23506e4da8080c05b18ce624086f3286d3e10", "format": 1 }, { "name": "plugins/modules/swim_trigger_activation.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a73de0abe28f85f254f25b162a90bf6257ce1aad5919d0926c3ea4858bcf4b41", + "chksum_sha256": "6fe55c5f2ba712ff8405ac65db4eebabfe1fbf783eb2384878a93ab9803e2c9a", "format": 1 }, { "name": "plugins/modules/event_artifact_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b17b5412689f0ba4a9110408bf017008239bbbe59a79ec69090832d2808b1afe", + "chksum_sha256": "0add74d4a9abc68435cfd8f2b2b0a2b12e1e41083734982e74e697c8b10e272e", "format": 1 }, { "name": "plugins/modules/template_workflow_manager.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9caa9ab726bc593d6f485fbc3ef43c41b614feb8328f91cac1d8367be9fdc49d", + "chksum_sha256": "b1b8ec891e44e539d660034f5f3edd7caf85de970139b74f93addf8e82031f99", "format": 1 }, { "name": "plugins/modules/discovery_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "29aa559fd96e7578de9db42769f08911f4c1efc84caf93e217b6572cf9bf7571", + "chksum_sha256": "db50b48430f478eeefcb50eaf426a91bc350069fd637a6fabcca8aaab30970f2", "format": 1 }, { "name": "plugins/modules/nfv_provision.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b175e23ebc0049879fa5359073468dea940d2a6a3489224346616af87daec898", + "chksum_sha256": "5e161b58a0aae21985735aa16f1c51aaca68993bd7cac8496ccce7caf119bf6a", "format": 1 }, { "name": "plugins/modules/wireless_psk_override.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ab739b1e46a232a91712806b019ac0dce02cd0fa555e4033c88229b80ae2d334", + "chksum_sha256": "699f9ea5227ec33456bdb9d0f1f87394f8b59962d2668134a4bb69e6088abf20", "format": 1 }, { "name": "plugins/modules/network_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a59bf7039e1388d3ff8cac28791369851aba21465d55c1910663424a3d62daca", + "chksum_sha256": "d84c316a8dceab645376ca2a12c460fc08c131fbe8cd7a09c08442c1e6b707a7", "format": 1 }, { "name": "plugins/modules/event_subscription_rest_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "1f973f0e7a43dced562bfd266f68e66045fe2dd4d14523b5e542c5573728c0e1", + "chksum_sha256": "c183256389b8cd164b134c25172db6fdcd71e87da6e0793fe08c6d7b87afa656", "format": 1 }, { "name": "plugins/modules/reports_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "480d17d062b11d8f274124495b1ebf9b244ba521065b876a25ee402856649055", + "chksum_sha256": "2b8e90dcac98a407cf1f544cd4d204b9f8bb2f6716124f66e915734f3fd90803", "format": 1 }, { "name": "plugins/modules/lan_automation_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c6dcf7b0a91d4cdb01270b635b87bb130b0f27e29505c90571437c8819a1ca3a", + "chksum_sha256": "ef5c835136ea31887795cb4ae057f13b305d34d5cee5fc83e29a4d77d6305e31", "format": 1 }, { "name": "plugins/modules/http_write_credential.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bb124c888769059679d8464d8ff965d5252ee901c2d054508c9068358280b864", + "chksum_sha256": "a8a0f2c951bf025923aec39680fa8617abac532db668ad2627bed2937dc8084c", "format": 1 }, { "name": "plugins/modules/device_interface_isis_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "931764d35f07b5508e4be6fceb914e7b95fd920e14d7fb3a24aaa95a564563eb", + "chksum_sha256": "297b2c6a01e75055f148b270fef9ec1e3811b1caa4db452a069a1090bb3f7683", "format": 1 }, { "name": "plugins/modules/sda_multicast_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f20dc250d7217a17a6d59764cc1b8900235beb4aada68965d9563eb3fa7d9a12", + "chksum_sha256": "8625b54c14c546a997b89d8b19b760f53b56acf941c7283786220ea0cf790e3b", "format": 1 }, { "name": "plugins/modules/topology_physical_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "95278a7cf5f0e98e9a4c0ad56e129f4b6703c06ed6fa42f09d51b692687694b0", + "chksum_sha256": "21ea3828b12100cb2d63cca9a180288f62a1bbd7c5dd4bef18317f7f04136210", "format": 1 }, { "name": "plugins/modules/users_external_servers_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b7276641ce82a3f1b92e1411603569c75668d1693e3d3c2af4cdccf4ffc594e4", + "chksum_sha256": "188dbd8a8d337ac460723c1a0d54b4771acf9185668793df472e3ae123662584", "format": 1 }, { "name": "plugins/modules/security_advisories_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "dd688ec7abba9d0d478735c0881f4939a616107a230993322e5e0037174635f2", + "chksum_sha256": "40b7ac64401d1b2501ee2520c04da1cddbca62562bb6a1be4c4495a092fd417c", "format": 1 }, { "name": "plugins/modules/configuration_template_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "96c81ca8e425485289a75311a12658afd145d6d76b17da98d2bcd0e461e9c171", + "chksum_sha256": "cbedabf444a6db5481f4cba8e0f9c15f7785437bcdccd5119364dd2fad886879", "format": 1 }, { "name": "plugins/modules/event_subscription_details_email_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5497dd36f9a56b8e55392e856e8f8ec26d6dd189e5d0b9668bef5920a1c1ee60", + "chksum_sha256": "405d6770ef140baba4df7d621a67ba686df209a008a7d3b4e8684749f4cb9168", "format": 1 }, { "name": "plugins/modules/lan_automation_log_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "95b934b5426f0046a5033e590f7f55b6240753ac21dbcfa015a75792518b15e3", + "chksum_sha256": "5b3f1532b6effb7aef33e95b0700dbe67df967bb3bd20805410c3854a17269bb", "format": 1 }, { "name": "plugins/modules/network_device_supervisor_card_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9afaa51020eb5fa74db87da8d19d40112445afc0655a6f1246c23e9987307e69", + "chksum_sha256": "c04d35500ec069592a814f98f6d2d3866b2bb3451e5d466981d76e2cc8d763e0", "format": 1 }, { "name": "plugins/modules/global_credential_v2.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bebf050a44a44da823ae7e260c7373dbe014fd31110497369b11bb2210f95468", + "chksum_sha256": "1f72234ee753cfe8541ceb94f386cf5b1660541161115a36be6c8d966b9fb1c2", "format": 1 }, { "name": "plugins/modules/event_email_config.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "55edb414f78a0465fe21bb8d7df2dcddd790ac166f6a5a3f7c6c32e43fdd8872", + "chksum_sha256": "f757d98a432913e6ffceacb593eb9677f0fa028d7cee487f98dd59fc95734308", "format": 1 }, { "name": "plugins/modules/network_device_interface_poe_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9114611840309a068f060a6c00005af4d0ce04b5e65b50b2ca1fddb5c1f3e4b9", + "chksum_sha256": "390f24f6873f8f88d0a84fd61f5f804523293b5c9d5a427f1116219e5b676080", "format": 1 }, { "name": "plugins/modules/wireless_enterprise_ssid.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e1fa4a975fe2bb4cfa7e150851a5daf7e4dddb3cec5bc47f07166d4471f492b6", + "chksum_sha256": "89ae9237888c63505ba6494775d57957c92fe6975112aa4920181be6b4c83812", "format": 1 }, { "name": "plugins/modules/event_email_config_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "aeff0928803c45a51f05d548da3ef7d1e8f90787451f548908ab83365eed8015", + "chksum_sha256": "90fc2f8a4e52bac735eeebd13f2c441389eee28567aaeddccdd3aa0b2d0911fd", "format": 1 }, { "name": "plugins/modules/threat_summary.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "76428992312bc00fd67ce567a21d3cbd16328add3f7dd4b4e92945a78441fb8e", + "chksum_sha256": "af2181ffaf29afff92bda27e6ac26918f6996a709335ccdf452ef247c444061a", "format": 1 }, { "name": "plugins/modules/network_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "1eaa6bd3a1404450e2cce31639e0a4fb8f21a1770785485af7286e03683bf545", + "chksum_sha256": "1c2c7db40bb76890878a5bbb8eaae4a0bd086ae05440c308e8a2b1ee27db775d", "format": 1 }, { "name": "plugins/modules/network_device_poe_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "95b3e8a26f5cdb60290f3950c51b04388b818752b499dd96e6c2f79b63979091", + "chksum_sha256": "0b3cd9983e422fb5201601e8aa3df0534dea843b7ef390a7ed369afc9ac2aa62", "format": 1 }, { "name": "plugins/modules/pnp_virtual_account_sync_result_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3780c4c09e88efd6c4683ea5b1d04111c50174274a8e90c642cffbb987c05b69", + "chksum_sha256": "6ceb61016327b35bc8fdb49515026520d78fb2c4cd559d8967c2bb95a287fc91", "format": 1 }, { "name": "plugins/modules/configuration_template_project.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fcd9a13996f48b4feab768e13b2925575acf73280abf313581235bfa8527366e", + "chksum_sha256": "027056a2cf1ecd0bb2e91caec83465584c0b360bd4921d195f4c0078dc3c2815", "format": 1 }, { "name": "plugins/modules/sda_fabric.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "366eec6b367133778bd16fcd2d0dd59a266886a0909b3090bfbccc6907a8c662", + "chksum_sha256": "01d1c96f6b7ec3b4fc82def191d4bb3ad80cd0d0db695e942f7976843b07db11", "format": 1 }, { "name": "plugins/modules/network_v2.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "daacc64a56ac3033476537951d3303ebe7a27c7dc7d8c8dbe15930aa144a65e5", + "chksum_sha256": "ccc7f8825f7e7dc5447051acbd4a2897d07d0a0c3ea34481d2dc18b31ae8f48d", "format": 1 }, { "name": "plugins/modules/network_device_meraki_organization_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "40160dc893da16f8c56619f25dc0fa91e777160cef7a11afc42521ed1f004aba", + "chksum_sha256": "501b32fad7f0ccc8d12dd4a4ddd19f62e5f5f45414d2c7a4ef9bab388c7936a2", "format": 1 }, { "name": "plugins/modules/event_subscription_email_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fb1c02841bffb25b95dddac13578bcff433f457fbb07763e1ce4704f72690136", + "chksum_sha256": "6d10e11f72b43f0bdd6f6e0db5bae48d207d43c64822e9270447cdf270415012", "format": 1 }, { "name": "plugins/modules/event_webhook_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "47d4b730290b9e01588bdc9a62499d2b9e437b4f117d4ac1c52559f1d08ae548", + "chksum_sha256": "cb5eb2a7db3bd583bc200f3665fdacc2eaa7307463d0727602e06e4bc1e357ec", "format": 1 }, { "name": "plugins/modules/discovery_device_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "cd4c79c576ac4e75b87e664fa027d1771802246cfc18d8c0c06455f6ba09fd7c", + "chksum_sha256": "cc143f6f80d9acc2dc9a2f6bbe88b6dc63e37037584752a9c6b97e2d24b469a7", "format": 1 }, { "name": "plugins/modules/dnacaap_management_execution_status_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7db3814a2dda68a74feaacf7002a854b1c27772745ae22c5fa4f206d35a61b41", + "chksum_sha256": "5ec0a31b09ac3740c66e541cfe4b596db90132248cb0b10e99da48468227bc17", "format": 1 }, { "name": "plugins/modules/network_device_summary_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fa3aae8a6b2321f03a1b8f9e8baea70bcb43ba39533109e8c7dc3094237b1e34", + "chksum_sha256": "6b6c01df03b984a409eca09ac1507a3f670e44b244ee049bafe485247dd22430", "format": 1 }, { "name": "plugins/modules/device_reboot_apreboot.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "471dd65f4bace5e6315fc451b9707b852675ab5ddb07269d39f1434052c6fa7f", + "chksum_sha256": "44ad5748789d0ab4ec27188c2303b649696853c831c85bf41a31964a4880b037", "format": 1 }, { "name": "plugins/modules/reports.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "337408d4cec040a2addff74f30a07e69e606ddf58e2e909639b4c1843ab346d7", + "chksum_sha256": "b2546d138a874a33e91ed9f70e87f2236c28fa3c9161daf31fbc472876e4c294", "format": 1 }, { "name": "plugins/modules/reports_view_group_view_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "752ebeabef80910863a3d0985b2a17b2aca65b3d7a5420087e8c841fb182aded", + "chksum_sha256": "f89203d7479c24ccea06961c58fa87ca9e0e8d39aa61016aad069fb040d93d3a", "format": 1 }, { "name": "plugins/modules/event_subscription_details_syslog_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "34a78d1be492cb4c226c40e73edc50f80f5e49882475210fa620c2cefb9ede18", + "chksum_sha256": "0d5bf1e319f86e92fbb96e9787aa7ecd6ca539f42c43d24bb09c1915f46d580c", "format": 1 }, { "name": "plugins/modules/license_device_license_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d8469dc9759c5d864d6ad27a882dff4e6c2be3b943f104ee1e2af8b0797aacc6", + "chksum_sha256": "edfae10160a1ff5072ca86e0a10e0043ff22031507bd78f680b5f52537d30470", "format": 1 }, { "name": "plugins/modules/path_trace_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "037be41aee7d682bc0aa8820a2fadce1f4427449685a2d9e3f2f0af22aba25ea", + "chksum_sha256": "505ef505a81ef65b7e3317bc4598f429f39bbdc26cf396f24b7f4a8368307397", "format": 1 }, { "name": "plugins/modules/site_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e678d7592b61991bf88589300a8296c0875e4fb4904b296958c885347a510781", + "chksum_sha256": "a159cab1c0c05979e19a2204e3f8f4f80b28b73b10e58f5ad016fed8eff40858", "format": 1 }, { "name": "plugins/modules/site_membership_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b1a79242232ff34a88ff9eb277c2dfe7df517f1e5c636a468eed0ff09e07d684", + "chksum_sha256": "c9a7691fb7b4e10cd29df359bc551dab79fc88f78395ccaabf2a0aa5413d5d3b", "format": 1 }, { "name": "plugins/modules/sda_fabric_border_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ae419fcf754093fc399ec8044392411ac06fe535a71219d279a15d3fc23bfc31", + "chksum_sha256": "8c9ee7371b672a4b05e84d8fdad023c028bd7fda42c9c291e8c8c0b8468cbbcc", "format": 1 }, { "name": "plugins/modules/inventory_workflow_manager.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "902aaf3d5251b10cd002f1f24710bd0fd076d5caa203fd64966bbbdd14274d2e", + "chksum_sha256": "4f2eac3c3da7c44477646bb5d283b84381c68b7ddff0f5374e505dd8d5f0506d", "format": 1 }, { "name": "plugins/modules/global_credential_v2_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ba55055a3bb5e88f63f6f57c2d36573960f09565920eec799cd52c7b2b4bde42", + "chksum_sha256": "4370b9bece6cec8f15fbd34a42a2b06d059f5dd227876d462dce87b10243e0df", "format": 1 }, { "name": "plugins/modules/event_subscription_syslog.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6834ae5a13322cfecdcb7ca29c9b49923d1d2ac49b9d34c02b12b0ee7df97db6", + "chksum_sha256": "d296e1664e4008d17b54f7e56909c76ec480fafeaa47987956b0b4b7a9205a3b", "format": 1 }, { "name": "plugins/modules/user_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7d6202b171f91705f0f0b78b0f04293510e3964a05e667a107847d3a26b2b2fe", + "chksum_sha256": "14550e1a3958db5cffe0926f05ff81490e3744077015d5adb31d80af9ede4334", "format": 1 }, { "name": "plugins/modules/device_interface_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "76da700b3f3e632bd6ca6eb0ab8e8cc371a430b1caf6807aeb2c4f8a5303d3d2", + "chksum_sha256": "9b87a231ea5513907e7ac5a11ae6689f63443851999b5ae73a07536863065f52", "format": 1 }, { "name": "plugins/modules/event_api_status_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d602f7466b50c0fd14d86d13018055ce549f2f362e88b1be736f1724378b1f45", + "chksum_sha256": "cbec81ca521399d416024b473f3eeb1fdfcaef7823790529d0fd59e58a3c38d4", "format": 1 }, { "name": "plugins/modules/event_series_audit_logs_summary_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7dfde6593bc7b750abdd145838eca057fecad629f457dcebda76febaf5bfa192", + "chksum_sha256": "789ee39e43d4f396e82c434df8e2dcb2d35d0490a0fc270a198fc4743816be8f", "format": 1 }, { "name": "plugins/modules/sda_fabric_border_device.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "82cd6ccd601872de901fd2842fbad89bcd2470701667a38eb95f0f1bf26a54de", + "chksum_sha256": "514a9818da32a1b17c218013dfec643b731adf5f9c6b43f503841d906ad9f8c3", "format": 1 }, { "name": "plugins/modules/sda_fabric_site.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ffc413261e353627541ec37b6c4b89c043864937bc6a46da3289d4369bebe8be", + "chksum_sha256": "4a8ed49cebc8ff4bc66d42e6fffec8ed468a4946f3b0e27810fb6b8f1b356bff", "format": 1 }, { "name": "plugins/modules/application_sets.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "38d2b9077e0aa11c2909ad60982c3e8e98c7baf89889235c23b10adc7b468fa3", + "chksum_sha256": "192769a8af1b5c7f3f336ec63211d092a919039b1654abb98cc0182f83d89e32", "format": 1 }, { "name": "plugins/modules/interface_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "354d7d8448d181aed69034971f105e106319f244291a0f9c1aaf11f705c49c8b", + "chksum_sha256": "a17f013992aab461cc87547571bc824dcbaedf5a535005bb60f9ff8d17376821", "format": 1 }, { "name": "plugins/modules/configuration_template_deploy.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "90dcd2f6eddebc69a201447994e512cebb4c841edd8553949a4137f75e3c8d25", + "chksum_sha256": "25716a8304f6d3d2cf71687dc7fa67a970476462dbd150b197869dd8d79252ce", "format": 1 }, { "name": "plugins/modules/application_sets_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "98fc9a92f6d0c3c7e577566422b026881cfdaf6036d934e5270c5afdae983f18", + "chksum_sha256": "2dd82f908f43a7a9c18e60a76a2e5fff93c5f0f7f2e88dc33580ffc1ab22589d", "format": 1 }, { "name": "plugins/modules/device_family_identifiers_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "af0f77c84835c541f674fda8f5e5aec7870509f852f3762a890866fbb9c66969", + "chksum_sha256": "bea4d4ef7a733abe83abcadcd8f3f638aa38f83ebcc53d8c69abf61a0a699144", "format": 1 }, { "name": "plugins/modules/compliance_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e5f5aa666609204c911a9185974570eb25291ad7885dc0b475bc83258f42512c", + "chksum_sha256": "68d11400c2a1460502bf973e8f34d63e8cf668b3158ee0d18332926623fbe908", "format": 1 }, { "name": "plugins/modules/device_configurations_export.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "038af8d5122dee1aa0bcac5eb8fd3eea96d3a1e4da5a5c9fa18dafc8e9cbdc9e", + "chksum_sha256": "1b1bea127f011c75e212a406bec66e6027e9091338f02e4ed63655cb45009953", "format": 1 }, { "name": "plugins/modules/pnp_device_reset.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b84251ad7277742f47d76491d0e97622ff4ff73cee04a6de7cdb6246671cec3b", + "chksum_sha256": "18f72f928ff064c8be1ffe100036b6e511c6cf4d61341795a5ae44fd25273ce2", "format": 1 }, { "name": "plugins/modules/pnp_device_history_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "63f4e90acc242174dce7f56ad2c47c552d979da967c9ecd23d07a2d7aee5db2c", + "chksum_sha256": "732bf747504e5438618fc356c4c0304a630241f2d66c60e4525c713ff3066725", "format": 1 }, { "name": "plugins/modules/task_tree_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6211a3d60cbf50d88033d72e71840da812111b698fc28207fcbe308270746a1e", + "chksum_sha256": "59893d9359af8cc27e151b5ed20f645cf7a8b6b638db999ae6fac7c3f48d9a97", "format": 1 }, { "name": "plugins/modules/network_device_vlan_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "8765806aa1b2c2180cae25d4575938df40df8d3bb28d6f18d15cad1222fa699b", + "chksum_sha256": "5930cc396ca55b4d45bd55be12ff4217ce39a7a128cf57086e81a08fe3e4911e", "format": 1 }, { "name": "plugins/modules/itsm_cmdb_sync_status_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "79ace219b614472c6a7d6fea59a45451fad0440136ee94b347f16bf267461fa1", + "chksum_sha256": "2bdc11fb3544154af2c2cc7c6b4a9440c148cbd83dd71b0406cc8b473f7d81cf", "format": 1 }, { "name": "plugins/modules/file_import.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "60d334559e19014077c1548244ef0bcbf69b122fe53bdfca9682c061eeb67e68", + "chksum_sha256": "b50500ed9705cc9aab6d449087985ae9a15b58912610d7d43031171dde180380", "format": 1 }, { "name": "plugins/modules/app_policy_queuing_profile_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "89b90def6f4573f56b789007c885a93fb2e6cb0ee7195f586b0ed32549082053", + "chksum_sha256": "764f46f16e0b00ff41d2fadd5b330dd93da4c7b973be4dcedd0403139d94ebcf", "format": 1 }, { "name": "plugins/modules/license_device_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "38bad78c0bad7272ef23adafd9d25adc94ed8e01b9bb587436a044513735157c", + "chksum_sha256": "73b123592b5032b2bf01a1a3d07309c3bd72e00babea6a57cec23e4d88770a73", "format": 1 }, { "name": "plugins/modules/sda_port_assignment_for_access_point.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "63fdaa25b5ab63e4413c1429cc4dbd125cd011cdbff3d7ab1b91ce4310f58f39", + "chksum_sha256": "0083dc63ec58196ea6e35b8090c3f0e6129f32a822d22444230b8c908954ea74", "format": 1 }, { "name": "plugins/modules/nfv_profile_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3deb80367d65aac4b198aea936beb4ab3734348660b53bfff6466b3bfde9e019", + "chksum_sha256": "c221b4a09bd70a6967d2d8112dc9a2b686e06096015ca32f87ff5d946cd0efbc", "format": 1 }, { "name": "plugins/modules/sensor_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c27aa720f87ca297af307a213cda6c328fa7bbdde8603338c71471b0653d8c70", + "chksum_sha256": "86bf44ebb2ecaeb88dc8c0f38b1aa579fab91f4b4c2d0befbbe0ad25c2fa8456", "format": 1 }, { "name": "plugins/modules/discovery_summary_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ea537d263922e9274123283489d1900a22189508f0732745c50f77cc8b78c835", + "chksum_sha256": "e427e86af18d037d23dbe7ba001fdc804209faa0a3db0d95a66306cac9703c47", "format": 1 }, { "name": "plugins/modules/reserve_ip_subpool_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e8d7eeca847a7f7aec15c40fa59359f38dbf117bc270a781ceea2a8fb40453d4", + "chksum_sha256": "2c496cdf70d115f1a5eb9aa9d27ca58a914b4e1afdce1e9ed4039c167c5c96c5", "format": 1 }, { "name": "plugins/modules/sda_fabric_edge_device.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0ade5a67024b69d30c659db3dfa5464b139b8231c665c32f89ace415516237d4", + "chksum_sha256": "da4b7c0c2189805b12502ffee36f981e43f66b64c11d72e9114b44e3dc36ea32", "format": 1 }, { "name": "plugins/modules/issues_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3552fe99cef7550c3b8e8f0a071eb0864fc63259c2126aeb89facf8cf86ccc94", + "chksum_sha256": "3233a808e2a38a5dcff1c5ac5dae05c3c234ef3867ea579b4325c6308644fee4", "format": 1 }, { "name": "plugins/modules/reserve_ip_subpool_delete.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "84d4aeebbf3ae99ad5704beb229edc2dcdd26013ba963c54edd4eb686efe94d4", + "chksum_sha256": "be838faad1e1cc2132456eef16a45989490e303cf472101662e899ff746d3471", "format": 1 }, { "name": "plugins/modules/system_performance_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ce0e3e28ad1703d22bd5bba859f83bbfe0160b0587fb9335f6688e4d2ce08675", + "chksum_sha256": "94b84d09630e63de3e78fb401d831c1b575f2b67ab203a9630e73a249e414c23", "format": 1 }, { "name": "plugins/modules/pnp_virtual_accounts_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d3d000a260fa55c450387c04b85fb4f6f38e231b29797280a5323bf7c7edb913", + "chksum_sha256": "4da458d6f6900281ce72fb7d35efdafce5726c2a7b1ed1fceb96013e39df2a2c", "format": 1 }, { "name": "plugins/modules/qos_device_interface.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3b1ed49412c7738a1f931e74444b0389393c63f046304fdd2eb165f25c12e286", + "chksum_sha256": "345a0c8ba2460447514eaadd9a4c6c06437a41dd523ac0ee242b438bc5b6fa7d", "format": 1 }, { "name": "plugins/modules/wireless_accesspoint_configuration_summary_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9cb2a083446c1e18ed6244b83c2202c4e16a6676cc19c18fac3179b564588f99", + "chksum_sha256": "476d76a1dae5fb65ec437614086f4330345337c4a8016143bb4c0e35e70f5394", "format": 1 }, { "name": "plugins/modules/platform_nodes_configuration_summary_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "dffe10b5ee55feb154d6cf7928d528a6973cc82a796f26b65587dedbb7a3aa53", + "chksum_sha256": "425dc1675cc14df2e1a1f106ba82b015efea4dad660efd30e90a85513544fe6e", "format": 1 }, { "name": "plugins/modules/license_usage_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "39f4e084e20c4647d22510532eeefc7cf905aed4cae0ff816a4e42679d305d42", + "chksum_sha256": "b4cd3c33a245ad781ca91ed701162be7f153a784fc5074510e6653ffd37eea58", "format": 1 }, { "name": "plugins/modules/swim_trigger_distribution.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7a5653bebd2c34a0714a01f3d51b99b05410f365e1eede791c20d0cbef500689", + "chksum_sha256": "05301b58c6bd53db105787507b8d95f9146e876c04517da24a2ed7ce93e5ca9e", "format": 1 }, { "name": "plugins/modules/network_device_config_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "1bc10f975659b61c052672f75aa014afcee5d50527a77733aa7d65bf269d33d4", + "chksum_sha256": "fdcbd52016db5111340cbe50b352689233b74841792b2ac6e26baee1962dec7e", "format": 1 }, { "name": "plugins/modules/golden_tag_image_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "af30f6bb7ef5288c45378e2bf84c95083b6cc24c78b4a3cd4cb0d2927a260fe0", + "chksum_sha256": "fa5190a562a76348af1a487b0fedfeebcdf38420faac0273a0f4c4d7c2d6cb9f", "format": 1 }, { "name": "plugins/modules/app_policy_queuing_profile_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5db47e0ca40ec28b5e44446ca95ae502b086663fe74e7f230280603ff5fb93d8", + "chksum_sha256": "7901bb6d68d20beacf33d98102b5f4c9a60d04363823ad08eed7199ce413a49c", "format": 1 }, { "name": "plugins/modules/device_enrichment_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d025fb5a1fac7cc308fea73147e225741f80872de1f8a3244431838a5f60ac36", + "chksum_sha256": "573bbc37a473a66dd6917c421cb88b41893400becba54c7445e1c74141854444", "format": 1 }, { "name": "plugins/modules/file_namespace_files_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b56ee6140cf2f73c2f68c49c93c1271edbcf8483747c5932454a3cc995ec70f1", + "chksum_sha256": "b4b92d8ffd4657da74f40eb67135e126835805a45ccf56b10a734f913dcb14f1", "format": 1 }, { "name": "plugins/modules/service_provider_update.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "df3d1a7041cf1f997b84d85529e3d286910b51586dd1b99f1121c6d587bc10f0", + "chksum_sha256": "01cdb05b3612adcf7492d4c05b7bf341129e6bf945ca8d6e1a7d0c98df1c70e6", "format": 1 }, { "name": "plugins/modules/swim_intent.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a8b6020f943c3d565d60d2644acd609a03aebe0c4cd8b08799c09c9f13b9745b", + "chksum_sha256": "2496669e06e0ff4439abcb47e8befc98e803b204c75aeec972991ae2216d070a", "format": 1 }, { "name": "plugins/modules/license_device_registration.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c8a029903f8e77e904867dd24d4e0537ba08208b6158867447ec5f54a593df36", + "chksum_sha256": "8911294bbab15816cf933fa3c99fb99fcc5d59a70a98353e993a5df1fa61913a", "format": 1 }, { "name": "plugins/modules/configuration_template_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "6fcbd071c4834217eb670ef057c6ff73b1b74852e902e7f20e7b9c8ae09da7a7", + "chksum_sha256": "d4329e504a1f1ae60ea74b216f842bc3b1f7425e666f6eab3643f3a01499c275", "format": 1 }, { "name": "plugins/modules/topology_site_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "db630236845f02e3509240826214f5128dccf05d85e8973d09a4161b099119df", + "chksum_sha256": "8013a0732ee984bd7779b6e2fc10eac4a1dd833e8d39bb37161857ae0a9191c5", "format": 1 }, { "name": "plugins/modules/network_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fc87f5d7778a2fd653e5cab539eddcac1fb16c4b13c1c5df68cf3e75961ddc59", + "chksum_sha256": "f84233f884fb03d3a49de190b30e1dc254fecce2ce839143fc2b21c259ff3141", "format": 1 }, { "name": "plugins/modules/network_device_functional_capability_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "927c87255cacc9d32ffee2930f01925605380a47c0216a545190bfc59cbdf3fc", + "chksum_sha256": "2c970dd0ad71174f2f57047aa0361be3a6cad21743b0d15e1ea944944d5d492e", "format": 1 }, { "name": "plugins/modules/business_sda_virtual_network_summary_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3d0639bad3ee9594380c5f3ab116df124b4fad607652958e41cb740aa83af4df", + "chksum_sha256": "f0961a8523eec413b3ea8e505b823d54dc47eee05900cd1b5e2aacc04fab8161", "format": 1 }, { "name": "plugins/modules/sda_virtual_network_ip_pool.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "cf15ac131559830c1e130d24b486d8b1e540f7816ac80deb83248084d8c0cb7d", + "chksum_sha256": "30c2f462463ccca7ebb154d7112289b6e4b5dc7b84dbb16184c05946ef545f48", "format": 1 }, { "name": "plugins/modules/sda_port_assignment_for_access_point_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f756e843fb2f7626eb41a17caf18890c9b86c8810fbd2ff3ec4869a94a07b995", + "chksum_sha256": "36b20fa02a78d3856fc637637ef790a4c6d9fde70df05ba64b6d507833e70033", "format": 1 }, { "name": "plugins/modules/snmpv3_credential.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a89b8c6e527f99286892d6da87131e4579e68fb056f4b64b1c1370995530394c", + "chksum_sha256": "4986e2f6eb85ab186ec1dba19172866c46c914d89a53fa703e4dcaef2a2002b0", "format": 1 }, { "name": "plugins/modules/configuration_template_deploy_v2.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "86e6e7345b4cfd309247fd956e8ac1b914267dd72bd38389d7a8a14983995e0e", + "chksum_sha256": "cd81da364978b6b07c8b740866b2f0ec5158ec7c121405cdda89b9ccf9827304", "format": 1 }, { "name": "plugins/modules/applications_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "13ffffb6e7bfd438badf41dab65af8d3422f1bcbef8d826c7a9420b8e77ab63b", + "chksum_sha256": "95631698e329c64d12a016b29dbcf4503e15142a399d35c865f4a67af9ebb6e1", "format": 1 }, { "name": "plugins/modules/sda_virtual_network.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "aa2981517a9fab531d9f2a31c516be5c127e43deefd2076c3e93f8807647ad92", + "chksum_sha256": "0a9db2f68811fa69d9bc436fd4e2f811d72046610895ab77077c1b3cd40317ff", "format": 1 }, { "name": "plugins/modules/interface_network_device_detail_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "29dec8355faf383532a649f73821328951ccff1d10f779ba816130ed33baf308", + "chksum_sha256": "5180c047f70c067118628a41c0b39cb35a8809aa144d39d69e5fa26f93bde66b", "format": 1 }, { "name": "plugins/modules/security_advisories_ids_per_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5fb0cc73606fa28b9146277c1b89830a9b54abd125a6ae1c28d04e711679bf83", + "chksum_sha256": "ec65ad9dc89bf2383064373c81a8eb380176512b855df4af9a30e37abed9d3b2", "format": 1 }, { "name": "plugins/modules/platform_release_summary_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "58b717afbca97a58833054b8714e07b0aec0cf548146d3479664fb3ee6a985a7", + "chksum_sha256": "8d8908b473417711a0b340aa89c684182c453e0c992780c67d4054ea006404b2", "format": 1 }, { "name": "plugins/modules/network_device_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "982923a1bf449cd464aae865f0e9ec778c0fdf9c3f72020acf09ab39043cd81f", + "chksum_sha256": "2c5d2866eb86e0b1b66454231d5f4f97051b69503a9396c5f239e964a08771c0", "format": 1 }, { "name": "plugins/modules/event_series_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "9850fb6a1eae09f739e3c8f066e18c6dafc4b7d7690c79425a1367dbbe4f2ada", + "chksum_sha256": "b6a358d02719db2e816a63eceb647f47065f4bc850417ce3be6cbcd251b52199", "format": 1 }, { "name": "plugins/modules/app_policy_queuing_profile.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a945521dc0a36557324ba8f735b5319a2362f2803616a6431680aaaf9410229e", + "chksum_sha256": "0a2f9c2eec211c62f7e7e3805c7d79a1bf0487a7c5af795c084366806812ff2b", "format": 1 }, { "name": "plugins/modules/service_provider_profile_delete.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2b5a0c8eece9d627b97da82ab3b601fc310cf7263731c976120d11541c030876", + "chksum_sha256": "ad7c00fc5747b64f421bb56bf49d69e2a7c602bcde375da4903581fdd9f4f733", "format": 1 }, { "name": "plugins/modules/service_provider_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "511825ebbdcd1ad32fbdfdef704bc8018dec865c2c93b16f298cfa4c5c592fd8", + "chksum_sha256": "fcf85ee32ff93d2d080a05983bf9ad5c84e9208186b49cfd2e99fd960e7d6071", "format": 1 }, { "name": "plugins/modules/network_device_update_role.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "eb6c54d7ba3e18879bb08fdf2bc5777f2542bdc880b05b9aeb3512c65cec193b", + "chksum_sha256": "5527bd9efd7c373b2f2bef0c7d9769178dd03da2214d9ec0d8327c75605c9b5a", "format": 1 }, { "name": "plugins/modules/sda_port_assignment_for_user_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "943e70b6745a6ab45a025e0f46cbccc3d3d23dcfaad3f8fe1ee013d092f1a559", + "chksum_sha256": "3dae9e1a13f2ef7c64599173440a257c981aa1973e521b2a21ecb19777a4f420", "format": 1 }, { "name": "plugins/modules/transit_peer_network.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b7d244b17c6c387309ba41609218b233d808ff5f4bdc76ddcddd0d610058c2c7", + "chksum_sha256": "753a85064c256636c3d572a0d95745615caf59d3467d23640c0dfa67609e8508", "format": 1 }, { "name": "plugins/modules/device_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "05ba1ddfe43be06e27d2e5c1b50bc0eba78d9af58183b2f1133df1143640e371", + "chksum_sha256": "6edf275ba5c5101305b745ab1da31394f4921ddc7273390dd6d7d9ba68443f71", "format": 1 }, { "name": "plugins/modules/device_replacement_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5c58f1db9957c2bc925cebe668fdc10b4bfb2f12edf674910b886ea35f5f1dad", + "chksum_sha256": "ec372d22e552b584051564f4b2350201d6f100dd15d9d3b8ceec092d7f3662e3", "format": 1 }, { "name": "plugins/modules/service_provider_v2.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "83b487a8fb0060e51894e3969051013ca6fa68c85c69a5d2af459ad15ac0792a", + "chksum_sha256": "0e08a7b59aad648e9080fceae08654318c57de7b3103c49f832938dad61f1e4b", "format": 1 }, { "name": "plugins/modules/sensor_test_run.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d9ef6a8aecadeae78590a9e9a92d74a288d759617fa004f89a7b32e6cb192a0a", + "chksum_sha256": "fdc7503849a10f9f5250efe5aff1762230f36c307dbb2b9525269dff88741562", "format": 1 }, { "name": "plugins/modules/event_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e6c8fbfdf60b1cbf35e4ef163250b0ccd13f218ec7b4d35ef358334102ce0ca8", + "chksum_sha256": "d9e1da13a438a4aa0e9789bd0b8a8dd2a62d744a74219d52bdffcf54babe7a90", "format": 1 }, { "name": "plugins/modules/device_health_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "791677d81789ebbed706d0a781a8364f3c236a1a27879d76775e53ac6f11fe7e", + "chksum_sha256": "f9dd5499ad6dbdec5e399ccbde4b4a341d487e2c25abeef9db15c8a822764f38", "format": 1 }, { "name": "plugins/modules/netconf_credential.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3cc0b590cea4d7911d9f7a4c01c4a04dfcf56cfc52d12525d64cf3f8df8c6d04", + "chksum_sha256": "042123c962929ad1cd28b34d332c32c3762f34b6da174aa9016a5d5076026a1e", "format": 1 }, { "name": "plugins/modules/network_device_register_for_wsa_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "a51c888d705368497962a078aa815be28e390682a020bbd2169f442a839b1ab1", + "chksum_sha256": "90f6f71069aa7cc1ae69ce29872ac0de4abd18f00b3938451440a10e2f9aaf56", "format": 1 }, { "name": "plugins/modules/client_health_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "857c1660250039a5c1741d22b4ade73cfd657eca042dbcf94af746e928ddf26f", + "chksum_sha256": "f19acdcc18536cc0d1481d2f1e599470b2452f535e9a7875fcc561cbd24a3af8", "format": 1 }, { "name": "plugins/modules/provision_workflow_manager.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ea01d7479f375bd14749bd5b429060015d6749db77c8cdabce553102a87d0001", + "chksum_sha256": "b4022bae7d5a73a4f04189450ed124ec797c1d074188ae2448f781838cca65cf", "format": 1 }, { "name": "plugins/modules/interface_network_device_range_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "19b7c1e2995808459fafb6c690e3f8bc0a64d0bfae83f2e2ec6fa623ff730eed", + "chksum_sha256": "9c0d0e2edb7feb9baae0fea938aa582bb5e12fb5d43ae1e8b073fdfb2f8a3a55", "format": 1 }, { "name": "plugins/modules/inventory_intent.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "3e32ad491d38e58f18dc8f8f91fa6ba179a66486560b0af6b478b77ac7a0d17d", + "chksum_sha256": "ece57506e288379d5617d21514aa1511a81e33a5797c1965ed32edb945c46829", "format": 1 }, { "name": "plugins/modules/compliance_device_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "35443e54b6c214c49019c9fab77d82613e933953647a3374403a2cb12184e149", + "chksum_sha256": "dd1ff0a6119295b29da46673213a0a532d43b69fa99dd2350e379aa4211a710f", "format": 1 }, { "name": "plugins/modules/discovery_range_delete.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ba13da77c7f892c1c399c6c958d1dc6af70093781b233bc76e1b129cf8366fdd", + "chksum_sha256": "57dcb52ea8cb6564b792c1858e50f4c101fd7c200c8e93848963f6d07ed5ba57", "format": 1 }, { "name": "plugins/modules/pnp_workflow_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "41f823ef28a342294d766f9522bff57ffe9211a741a62f18dc77681880451b66", + "chksum_sha256": "b510f57488ce208d9b3d50a4228efe565ed55013b2e2fa4a439cdf217a51dd28", "format": 1 }, { "name": "plugins/modules/network_device.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f02d1b6a2bc7d29c324751ee16f25f3c03738e7b331eb928808e4198299e61e6", + "chksum_sha256": "5745ffb093995318488363a512a318b47e8f5fe848eb29735e01593d4ea4c4d9", "format": 1 }, { "name": "plugins/modules/network_device_export.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "39eb919e626e7499b8673e34a7f09cfef626a25b57b37b1dea12692375bc0c35", + "chksum_sha256": "9fdb9952b2c82440a6d7621254e07990602c70579bbd4c49a9a234e83233a933", "format": 1 }, { "name": "plugins/modules/templates_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "80961a246d11701c7960328d29cc92e521e2b7e043fd6afd174e37f6ef70fdfb", + "chksum_sha256": "99c2b3a5172cb9fe26133dca84865f6dba2fb2f663ecc97dd9530141931574e0", "format": 1 }, { "name": "plugins/modules/event_series_audit_logs_parent_records_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e52bb2cb28598a48a229fef52d69cc9bd3f4a384ce38a92c48c1081c2df88061", + "chksum_sha256": "cc6b6acb562cb233d3073e4d8d9a8fd5947c05feebe45d447270626c887f263d", "format": 1 }, { "name": "plugins/modules/network_device_with_snmp_v3_des_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4e3f6be580ff6aef59ca86668367bb517cff2e1e9523fc67df92e5098f17c136", + "chksum_sha256": "9680badfaa131c3e8402ed585e1f9f078b24fb0188c87565a3ee5f94c4134587", "format": 1 }, { "name": "plugins/modules/license_virtual_account_change.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f959b44edf5561390ce868113ac8798bd3fdb62b6a8f813a2af96dacfaef7758", + "chksum_sha256": "c50583679b1731041148b0ba9d5426b6d9f6d22de366ee1d81617be686bb8394", "format": 1 }, { "name": "plugins/modules/compliance_device_by_id_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "99092cfa9ef9757a242cfacfe72bbd4930a5b62cff286c0f3922ae29957a0554", + "chksum_sha256": "2b7d3287a9ebdec1a9e0a3247bb0d26645c810db6188be6a6e019816096fd099", "format": 1 }, { "name": "plugins/modules/pnp_virtual_account_add.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "e3b97f7bf0ed8a871c8abb93526c139f82a106537cabfa8690ebe05106555cd1", + "chksum_sha256": "f4310f4e30db9d98de59b39284f4399711f959d5f9f5a7ed91170b3e22e9abd1", "format": 1 }, { "name": "plugins/modules/template_intent.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "90ad608b3f5bc90983bc7bc913a7faac8179061d5f16d8375d43db5fa8e1129e", + "chksum_sha256": "7ad39ee74214a8463839de83532758e62d11b82196dc9da4ee79090e008fbfb1", "format": 1 }, { "name": "plugins/modules/tag.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "28abf9ac9cd0f7582a16458a2efe213ddefbc0c742ce0cebbf4700dbf53e366b", + "chksum_sha256": "599cb4070ae8d04cdb5c7aa40230cabd02434dd1781fe0cb30edd53f96c91aa7", "format": 1 }, { "name": "plugins/modules/reports_executions_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "49a10ab49f8b0a56e5e83749f6c828406d882fcf61f2cc74bda28ee879fe7bdc", + "chksum_sha256": "8d8d4e2cc1aa4e7eb5cfde98efa1d0c0fd815e0732e25c88052832fec71bad4e", "format": 1 }, { "name": "plugins/modules/sda_fabric_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "567d8c20183935c551e0112032274d9f40f1e0e7d1f12a7729f241e5b324fdc9", + "chksum_sha256": "21d8b6a152f6cf176f988135c026a332e0207dbf527c2d8ce8e4f91fb3a29ce6", "format": 1 }, { "name": "plugins/modules/device_credential_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "19434098bb531f5645cc9dd7ec3ef060fc62eaf8505a4a1afaccb4e4f7a4cd56", + "chksum_sha256": "32c77e4f8bbce95b669e7b633cb634c0ce90f8bc90aa5ba05d88378c1c72b7b4", "format": 1 }, { "name": "plugins/modules/file_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "4cb5ac356f530f121a40f993997abbc4cb011c4fc6336577789315426f79b4f2", + "chksum_sha256": "be00fb30acf461ef13d6f53e64d6566e3373854c4f4b814a068705795ed1466e", "format": 1 }, { "name": "plugins/modules/event_subscription_rest.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "c947933ec1bc1405766e8a4d8dfef9d21343fdfd4ac6600c38b17335a8c4d34d", + "chksum_sha256": "781ca61ab98e39bc744c37e1a49c67cb4145ef0d2ab0ea5d5b72f29053166a8a", "format": 1 }, { "name": "plugins/modules/security_advisories_summary_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bc882aebe138607d0b303827e205b6697f05bd986071c0d7d49548781b32271a", + "chksum_sha256": "d2427fda49247b452d0a814c785608c30798a6411ab8556a9af5c8fcff2d501d", "format": 1 }, { "name": "plugins/modules/network_device_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "572dadf002c013b3d9b528bbf1e24e94f29aadfb0eb33e0caf42712fd1f77260", + "chksum_sha256": "230805a1eb0dd3ee97a3310492d877cd6782682c785487f62b05d0c392fa3617", "format": 1 }, { "name": "plugins/modules/integration_settings_instances_itsm_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "09265bbe02e7bbcae7fe4d7202d9c0ab97d2e68e24581c238d6bfadd65e91e78", + "chksum_sha256": "d62bb9050400c5eb96b1086e303eafea81a553acd984f837a7f37fa807c078b2", "format": 1 }, { "name": "plugins/modules/pnp_smart_account_domains_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "894a1ce5ae2d4500837070af6d35bfbd0c7cb18ac709e9ff0f8726407bc37b0f", + "chksum_sha256": "d1d5cc0723495f018e760b2307f0a562cb82784ec0a94f9fcdc698570ea2cb48", "format": 1 }, { "name": "plugins/modules/security_advisories_devices_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "09e0461d3ce4c1a16932b8c32bd0bbd387cec9e69e31a256032c2558b7d2338b", + "chksum_sha256": "c46d4671ba23a245e1e394231f7be2aee9431c7b1075beaae8c61b87974bf3a3", "format": 1 }, { "name": "plugins/modules/reserve_ip_subpool_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "1c3ac587db4e5fed02cb076ffd58554834ad7077d8a0718d41985059b896469e", + "chksum_sha256": "6a196f4b903c9f46fe96bcb9f413e781b3ff54e6804e498b253f3a4e72059098", "format": 1 }, { "name": "plugins/modules/network_settings_intent.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "85003b655194a3dfdcd2fe1e7780475d8f0d75f602325be07fbc6fd8b5b71988", + "chksum_sha256": "3fb788c847df332d6938200b8e1085e06efb9a52a03eafd6f1bf57ad4cfcd9f7", "format": 1 }, { "name": "plugins/modules/itsm_integration_events_retry.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2bf7e87de8923919e3b20a4752769ba67b4c74769acf40221405ad386e66c3da", + "chksum_sha256": "b5fff2a26a1bff3739f193a1c8d97bbcfa6b858b0e6724c485decb12848ecade", "format": 1 }, { "name": "plugins/modules/user_enrichment_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "7638a42d626129b870405537665e64ee9f9d1215b087ffea389a58ce4b9e1aaa", + "chksum_sha256": "8e9e53d0be84ff2313ade25053b67ef7aff8e10b0494d3a588d2b0bcd3376745", "format": 1 }, { "name": "plugins/modules/site_assign_device.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "fc61bcf87db49d5ab5088e8378c3e7ff4a350c6c175cb63693d430f61fd4c7b5", + "chksum_sha256": "6ea9d0392351b4c14adf24902b22fb610b12eab49398a314a6dcc73fb30641c1", "format": 1 }, { "name": "plugins/modules/golden_tag_image_delete.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b227ca6d6948a108ff4eaf9335ccc49b19a602f95f784b7dc6cb33fe09edab66", + "chksum_sha256": "9cc5242bf78cac68ab06a508aa7046d6d20de4c3e1d0658f9893e21ddb6a39fc", "format": 1 }, { "name": "plugins/modules/network_device_linecard_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b408a876eefa5939ca6c7b0a05d5aab4fbeab243aa0dff400083bb0e8612f7a6", + "chksum_sha256": "ec2124d0f33ed574f0135698679be01794cab7c5610052899579266dc7994860", "format": 1 }, { "name": "plugins/modules/issues_enrichment_details_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "1a6d4e1e484ffdc78c6227b1f41ceefab0cefcf7ff214f2dfd59b33a1db3f022", + "chksum_sha256": "9ac8965247e64c864374eb781b66398c38deb4e24f366c232c4a04e52dc2e59f", "format": 1 }, { "name": "plugins/modules/golden_image_create.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "b4c425e6a3760f8a0d1ef1e09a71d3bc1d9bbb549593ed358ebae02e70f0062a", + "chksum_sha256": "b7a030e84fb8bfdae750f3b26e44a3ad5a69e6f977ce205ae2c3647065ad70b8", "format": 1 }, { "name": "plugins/modules/qos_device_interface_info_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "68de3c82502965a33cb10bcf2b3dc71d0e120e8214ac5905f84ac66acc267e06", + "chksum_sha256": "367f38405567a693e4948efb26b11bcf2c4cf8cc17141c848d96b32f0c39c4fb", "format": 1 }, { "name": "plugins/modules/compliance_device_status_count_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "71ec2207cd2f09326400af3e3336313fff273a6d338a88fe1fe009228ecc2741", + "chksum_sha256": "cc118928a2bf1982387666dbc9f518b089e12d01af303100583072a0da87b383", "format": 1 }, { "name": "plugins/modules/configuration_template_project_info.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "ceba30f1dc4cc1ea29ab78e89039fc46e4cb25097ff92d75f9fb46102adadb31", + "chksum_sha256": "0628463b729978f221dad948cdf77316e9564dd2f9cdaa7a299a2970658c312e", "format": 1 }, { "name": "plugins/modules/pnp_global_settings.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5917ba9cf862f97b5973d06d69cfd0585f3a8d9504038a14575da30394c84833", + "chksum_sha256": "42bee25376c6dfcb9043b0e59fc9b104bcb2cfa23a2e150a10dd900c08df0153", "format": 1 }, { "name": "plugins/modules/configuration_template.py", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5b5f8797ce134751a5ad59294ad30d1c859fbe7f0255352fad4a3bb45799c981", + "chksum_sha256": "f4ea58c333f46cfbbc93da9bdd06331d9497625009c9d82faf6d384516212adc", "format": 1 }, { @@ -5828,7 +5828,7 @@ "name": "meta/runtime.yml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "2e182a22d58fcfbca71fbef1992147e1cd87fc67648750e62b5955ec72521520", + "chksum_sha256": "720f48707e16c8707f33f2bc22bbd53207b492502669c2649547d652b5f99dcd", "format": 1 }, { @@ -5856,7 +5856,7 @@ "name": "playbooks/PnP_Workflow_Manager_Playbook.yml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "376cbea818770893c8c6eb980dcc8a64817ed71fc89808e1877cbbb0d262e810", + "chksum_sha256": "08b8fff76f4d14cb3667114120016e281ea732d831274e1d3b48df1203e6a840", "format": 1 }, { @@ -5891,7 +5891,7 @@ "name": "playbooks/device_provision_workflow.yml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "28bd738eea40bad4819ae44803c03830e448ae3b750d795572e3872b42bb43cd", + "chksum_sha256": "d7824efea5e33a458e49665dbe08e87acc2978da4925d834592808c495b9e3fc", "format": 1 }, { @@ -5940,7 +5940,7 @@ "name": "playbooks/PnP.yml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "0ace6a2cfb7cadc96e527dea4dad9616c35769151456271248cdea3c39a6c1df", + "chksum_sha256": "e580e727c566addb668411df8e6f0e8c694b1749f7f77078aad5366a133d18ba", "format": 1 }, { @@ -5968,7 +5968,7 @@ "name": "playbooks/device_details.template", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "92ccdcdfe15f46252c522238c97e5158d18676eccddd3a85f23a8f497b4e0c0d", + "chksum_sha256": "18175a2f86c3e2f5757bab3dcba655146e84383e24c39feb1b1f1404a25aee61", "format": 1 }, { @@ -6129,7 +6129,7 @@ "name": "playbooks/template_workflow_manager.yml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "1097e1586a9408998c3a1d513ad70492849e26d052b20816e27ebb60b8ee1d94", + "chksum_sha256": "dee57171b4a8bfd5f27f90921febf88baa6ee52f34bf9e88290da2b496ba87cb", "format": 1 }, { @@ -6283,14 +6283,14 @@ "name": "changelogs/changelog.yaml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "bcad14cdf9a6044c9347400ea1cbd6432ddd38c4b5b12e78a54bca57fa96355a", + "chksum_sha256": "0471f143c1a2248a79e6252e9ab2b902aa90ce8c49bade17d94c7840c109a871", "format": 1 }, { "name": "README.md", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "f1c14af9aa1e4bf92f028daab559d8912231284b04beeb34459404d0cc085ef1", + "chksum_sha256": "a22c72a870f94ee00f2b75ea7c907e3bc93d43c3479c8d56841b2bba927ce5db", "format": 1 }, { @@ -6315,17 +6315,24 @@ "format": 1 }, { + "name": ".github/workflows/sanity_tests_devel.yml", + "ftype": "file", + "chksum_type": "sha256", + "chksum_sha256": "6c41a530b4e23f25d25005770db0857d676bf605a83386b6d9dbc6d16ce3740a", + "format": 1 + }, + { "name": ".github/workflows/sanity_tests.yml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5f73c04a8f73f124035ead77d2dfa8418bea6af501ffc3ddaf20eb04abac3bd6", + "chksum_sha256": "54f5ab1ffdbf3ad7f8992fb1f46398304ddaccaeca0ff885bad53be768af855f", "format": 1 }, { "name": ".github/workflows/docs.yml", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "d8611ee91073e25e678934a5f53609f26282966c77c50c38527065bc467eb344", + "chksum_sha256": "f0a547c256a584df7a0a12f1f14604f37775b81f01cca623667a811c9d6ed6af", "format": 1 }, { diff --git a/ansible_collections/cisco/dnac/MANIFEST.json b/ansible_collections/cisco/dnac/MANIFEST.json index 4d4e0c65d..7c31dde5d 100644 --- a/ansible_collections/cisco/dnac/MANIFEST.json +++ b/ansible_collections/cisco/dnac/MANIFEST.json @@ -2,7 +2,7 @@ "collection_info": { "namespace": "cisco", "name": "dnac", - "version": "6.13.1", + "version": "6.13.3", "authors": [ "Rafael Campos <rcampos@altus.cr>", "William Astorga <wastorga@altus.cr>", @@ -31,7 +31,7 @@ "license": [], "license_file": "LICENSE", "dependencies": { - "ansible.utils": ">=2.0.0,<4.0" + "ansible.utils": ">=2.0.0,<5.0" }, "repository": "https://github.com/cisco-en-programmability/dnacenter-ansible", "documentation": "https://cisco-en-programmability.github.io/dnacenter-ansible/", @@ -42,7 +42,7 @@ "name": "FILES.json", "ftype": "file", "chksum_type": "sha256", - "chksum_sha256": "5e6e6d846a1d245059dfee01ac8ee7dbd3af1e69fda28f415a6d670fb8bdbd93", + "chksum_sha256": "d5808375079300aef903ebc6a1308b5535b15fc6d726ea535ee8ff83f05aa969", "format": 1 }, "format": 1 diff --git a/ansible_collections/cisco/dnac/README.md b/ansible_collections/cisco/dnac/README.md index 2492d75b9..4d2835f33 100644 --- a/ansible_collections/cisco/dnac/README.md +++ b/ansible_collections/cisco/dnac/README.md @@ -15,11 +15,11 @@ The following table shows the supported versions. | Cisco DNA Center version | Ansible "cisco.dnac" version | Python "dnacentersdk" version | |--------------------------|------------------------------|-------------------------------| -| 2.1.1 | 3.0.0 | 2.2.5 | -| 2.2.2.3 | 3.3.1 | 2.3.3 | -| 2.2.3.3 | 6.4.0 | 2.4.11 | -| 2.3.3.0 | 6.6.4 | 2.5.5 | -| 2.3.5.3 | 6.13.0 | 2.6.0 | +| 2.1.1 | 3.0.0 | 2.2.5 | +| 2.2.2.3 | 3.3.1 | 2.3.3 | +| 2.2.3.3 | 6.4.0 | 2.4.11 | +| 2.3.3.0 | 6.6.4 | 2.5.5 | +| 2.3.5.3 | ^6.13.0 | ^2.6.0 | If your Ansible collection is older please consider updating it first. @@ -44,9 +44,9 @@ ansible-galaxy collection install cisco.dnac:3.3.1 ``` ## Requirements -- Ansible >= 2.9 -- [Python DNA Center SDK](https://github.com/cisco-en-programmability/dnacentersdk) v2.4.7 or newer -- Python >= 3.6, as the DNA Center SDK doesn't support Python version 2.x +- Ansible >= 2.15 +- [Python DNA Center SDK](https://github.com/cisco-en-programmability/dnacentersdk) v2.6.0 or newer +- Python >= 3.9, as the DNA Center SDK doesn't support Python version 2.x ## Install Ansible must be installed ([Install guide](https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html)) diff --git a/ansible_collections/cisco/dnac/changelogs/changelog.yaml b/ansible_collections/cisco/dnac/changelogs/changelog.yaml index a3408e7e5..81e4f4348 100644 --- a/ansible_collections/cisco/dnac/changelogs/changelog.yaml +++ b/ansible_collections/cisco/dnac/changelogs/changelog.yaml @@ -849,3 +849,20 @@ releases: - Added attributes 'dnac_api_task_timeout' and 'dnac_task_poll_interval' in intent and workflow_manager modules. - inventory_workflow_manager - Added attributes 'add_user_defined_field', 'update_interface_details', 'export_device_list' and 'admin_status' - inventory_workflow_manager - Removed attributes 'provision_wireless_device', 'reprovision_wired_device' + 6.13.2: + release_date: "2024-04-03" + changes: + release_summary: Enhancements in discovery, site, swim and inventory workflow manager modules. + minor_changes: + - Added the op_modifies=True when calling SDK APIs in the workflow manager modules. + - Added a method to validate IP addresses. + - Fixed a minor issue in the site workflow manager module. + - Updating galaxy.yml ansible.utils dependencies. + 6.13.3: + release_date: "2024-04-08" + changes: + release_summary: Enhancements in discovery, template, swim and inventory workflow manager modules. + minor_changes: + - Adding support to importing a template using JSON file + - Changes in discovery workflow manager modules relating to different states of the discovery job + - Changes in inventory and swim workflow manager modules. diff --git a/ansible_collections/cisco/dnac/meta/runtime.yml b/ansible_collections/cisco/dnac/meta/runtime.yml index bcb6dcedc..9912f4a7d 100644 --- a/ansible_collections/cisco/dnac/meta/runtime.yml +++ b/ansible_collections/cisco/dnac/meta/runtime.yml @@ -1,2 +1,2 @@ --- -requires_ansible: '>=2.14.0'
\ No newline at end of file +requires_ansible: '>=2.15.0'
\ No newline at end of file diff --git a/ansible_collections/cisco/dnac/playbooks/PnP.yml b/ansible_collections/cisco/dnac/playbooks/PnP.yml index 63bad68e0..31cb11f9b 100644 --- a/ansible_collections/cisco/dnac/playbooks/PnP.yml +++ b/ansible_collections/cisco/dnac/playbooks/PnP.yml @@ -66,7 +66,7 @@ template_name: "Ansible_PNP_Switch" image_name: cat9k_iosxe_npe.17.03.07.SPA.bin project_name: Onboarding Configuration - template_details: + template_params: hostname: SJC-Switch-1 interface: TwoGigabitEthernet1/0/2 device_info: @@ -108,4 +108,4 @@ - device_info: - serial_number: QD2425L8M7 #Will get deleted - serial_number: FTC2320E0HA #Doesn't exist in the inventory - - serial_number: FKC2310E0HB #Doesn't exist in the inventory
\ No newline at end of file + - serial_number: FKC2310E0HB #Doesn't exist in the inventory diff --git a/ansible_collections/cisco/dnac/playbooks/PnP_Workflow_Manager_Playbook.yml b/ansible_collections/cisco/dnac/playbooks/PnP_Workflow_Manager_Playbook.yml index 846ebf3a7..0f1ff25c1 100644 --- a/ansible_collections/cisco/dnac/playbooks/PnP_Workflow_Manager_Playbook.yml +++ b/ansible_collections/cisco/dnac/playbooks/PnP_Workflow_Manager_Playbook.yml @@ -66,7 +66,7 @@ template_name: "Ansible_PNP_Switch" image_name: cat9k_iosxe_npe.17.03.07.SPA.bin project_name: Onboarding Configuration - template_details: + template_params: hostname: SJC-Switch-1 interface: TwoGigabitEthernet1/0/2 device_info: diff --git a/ansible_collections/cisco/dnac/playbooks/device_details.template b/ansible_collections/cisco/dnac/playbooks/device_details.template index 38c95c627..bdf58ab61 100644 --- a/ansible_collections/cisco/dnac/playbooks/device_details.template +++ b/ansible_collections/cisco/dnac/playbooks/device_details.template @@ -19,25 +19,7 @@ template_details: import_template: do_version: false project_name: 'Onboarding Configuration' - payload: - - name: 'Platinum-Onboarding-Template-J21' - device_types: - - product_family: 'Switches and Hubs' - productSeries: 'Cisco Catalyst 9300 Series Switches' - software_type: 'IOS' - language: 'JINJA' - - name: 'Platinum-Onboarding-Template-J22' - device_types: - - product_family: 'Switches and Hubs' - productSeries: 'Cisco Catalyst 9300 Series Switches' - software_type: 'IOS' - language: 'JINJA' - - name: 'Platinum-Onboarding-Template-J23' - device_types: - - product_family: 'Switches and Hubs' - productSeries: 'Cisco Catalyst 9300 Series Switches' - software_type: 'IOS' - language: 'JINJA' + template_file: 'JSON template file' device_details: - site_name: 'Global/Chennai/Trill' diff --git a/ansible_collections/cisco/dnac/playbooks/device_provision_workflow.yml b/ansible_collections/cisco/dnac/playbooks/device_provision_workflow.yml index 362556a09..acb3249a5 100644 --- a/ansible_collections/cisco/dnac/playbooks/device_provision_workflow.yml +++ b/ansible_collections/cisco/dnac/playbooks/device_provision_workflow.yml @@ -16,23 +16,23 @@ dnac_port: "{{ dnac_port }}" dnac_version: "{{ dnac_version }}" dnac_debug: "{{ dnac_debug }}" - + tasks: - name: Provision a wired device to a site - cisco.dnac.workflow_manager: + cisco.dnac.provision_workflow_manager: <<: *dnac_login dnac_log: True state: merged config_verify: True config: - site_name_hierarchy: Global/USA/San Francisco/BGL_18 - management_ip_address: 204.1.1.1 + management_ip_address: 204.1.2.2 - name: Unprovision a wired device from a site - cisco.dnac.workflow_manager: + cisco.dnac.provision_workflow_manager: <<: *dnac_login dnac_log: True state: deleted config: - - management_ip_address: 204.1.1.1 + - management_ip_address: 204.1.2.2 diff --git a/ansible_collections/cisco/dnac/playbooks/template_workflow_manager.yml b/ansible_collections/cisco/dnac/playbooks/template_workflow_manager.yml index 25b0ec797..3cfed07e7 100644 --- a/ansible_collections/cisco/dnac/playbooks/template_workflow_manager.yml +++ b/ansible_collections/cisco/dnac/playbooks/template_workflow_manager.yml @@ -13,7 +13,11 @@ dnac_password: "{{ dnac_password }}" dnac_verify: "{{ dnac_verify }}" dnac_debug: "{{ dnac_debug }}" - dnac_log: true + dnac_log: True + dnac_log_level: DEBUG + dnac_log_append: True + dnac_log_file_path: "{{ dnac_log_file_path }}" + validate_response_schema: False state: "merged" config_verify: true #ignore_errors: true #Enable this to continue execution even the task fails @@ -28,6 +32,16 @@ software_variant: "{{ item.variant }}" device_types: - product_family: "{{ item.family }}" + export: + project: + - Ansible_project + - Sample Velocity Templates + template: + - project_name: Onboarding Configuration + template_name: AP_Onboarding + import: + project: "{{ item.import_project }}" + template: "{{ item.import_template }}" register: template_result with_items: '{{ template_details }}' tags: diff --git a/ansible_collections/cisco/dnac/plugins/module_utils/dnac.py b/ansible_collections/cisco/dnac/plugins/module_utils/dnac.py index a12e7eaf4..1d4b804cd 100644 --- a/ansible_collections/cisco/dnac/plugins/module_utils/dnac.py +++ b/ansible_collections/cisco/dnac/plugins/module_utils/dnac.py @@ -27,6 +27,7 @@ import json # import datetime import inspect import re +import socket class DnacBase(): @@ -485,6 +486,66 @@ class DnacBase(): return new_config + def is_valid_ipv4(self, ip_address): + """ + Validates an IPv4 address. + + Parameters: + ip_address - String denoting the IPv4 address passed. + + Returns: + bool - Returns true if the passed IP address value is correct or it returns + false if it is incorrect + """ + + try: + socket.inet_aton(ip_address) + octets = ip_address.split('.') + if len(octets) != 4: + return False + for octet in octets: + if not 0 <= int(octet) <= 255: + return False + return True + except socket.error: + return False + + def is_path_exists(self, file_path): + """ + Check if the file path 'file_path' exists or not. + + Parameters: + file_path (string) - Path of the provided file. + + Returns: + True/False (bool) - True if the file path exists, else False. + """ + + if not os.path.exists(file_path): + return False + + return True + + def is_json(self, file_path): + """ + Check if the file in the file path is JSON or not. + + Parameters: + file_path (string) - Path of the provided file. + + Returns: + True/False (bool) - True if the file is in JSON format, else False. + """ + + try: + with open(file_path, 'r') as file: + json.load(file) + return True + + except (ValueError, FileNotFoundError): + self.log("The provided file '{0}' is not in JSON format".format(file_path), "CRITICAL") + return False + def is_list_complex(x): return isinstance(x[0], dict) or isinstance(x[0], list) diff --git a/ansible_collections/cisco/dnac/plugins/modules/accesspoint_configuration_details_by_task_id_info.py b/ansible_collections/cisco/dnac/plugins/modules/accesspoint_configuration_details_by_task_id_info.py index 63bf5df7e..642034e5c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/accesspoint_configuration_details_by_task_id_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/accesspoint_configuration_details_by_task_id_info.py @@ -24,8 +24,8 @@ options: - Task_id path parameter. Task id information of ap config. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless GetAccessPointConfigurationTaskResult description: Complete reference of the GetAccessPointConfigurationTaskResult API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/app_policy_default_info.py b/ansible_collections/cisco/dnac/plugins/modules/app_policy_default_info.py index 3ad0878fb..921f7a095 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/app_policy_default_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/app_policy_default_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy GetApplicationPolicyDefault description: Complete reference of the GetApplicationPolicyDefault API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/app_policy_info.py b/ansible_collections/cisco/dnac/plugins/modules/app_policy_info.py index d70d8fd44..3479d1ede 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/app_policy_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/app_policy_info.py @@ -24,8 +24,8 @@ options: - PolicyScope query parameter. Policy scope name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy GetApplicationPolicy description: Complete reference of the GetApplicationPolicy API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/app_policy_intent_create.py b/ansible_collections/cisco/dnac/plugins/modules/app_policy_intent_create.py index 6c1b46832..fd487ca0c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/app_policy_intent_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/app_policy_intent_create.py @@ -226,8 +226,8 @@ options: type: dict type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy ApplicationPolicyIntent description: Complete reference of the ApplicationPolicyIntent API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile.py b/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile.py index 769e87fc1..9260ffbf5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile.py +++ b/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile.py @@ -89,8 +89,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy CreateApplicationPolicyQueuingProfile description: Complete reference of the CreateApplicationPolicyQueuingProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile_count_info.py index 5f814ac1d..2a3b2c4df 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile_count_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy GetApplicationPolicyQueuingProfileCount description: Complete reference of the GetApplicationPolicyQueuingProfileCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile_info.py b/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile_info.py index 860545f2c..bb89873a6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/app_policy_queuing_profile_info.py @@ -24,8 +24,8 @@ options: - Name query parameter. Queuing profile name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy GetApplicationPolicyQueuingProfile description: Complete reference of the GetApplicationPolicyQueuingProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/application_sets.py b/ansible_collections/cisco/dnac/plugins/modules/application_sets.py index 1210f90d6..b4c5dd14c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/application_sets.py +++ b/ansible_collections/cisco/dnac/plugins/modules/application_sets.py @@ -29,8 +29,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy CreateApplicationSet description: Complete reference of the CreateApplicationSet API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/application_sets_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/application_sets_count_info.py index b71923719..bd6336fb7 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/application_sets_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/application_sets_count_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy GetApplicationSetsCount description: Complete reference of the GetApplicationSetsCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/application_sets_info.py b/ansible_collections/cisco/dnac/plugins/modules/application_sets_info.py index 844341de0..168674c87 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/application_sets_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/application_sets_info.py @@ -32,8 +32,8 @@ options: - Name query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy GetApplicationSets description: Complete reference of the GetApplicationSets API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/applications.py b/ansible_collections/cisco/dnac/plugins/modules/applications.py index 22c309bd4..43c18a12b 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/applications.py +++ b/ansible_collections/cisco/dnac/plugins/modules/applications.py @@ -133,8 +133,8 @@ options: type: list type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy CreateApplication description: Complete reference of the CreateApplication API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/applications_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/applications_count_info.py index 1c725cb14..cf4eb7d8d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/applications_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/applications_count_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy GetApplicationsCount description: Complete reference of the GetApplicationsCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/applications_health_info.py b/ansible_collections/cisco/dnac/plugins/modules/applications_health_info.py index 4bc998401..883fd5398 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/applications_health_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/applications_health_info.py @@ -64,8 +64,8 @@ options: - ApplicationName query parameter. The name of the application to get information on. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Applications Applications description: Complete reference of the Applications API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/applications_info.py b/ansible_collections/cisco/dnac/plugins/modules/applications_info.py index 431d62e37..6570ca75d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/applications_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/applications_info.py @@ -32,8 +32,8 @@ options: - Name query parameter. Application's name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy GetApplications description: Complete reference of the GetApplications API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/assign_device_to_site.py b/ansible_collections/cisco/dnac/plugins/modules/assign_device_to_site.py index fbd3cec3d..c1da97fe9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/assign_device_to_site.py +++ b/ansible_collections/cisco/dnac/plugins/modules/assign_device_to_site.py @@ -31,8 +31,8 @@ options: description: SiteId path parameter. Site id to which site the device to assign. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for AssignDevicesToSite description: Complete reference of the AssignDevicesToSite API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/associate_site_to_network_profile.py b/ansible_collections/cisco/dnac/plugins/modules/associate_site_to_network_profile.py index 7a2aab8e5..b01851556 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/associate_site_to_network_profile.py +++ b/ansible_collections/cisco/dnac/plugins/modules/associate_site_to_network_profile.py @@ -23,8 +23,8 @@ options: description: SiteId path parameter. Site Id to be associated. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Site Design Associate description: Complete reference of the Associate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/authentication_import_certificate.py b/ansible_collections/cisco/dnac/plugins/modules/authentication_import_certificate.py index 7cfca0c47..15cb6d2b6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/authentication_import_certificate.py +++ b/ansible_collections/cisco/dnac/plugins/modules/authentication_import_certificate.py @@ -30,8 +30,8 @@ options: description: PkPassword query parameter. Private Key Passsword. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Authentication Management ImportCertificate description: Complete reference of the ImportCertificate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/authentication_import_certificate_p12.py b/ansible_collections/cisco/dnac/plugins/modules/authentication_import_certificate_p12.py index ab19906f7..23d98d277 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/authentication_import_certificate_p12.py +++ b/ansible_collections/cisco/dnac/plugins/modules/authentication_import_certificate_p12.py @@ -30,8 +30,8 @@ options: description: PkPassword query parameter. Private Key Passsword. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Authentication Management ImportCertificateP12 description: Complete reference of the ImportCertificateP12 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/authentication_policy_servers_info.py b/ansible_collections/cisco/dnac/plugins/modules/authentication_policy_servers_info.py index cb5124de7..d0366ecc2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/authentication_policy_servers_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/authentication_policy_servers_info.py @@ -32,8 +32,8 @@ options: - Role query parameter. Authentication and Policy Server Role (Example primary, secondary). type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for System Settings GetAuthenticationAndPolicyServers description: Complete reference of the GetAuthenticationAndPolicyServers API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/buildings_planned_access_points_info.py b/ansible_collections/cisco/dnac/plugins/modules/buildings_planned_access_points_info.py index 07dda3ca9..20aaae21a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/buildings_planned_access_points_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/buildings_planned_access_points_info.py @@ -36,8 +36,8 @@ options: - Radios query parameter. Inlcude planned radio details. type: bool requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetPlannedAccessPointsForBuilding description: Complete reference of the GetPlannedAccessPointsForBuilding API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/business_sda_hostonboarding_ssid_ippool.py b/ansible_collections/cisco/dnac/plugins/modules/business_sda_hostonboarding_ssid_ippool.py index daa0bbc00..53a47bdc9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/business_sda_hostonboarding_ssid_ippool.py +++ b/ansible_collections/cisco/dnac/plugins/modules/business_sda_hostonboarding_ssid_ippool.py @@ -34,8 +34,8 @@ options: description: VLAN Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Fabric Wireless AddSSIDToIPPoolMapping description: Complete reference of the AddSSIDToIPPoolMapping API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/business_sda_hostonboarding_ssid_ippool_info.py b/ansible_collections/cisco/dnac/plugins/modules/business_sda_hostonboarding_ssid_ippool_info.py index 6ecfdd80f..7de5bd47f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/business_sda_hostonboarding_ssid_ippool_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/business_sda_hostonboarding_ssid_ippool_info.py @@ -28,8 +28,8 @@ options: - SiteNameHierarchy query parameter. Site Name Heirarchy. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Fabric Wireless GetSSIDToIPPoolMapping description: Complete reference of the GetSSIDToIPPoolMapping API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/business_sda_virtual_network_summary_info.py b/ansible_collections/cisco/dnac/plugins/modules/business_sda_virtual_network_summary_info.py index 941822ad5..beb749da6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/business_sda_virtual_network_summary_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/business_sda_virtual_network_summary_info.py @@ -24,8 +24,8 @@ options: - SiteNameHierarchy query parameter. Complete fabric siteNameHierarchy Path. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for GetVirtualNetworkSummary description: Complete reference of the GetVirtualNetworkSummary API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/business_sda_wireless_controller_create.py b/ansible_collections/cisco/dnac/plugins/modules/business_sda_wireless_controller_create.py index 1d9993a6c..9b1619f90 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/business_sda_wireless_controller_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/business_sda_wireless_controller_create.py @@ -23,8 +23,8 @@ options: description: Site Name Hierarchy. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Fabric Wireless AddWLCToFabricDomain description: Complete reference of the AddWLCToFabricDomain API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/business_sda_wireless_controller_delete.py b/ansible_collections/cisco/dnac/plugins/modules/business_sda_wireless_controller_delete.py index 4ca615500..3231a6e23 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/business_sda_wireless_controller_delete.py +++ b/ansible_collections/cisco/dnac/plugins/modules/business_sda_wireless_controller_delete.py @@ -23,8 +23,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Fabric Wireless RemoveWLCFromFabricDomain description: Complete reference of the RemoveWLCFromFabricDomain API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/cli_credential.py b/ansible_collections/cisco/dnac/plugins/modules/cli_credential.py index d7b542962..9a7c0e489 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/cli_credential.py +++ b/ansible_collections/cisco/dnac/plugins/modules/cli_credential.py @@ -45,8 +45,8 @@ options: description: Cli Credential's username. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery CreateCLICredentials description: Complete reference of the CreateCLICredentials API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/client_detail_info.py b/ansible_collections/cisco/dnac/plugins/modules/client_detail_info.py index a823da7b5..5cc6ca6d9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/client_detail_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/client_detail_info.py @@ -28,8 +28,8 @@ options: - MacAddress query parameter. MAC Address of the client. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Clients GetClientDetail description: Complete reference of the GetClientDetail API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/client_enrichment_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/client_enrichment_details_info.py index da1fd47d2..54be2389a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/client_enrichment_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/client_enrichment_details_info.py @@ -22,8 +22,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Clients GetClientEnrichmentDetails description: Complete reference of the GetClientEnrichmentDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/client_health_info.py b/ansible_collections/cisco/dnac/plugins/modules/client_health_info.py index 2def53c98..f036bb5bd 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/client_health_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/client_health_info.py @@ -24,8 +24,8 @@ options: - Timestamp query parameter. Epoch time(in milliseconds) when the Client health data is required. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Clients GetOverallClientHealth description: Complete reference of the GetOverallClientHealth API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/client_proximity_info.py b/ansible_collections/cisco/dnac/plugins/modules/client_proximity_info.py index d65c51e09..7d30d7542 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/client_proximity_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/client_proximity_info.py @@ -40,8 +40,8 @@ options: with a minimum 5 minutes. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Clients ClientProximity description: Complete reference of the ClientProximity API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/command_runner_run_command.py b/ansible_collections/cisco/dnac/plugins/modules/command_runner_run_command.py index 34222b28f..5b12002ed 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/command_runner_run_command.py +++ b/ansible_collections/cisco/dnac/plugins/modules/command_runner_run_command.py @@ -34,8 +34,8 @@ options: description: Command Runner Run Command's timeout. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Command Runner RunReadOnlyCommandsOnDevicesToGetTheirRealTimeConfiguration description: Complete reference of the RunReadOnlyCommandsOnDevicesToGetTheirRealTimeConfiguration API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/compliance_check_run.py b/ansible_collections/cisco/dnac/plugins/modules/compliance_check_run.py index 6d9a5c6bc..c244f41f8 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/compliance_check_run.py +++ b/ansible_collections/cisco/dnac/plugins/modules/compliance_check_run.py @@ -28,8 +28,8 @@ options: description: TriggerFull flag. type: bool requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Compliance RunCompliance description: Complete reference of the RunCompliance API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/compliance_device_by_id_info.py b/ansible_collections/cisco/dnac/plugins/modules/compliance_device_by_id_info.py index 92e2f73bb..99d967c02 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/compliance_device_by_id_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/compliance_device_by_id_info.py @@ -46,8 +46,8 @@ options: - Value query parameter. Extended attribute value. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Compliance ComplianceDetailsOfDevice description: Complete reference of the ComplianceDetailsOfDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/compliance_device_details_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/compliance_device_details_count_info.py index 2bc29a305..a51939ed4 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/compliance_device_details_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/compliance_device_details_count_info.py @@ -32,8 +32,8 @@ options: 'IN_PROGRESS', 'NOT_AVAILABLE', 'NOT_APPLICABLE', 'ERROR'. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Compliance GetComplianceDetailCount description: Complete reference of the GetComplianceDetailCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/compliance_device_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/compliance_device_details_info.py index 9eb00777b..bc06458f2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/compliance_device_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/compliance_device_details_info.py @@ -44,8 +44,8 @@ options: - Limit query parameter. Number of records to be retrieved. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Compliance GetComplianceDetail description: Complete reference of the GetComplianceDetail API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/compliance_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/compliance_device_info.py index d256f41d8..38eaafb12 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/compliance_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/compliance_device_info.py @@ -40,8 +40,8 @@ options: - Limit query parameter. Number of records to be retrieved. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Compliance DeviceComplianceStatus description: Complete reference of the DeviceComplianceStatus API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/compliance_device_status_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/compliance_device_status_count_info.py index ef33aae08..6c7897f94 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/compliance_device_status_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/compliance_device_status_count_info.py @@ -26,8 +26,8 @@ options: 'IN_PROGRESS', 'NOT_AVAILABLE', 'NOT_APPLICABLE', 'ERROR'. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Compliance GetComplianceStatusCount description: Complete reference of the GetComplianceStatusCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template.py index 35dc21ac5..05e7acf35 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template.py @@ -512,8 +512,8 @@ options: description: Current version of template. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates DeletesTheTemplate description: Complete reference of the DeletesTheTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_clone.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_clone.py index be0a5c1cb..c21257ba4 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_clone.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_clone.py @@ -28,8 +28,8 @@ options: description: TemplateId path parameter. UUID of the template to clone it. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates CreatesACloneOfTheGivenTemplate description: Complete reference of the CreatesACloneOfTheGivenTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_create.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_create.py index 4bb6a9a7b..f5beee649 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_create.py @@ -508,8 +508,8 @@ options: description: Current version of template. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates CreateTemplate description: Complete reference of the CreateTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy.py index 537fa850c..a1b1b5265 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy.py @@ -55,8 +55,8 @@ options: description: UUID of template to be provisioned. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates DeployTemplate description: Complete reference of the DeployTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy_status_info.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy_status_info.py index 21fd83a51..46c7439eb 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy_status_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy_status_info.py @@ -24,8 +24,8 @@ options: - DeploymentId path parameter. UUID of deployment to retrieve template deployment status. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates StatusOfTemplateDeployment description: Complete reference of the StatusOfTemplateDeployment API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy_v2.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy_v2.py index 399441706..af7f1094d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy_v2.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_deploy_v2.py @@ -55,8 +55,8 @@ options: description: UUID of template to be provisioned. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates DeployTemplateV2 description: Complete reference of the DeployTemplateV2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_export_project.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_export_project.py index 377f4fbeb..f41475005 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_export_project.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_export_project.py @@ -21,8 +21,8 @@ options: elements: dict type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates ExportsTheProjectsForAGivenCriteria description: Complete reference of the ExportsTheProjectsForAGivenCriteria API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_export_template.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_export_template.py index df4a58323..d460cef40 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_export_template.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_export_template.py @@ -21,8 +21,8 @@ options: elements: dict type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates ExportsTheTemplatesForAGivenCriteria description: Complete reference of the ExportsTheTemplatesForAGivenCriteria API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_import_project.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_import_project.py index 284665863..37b2096e4 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_import_project.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_import_project.py @@ -23,8 +23,8 @@ options: fails with 'Template already exists' error. type: bool requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates ImportsTheProjectsProvided description: Complete reference of the ImportsTheProjectsProvided API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_import_template.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_import_template.py index fc612c50f..7f9cf31f6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_import_template.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_import_template.py @@ -523,8 +523,8 @@ options: project. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates ImportsTheTemplatesProvided description: Complete reference of the ImportsTheTemplatesProvided API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_info.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_info.py index 993d2e0b5..ad9e264cf 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_info.py @@ -76,8 +76,8 @@ options: - LatestVersion query parameter. LatestVersion flag to get the latest versioned template. type: bool requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates GetsDetailsOfAGivenTemplate description: Complete reference of the GetsDetailsOfAGivenTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_project.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_project.py index 518ac61f9..7678e283c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_project.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_project.py @@ -546,8 +546,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates CreateProject description: Complete reference of the CreateProject API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_project_info.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_project_info.py index d5d60407f..f200203db 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_project_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_project_info.py @@ -34,8 +34,8 @@ options: - ProjectId path parameter. ProjectId(UUID) of project to get project details. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates GetsAListOfProjects description: Complete reference of the GetsAListOfProjects API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_version_create.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_version_create.py index b3210a7c4..d0317ea84 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_version_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_version_create.py @@ -23,8 +23,8 @@ options: description: UUID of template. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates VersionTemplate description: Complete reference of the VersionTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_version_info.py b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_version_info.py index 0f6956651..0dfdb8a93 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/configuration_template_version_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/configuration_template_version_info.py @@ -24,8 +24,8 @@ options: - TemplateId path parameter. TemplateId(UUID) to get list of versioned templates. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates GetsAllTheVersionsOfAGivenTemplate description: Complete reference of the GetsAllTheVersionsOfAGivenTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/credential_to_site_by_siteid_create_v2.py b/ansible_collections/cisco/dnac/plugins/modules/credential_to_site_by_siteid_create_v2.py index 44f2a99db..1ee9e33a9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/credential_to_site_by_siteid_create_v2.py +++ b/ansible_collections/cisco/dnac/plugins/modules/credential_to_site_by_siteid_create_v2.py @@ -38,8 +38,8 @@ options: description: SNMPv3 Credential Id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings AssignDeviceCredentialToSiteV2 description: Complete reference of the AssignDeviceCredentialToSiteV2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_configurations_export.py b/ansible_collections/cisco/dnac/plugins/modules/device_configurations_export.py index 8f761afc2..4d7ba14db 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_configurations_export.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_configurations_export.py @@ -24,8 +24,8 @@ options: description: Password. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Archive ExportDeviceConfigurations description: Complete reference of the ExportDeviceConfigurations API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_credential_create.py b/ansible_collections/cisco/dnac/plugins/modules/device_credential_create.py index d5732808b..b26ec83a0 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_credential_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_credential_create.py @@ -120,8 +120,8 @@ options: type: list type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings CreateDeviceCredentials description: Complete reference of the CreateDeviceCredentials API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_credential_delete.py b/ansible_collections/cisco/dnac/plugins/modules/device_credential_delete.py index 42cd7bf9a..73d144997 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_credential_delete.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_credential_delete.py @@ -20,8 +20,8 @@ options: description: Id path parameter. Global credential id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings DeleteDeviceCredential description: Complete reference of the DeleteDeviceCredential API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_credential_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_credential_info.py index 184d82056..27175a669 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_credential_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_credential_info.py @@ -24,8 +24,8 @@ options: - SiteId query parameter. Site id to retrieve the credential details associated with the site. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings GetDeviceCredentialDetails description: Complete reference of the GetDeviceCredentialDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_credential_intent.py b/ansible_collections/cisco/dnac/plugins/modules/device_credential_intent.py index 8e2f41384..3b887aa8d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_credential_intent.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_credential_intent.py @@ -298,8 +298,8 @@ options: description: snmp_v3 Credential Id. Use Description or Id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery CreateGlobalCredentialsV2 description: Complete reference of the CreateGlobalCredentialsV2 API. @@ -881,6 +881,7 @@ class DnacCredential(DnacBase): response = self.dnac._exec( family="sites", function='get_site', + op_modifies=True, params={"name": site_name}, ) self.log("Received API response from 'get_site': {0}".format(response), "DEBUG") @@ -891,9 +892,9 @@ class DnacCredential(DnacBase): _id = response.get("response")[0].get("id") self.log("Site ID for the site name {0}: {1}".format(site_name, _id), "INFO") - except Exception as exec: + except Exception as e: self.log("Exception occurred while getting site_id from the site_name: {0}" - .format(exec), "CRITICAL") + .format(e), "CRITICAL") return None return _id @@ -917,9 +918,9 @@ class DnacCredential(DnacBase): global_credentials = global_credentials.get("response") self.log("All global device credentials details: {0}" .format(global_credentials), "DEBUG") - except Exception as exec: + except Exception as e: self.log("Exception occurred while getting global device credentials: {0}" - .format(exec), "CRITICAL") + .format(e), "CRITICAL") return None return global_credentials @@ -2209,6 +2210,7 @@ class DnacCredential(DnacBase): response = self.dnac._exec( family="discovery", function='create_global_credentials_v2', + op_modifies=True, params=credential_params, ) self.log("Received API response from 'create_global_credentials_v2': {0}" @@ -2273,6 +2275,7 @@ class DnacCredential(DnacBase): response = self.dnac._exec( family="discovery", function='update_global_credentials_v2', + op_modifies=True, params=credential_params, ) self.log("Received API response for 'update_global_credentials_v2': {0}" @@ -2328,6 +2331,7 @@ class DnacCredential(DnacBase): response = self.dnac._exec( family="network_settings", function='assign_device_credential_to_site_v2', + op_modifies=True, params=credential_params, ) self.log("Received API response for 'assign_device_credential_to_site_v2': {0}" @@ -2414,6 +2418,7 @@ class DnacCredential(DnacBase): response = self.dnac._exec( family="discovery", function="delete_global_credential_v2", + op_modifies=True, params={"id": _id}, ) self.log("Received API response for 'delete_global_credential_v2': {0}" diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_credential_update.py b/ansible_collections/cisco/dnac/plugins/modules/device_credential_update.py index f17c18fbd..7c5cafd5b 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_credential_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_credential_update.py @@ -132,8 +132,8 @@ options: type: dict type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings UpdateDeviceCredentials description: Complete reference of the UpdateDeviceCredentials API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_credential_workflow_manager.py b/ansible_collections/cisco/dnac/plugins/modules/device_credential_workflow_manager.py index 3db97ce05..a6d188de4 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_credential_workflow_manager.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_credential_workflow_manager.py @@ -298,8 +298,8 @@ options: description: snmp_v3 Credential Id. Use Description or Id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco Catalyst Center documentation for Discovery CreateGlobalCredentialsV2 description: Complete reference of the CreateGlobalCredentialsV2 API. @@ -880,6 +880,7 @@ class DeviceCredential(DnacBase): response = self.dnac._exec( family="sites", function='get_site', + op_modifies=True, params={"name": site_name}, ) self.log("Received API response from 'get_site': {0}".format(response), "DEBUG") @@ -890,9 +891,9 @@ class DeviceCredential(DnacBase): _id = response.get("response")[0].get("id") self.log("Site ID for the site name {0}: {1}".format(site_name, _id), "INFO") - except Exception as exec: + except Exception as e: self.log("Exception occurred while getting site_id from the site_name: {0}" - .format(exec), "CRITICAL") + .format(e), "CRITICAL") return None return _id @@ -916,9 +917,9 @@ class DeviceCredential(DnacBase): global_credentials = global_credentials.get("response") self.log("All global device credentials details: {0}" .format(global_credentials), "DEBUG") - except Exception as exec: + except Exception as e: self.log("Exception occurred while getting global device credentials: {0}" - .format(exec), "CRITICAL") + .format(e), "CRITICAL") return None return global_credentials @@ -2208,6 +2209,7 @@ class DeviceCredential(DnacBase): response = self.dnac._exec( family="discovery", function='create_global_credentials_v2', + op_modifies=True, params=credential_params, ) self.log("Received API response from 'create_global_credentials_v2': {0}" @@ -2272,6 +2274,7 @@ class DeviceCredential(DnacBase): response = self.dnac._exec( family="discovery", function='update_global_credentials_v2', + op_modifies=True, params=credential_params, ) self.log("Received API response for 'update_global_credentials_v2': {0}" @@ -2327,6 +2330,7 @@ class DeviceCredential(DnacBase): response = self.dnac._exec( family="network_settings", function='assign_device_credential_to_site_v2', + op_modifies=True, params=credential_params, ) self.log("Received API response for 'assign_device_credential_to_site_v2': {0}" @@ -2413,6 +2417,7 @@ class DeviceCredential(DnacBase): response = self.dnac._exec( family="discovery", function="delete_global_credential_v2", + op_modifies=True, params={"id": _id}, ) self.log("Received API response for 'delete_global_credential_v2': {0}" diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_details_info.py index 108be2c42..05793acd2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_details_info.py @@ -32,8 +32,8 @@ options: - Identifier query parameter. One of keywords macAddress or uuid or nwDeviceName. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceDetail description: Complete reference of the GetDeviceDetail API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_enrichment_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_enrichment_details_info.py index c0be8c613..37a46f792 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_enrichment_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_enrichment_details_info.py @@ -22,8 +22,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceEnrichmentDetails description: Complete reference of the GetDeviceEnrichmentDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_family_identifiers_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_family_identifiers_details_info.py index 515a0d94a..97736aa74 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_family_identifiers_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_family_identifiers_details_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Software Image Management (SWIM) GetDeviceFamilyIdentifiers description: Complete reference of the GetDeviceFamilyIdentifiers API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_health_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_health_info.py index 9b329a7ab..7b0775f33 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_health_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_health_info.py @@ -50,8 +50,8 @@ options: - Offset query parameter. The offset of the first device in the returned data. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices Devices description: Complete reference of the Devices API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_interface_by_ip_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_interface_by_ip_info.py index 7d5d984f5..df7223b15 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_interface_by_ip_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_interface_by_ip_info.py @@ -24,8 +24,8 @@ options: - IpAddress path parameter. IP address of the interface. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetInterfaceByIP description: Complete reference of the GetInterfaceByIP API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_interface_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_interface_count_info.py index 24e0290a6..01d3361fb 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_interface_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_interface_count_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceInterfaceCount description: Complete reference of the GetDeviceInterfaceCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_interface_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_interface_info.py index 5f484a520..31b2bc4c6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_interface_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_interface_info.py @@ -42,8 +42,8 @@ options: - Id path parameter. Interface ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetAllInterfaces description: Complete reference of the GetAllInterfaces API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_interface_isis_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_interface_isis_info.py index 242344a18..798c47821 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_interface_isis_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_interface_isis_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetISISInterfaces description: Complete reference of the GetISISInterfaces API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_interface_ospf_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_interface_ospf_info.py index 759f4584a..ed87a4b0c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_interface_ospf_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_interface_ospf_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetOSPFInterfaces description: Complete reference of the GetOSPFInterfaces API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_reboot_apreboot.py b/ansible_collections/cisco/dnac/plugins/modules/device_reboot_apreboot.py index 78a33dfd4..92e7c41ee 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_reboot_apreboot.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_reboot_apreboot.py @@ -21,8 +21,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless RebootAccessPoints description: Complete reference of the RebootAccessPoints API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_reboot_apreboot_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_reboot_apreboot_info.py index 09203ba5e..c4e500062 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_reboot_apreboot_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_reboot_apreboot_info.py @@ -24,8 +24,8 @@ options: - ParentTaskId query parameter. Task id of ap reboot request. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless GetAccessPointRebootTaskResult description: Complete reference of the GetAccessPointRebootTaskResult API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_replacement.py b/ansible_collections/cisco/dnac/plugins/modules/device_replacement.py index e6ec8cbdc..a5353ddd0 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_replacement.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_replacement.py @@ -65,8 +65,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Replacement MarkDeviceForReplacement description: Complete reference of the MarkDeviceForReplacement API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_replacement_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_replacement_count_info.py index c15cf18df..8aae86979 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_replacement_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_replacement_count_info.py @@ -27,8 +27,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Replacement ReturnReplacementDevicesCount description: Complete reference of the ReturnReplacementDevicesCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_replacement_deploy.py b/ansible_collections/cisco/dnac/plugins/modules/device_replacement_deploy.py index 14f591d2d..81dfc9251 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_replacement_deploy.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_replacement_deploy.py @@ -25,8 +25,8 @@ options: description: Device Replacement Deploy's replacementDeviceSerialNumber. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Replacement DeployDeviceReplacementWorkflow description: Complete reference of the DeployDeviceReplacementWorkflow API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/device_replacement_info.py b/ansible_collections/cisco/dnac/plugins/modules/device_replacement_info.py index 91977952a..4dd9756d5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/device_replacement_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/device_replacement_info.py @@ -71,8 +71,8 @@ options: - Limit query parameter. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Replacement ReturnListOfReplacementDevicesWithReplacementDetails description: Complete reference of the ReturnListOfReplacementDevicesWithReplacementDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/disassociate_site_to_network_profile.py b/ansible_collections/cisco/dnac/plugins/modules/disassociate_site_to_network_profile.py index de80f579b..2972ac7f2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/disassociate_site_to_network_profile.py +++ b/ansible_collections/cisco/dnac/plugins/modules/disassociate_site_to_network_profile.py @@ -23,8 +23,8 @@ options: description: SiteId path parameter. Site Id to be associated. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Site Design Disassociate description: Complete reference of the Disassociate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/disasterrecovery_system_operationstatus_info.py b/ansible_collections/cisco/dnac/plugins/modules/disasterrecovery_system_operationstatus_info.py index 8e05a778e..1c6621afe 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/disasterrecovery_system_operationstatus_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/disasterrecovery_system_operationstatus_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are disaster_recovery.DisasterRecovery.disaster_recovery_operational_status, diff --git a/ansible_collections/cisco/dnac/plugins/modules/disasterrecovery_system_status_info.py b/ansible_collections/cisco/dnac/plugins/modules/disasterrecovery_system_status_info.py index 40356c0f7..f1c3c318c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/disasterrecovery_system_status_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/disasterrecovery_system_status_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are disaster_recovery.DisasterRecovery.disaster_recovery_status, diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery.py b/ansible_collections/cisco/dnac/plugins/modules/discovery.py index 10e7e37a9..94fca37e0 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery.py @@ -214,8 +214,8 @@ options: description: Discovery's userNameList. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery StartDiscovery description: Complete reference of the StartDiscovery API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_count_info.py index 6622742f7..59f92499a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_count_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetCountOfAllDiscoveryJobs description: Complete reference of the GetCountOfAllDiscoveryJobs API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_device_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_device_count_info.py index b258a513d..51da8df80 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_device_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_device_count_info.py @@ -30,8 +30,8 @@ options: - TaskId query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetDevicesDiscoveredById description: Complete reference of the GetDevicesDiscoveredById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_device_info.py index 345000ca0..2bc42ae22 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_device_info.py @@ -30,8 +30,8 @@ options: - TaskId query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetDiscoveredNetworkDevicesByDiscoveryId description: Complete reference of the GetDiscoveredNetworkDevicesByDiscoveryId API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_device_range_info.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_device_range_info.py index 47dcb0871..ade1f2828 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_device_range_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_device_range_info.py @@ -38,8 +38,8 @@ options: - TaskId query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetDiscoveredDevicesByRange description: Complete reference of the GetDiscoveredDevicesByRange API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_info.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_info.py index 689226938..68d1cc74f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_info.py @@ -24,8 +24,8 @@ options: - Id path parameter. Discovery ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetDiscoveryById description: Complete reference of the GetDiscoveryById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_intent.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_intent.py index 96759bb9c..a71ef6be8 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_intent.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_intent.py @@ -59,7 +59,8 @@ options: pass a list with single element like - 10.197.156.22. For CIDR based discovery, we should pass a list with single element like - 10.197.156.22/22. For RANGE based discovery, we should pass a list with single element and range like - 10.197.156.1-10.197.156.100. For MULTI RANGE based discovery, we should pass a list with multiple - elementd like - 10.197.156.1-10.197.156.100 and in next line - 10.197.157.1-10.197.157.100. + elementd like - 10.197.156.1-10.197.156.100 and in next line - 10.197.157.1-10.197.157.100. Maximum of 8 IP address ranges + are allowed. type: list elements: str required: true @@ -328,7 +329,7 @@ options: default: False requirements: - dnacentersdk == 2.6.10 -- python >= 3.5 +- python >= 3.9 notes: - SDK Method used are discovery.Discovery.get_all_global_credentials_v2, @@ -721,6 +722,43 @@ class Discovery(DnacBase): self.status = "success" return self + def validate_ip4_address_list(self): + """ + Validates each ip adress paased in the IP_address_list passed by the user before preprocessing it + """ + + ip_address_list = self.validated_config[0].get('ip_address_list') + for ip in ip_address_list: + if '/' in ip: + ip = ip.split("/")[0] + if '-' in ip: + if len(ip.split('-')) == 2: + ip1, ip2 = ip.split('-') + if self.is_valid_ipv4(ip1) is False: + msg = "IP address {0} is not valid".format(ip1) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + if self.is_valid_ipv4(ip2) is False: + msg = "IP address {0} is not valid".format(ip2) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + ip1_parts = list(map(int, ip1.split('.'))) + ip2_parts = list(map(int, ip2.split('.'))) + for part in range(4): + if ip1_parts[part] > ip2_parts[part]: + msg = "Incorrect range passed: {0}. Please pass correct IP address range".format(ip) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + else: + msg = "Provided range '{0}' is incorrect. IP address range should have only upper and lower limit values".format(ip) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + if self.is_valid_ipv4(ip) is False and '-' not in ip: + msg = "IP address {0} is not valid".format(ip) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + self.log("All the IP addresses passed are correct", "INFO") + def get_creds_ids_list(self): """ Retrieve the list of credentials IDs associated with class instance. @@ -934,6 +972,7 @@ class Discovery(DnacBase): family="discovery", function='get_all_global_credentials_v2', params=self.validated_config[0].get('headers'), + op_modifies=True ) response = response.get('response') self.log("The Global credentials response from 'get all global credentials v2' API is {0}".format(str(response)), "DEBUG") @@ -1022,6 +1061,10 @@ class Discovery(DnacBase): else: self.preprocess_device_discovery_handle_error() else: + if len(ip_address_list) > 8: + msg = "Maximum of 8 IP ranges are allowed." + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) new_ip_collected = [] for ip in ip_address_list: if len(str(ip).split("-")) != 2: @@ -1267,11 +1310,11 @@ class Discovery(DnacBase): self.log("Task Id of the API task created is {0}".format(result.response.get('taskId')), "INFO") return result.response.get('taskId') - def get_task_status(self, task_id=None): + def get_merged_task_status(self, task_id=None): """ - Monitor the status of a task in the Cisco Catalyst Center. It checks the task - status periodically until the task is no longer 'In Progress'. - If the task encounters an error or fails, it immediately fails the + Monitor the status of a task of creation of dicovery in the Cisco Catalyst Center. + It checks the task status periodically until the task is no longer 'In Progress' + or other states. If the task encounters an error or fails, it immediately fails the module and returns False. Parameters: @@ -1288,9 +1331,10 @@ class Discovery(DnacBase): family="task", function='get_task_by_id', params=params, + op_modifies=True, ) response = response.response - self.log("Task status for the task id {0} is {1}".format(str(task_id), str(response)), "INFO") + self.log("Task status for the task id {0} is {1}, is_error: {2}".format(str(task_id), str(response), str(response.get('isError'))), "INFO") if response.get('isError') or re.search( 'failed', response.get('progress'), flags=re.IGNORECASE ): @@ -1299,17 +1343,62 @@ class Discovery(DnacBase): self.log(msg, "CRITICAL") self.module.fail_json(msg=msg) return False + self.log("Task status for the task id (before checking status) {0} is {1}".format(str(task_id), str(response)), "INFO") progress = response.get('progress') - if progress in ('In Progress', 'Inventory service initiating discovery'): + try: + progress_value = int(progress) + result = True + self.log("The discovery process is completed", "INFO") + self.result.update(dict(discovery_task=response)) + return result + except Exception: + self.log("The progress status is {0}, continue to check the status after 3 seconds. Putting into sleep for 3 seconds".format(progress)) time.sleep(3) - continue - else: + + def get_deleted_task_status(self, task_id=None): + """ + Monitor the status of a task of deletion of dicovery in the Cisco Catalyst Center. + It checks the itask status periodically until the task is 'Discovery deleted successfully'. + If the task encounters an error or fails, it immediately fails the module and returns False. + + Parameters: + - task_id: The ID of the task to monitor. + + Returns: + - result: True if the task completed successfully, False otherwise. + """ + + result = False + params = dict(task_id=task_id) + while True: + response = self.dnac_apply['exec']( + family="task", + function='get_task_by_id', + params=params, + op_modifies=True, + ) + response = response.response + self.log("Task status for the task id {0} is {1}, is_error: {2}".format(str(task_id), str(response), str(response.get('isError'))), "INFO") + if response.get('isError') or re.search( + 'failed', response.get('progress'), flags=re.IGNORECASE + ): + msg = 'Discovery task with id {0} has not completed - Reason: {1}'.format( + task_id, response.get("failureReason")) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + return False + + self.log("Task status for the task id (before checking status) {0} is {1}".format(str(task_id), str(response)), "INFO") + progress = response.get('progress') + if re.search('Discovery deleted successfully.', response.get('progress')): result = True - self.log("The Process is completed", "INFO") - break - self.result.update(dict(discovery_task=response)) - return result + self.log("The discovery process is completed", "INFO") + self.result.update(dict(discovery_task=response)) + return result + + self.log("The progress status is {0}, continue to check the status after 3 seconds. Putting into sleep for 3 seconds".format(progress)) + time.sleep(3) def lookup_discovery_by_range_via_name(self): """ @@ -1336,7 +1425,8 @@ class Discovery(DnacBase): response_part = self.dnac_apply['exec']( family="discovery", function='get_discoveries_by_range', - params=params + params=params, + op_modifies=True, ) response["response"].extend(response_part["response"]) else: @@ -1349,7 +1439,8 @@ class Discovery(DnacBase): response = self.dnac_apply['exec']( family="discovery", function='get_discoveries_by_range', - params=params + params=params, + op_modifies=True, ) self.log("Response of the get discoveries via range API is {0}".format(str(response)), "DEBUG") @@ -1373,6 +1464,7 @@ class Discovery(DnacBase): """ result = False + aborted = False discovery = self.lookup_discovery_by_range_via_name() if not discovery: @@ -1383,17 +1475,25 @@ class Discovery(DnacBase): while True: discovery = self.lookup_discovery_by_range_via_name() - if discovery.get('discoveryCondition') == 'Complete': + discovery_condition = discovery.get('discoveryCondition') + if discovery_condition == 'Complete': result = True break - + elif discovery_condition == 'Aborted': + aborted = True + break time.sleep(3) if not result: - msg = 'Cannot find any discovery task with name {0} -- Discovery result: {1}'.format( - str(self.validated_config[0].get("discovery_name")), str(discovery)) - self.log(msg, "CRITICAL") - self.module.fail_json(msg=msg) + if aborted is True: + msg = 'Discovery with name {0} is aborted by the user on the GUI'.format(str(self.validated_config[0].get("discovery_name"))) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + else: + msg = 'Cannot find any discovery task with name {0} -- Discovery result: {1}'.format( + str(self.validated_config[0].get("discovery_name")), str(discovery)) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) self.result.update(dict(discovery_range=discovery)) return discovery @@ -1425,6 +1525,7 @@ class Discovery(DnacBase): family="discovery", function='get_discovered_network_devices_by_discovery_id', params=params, + op_modifies=True, ) devices = response.response @@ -1495,6 +1596,7 @@ class Discovery(DnacBase): family="discovery", function="delete_discovery_by_id", params=params, + op_modifies=True, ) self.log("Response collected from API 'delete_discovery_by_id': {0}".format(str(response)), "DEBUG") @@ -1513,17 +1615,18 @@ class Discovery(DnacBase): - self: The instance of the class with updated attributes. """ + self.validate_ip4_address_list() devices_list_info = self.get_devices_list_info() ip_address_list = self.preprocess_device_discovery(devices_list_info) exist_discovery = self.get_exist_discovery() if exist_discovery: params = dict(id=exist_discovery.get('id')) discovery_task_id = self.delete_exist_discovery(params=params) - complete_discovery = self.get_task_status(task_id=discovery_task_id) + complete_discovery = self.get_deleted_task_status(task_id=discovery_task_id) discovery_task_id = self.create_discovery( ip_address_list=ip_address_list) - complete_discovery = self.get_task_status(task_id=discovery_task_id) + complete_discovery = self.get_merged_task_status(task_id=discovery_task_id) discovery_task_info = self.get_discoveries_by_range_until_success() result = self.get_discovery_device_info(discovery_id=discovery_task_info.get('id')) self.result["changed"] = True @@ -1576,7 +1679,7 @@ class Discovery(DnacBase): params = dict(id=exist_discovery.get('id')) discovery_task_id = self.delete_exist_discovery(params=params) - complete_discovery = self.get_task_status(task_id=discovery_task_id) + complete_discovery = self.get_deleted_task_status(task_id=discovery_task_id) self.result["changed"] = True self.result['msg'] = "Successfully deleted discovery" self.result['diff'] = self.validated_config @@ -1611,7 +1714,8 @@ class Discovery(DnacBase): response = self.dnac_apply['exec']( family="discovery", function='get_discovery_by_id', - params=params + params=params, + op_modifies=True, ) discovery_name = config.get('discovery_name') if response: diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_job_info.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_job_info.py index 202f57c80..2e6de4f14 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_job_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_job_info.py @@ -44,8 +44,8 @@ options: - Id path parameter. Discovery ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetDiscoveryJobsByIP description: Complete reference of the GetDiscoveryJobsByIP API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_range_delete.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_range_delete.py index 07c380a17..876881242 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_range_delete.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_range_delete.py @@ -23,8 +23,8 @@ options: description: StartIndex path parameter. Start index. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery DeleteDiscoveryBySpecifiedRange description: Complete reference of the DeleteDiscoveryBySpecifiedRange API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_range_info.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_range_info.py index c08902f8b..c4fc60ba7 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_range_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_range_info.py @@ -28,8 +28,8 @@ options: - RecordsToReturn path parameter. Number of records to return. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetDiscoveriesByRange description: Complete reference of the GetDiscoveriesByRange API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_summary_info.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_summary_info.py index bd8e6dcf6..9cff8b3ee 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_summary_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_summary_info.py @@ -68,8 +68,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetNetworkDevicesFromDiscovery description: Complete reference of the GetNetworkDevicesFromDiscovery API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/discovery_workflow_manager.py b/ansible_collections/cisco/dnac/plugins/modules/discovery_workflow_manager.py index 88ce124a3..758d3cc75 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/discovery_workflow_manager.py +++ b/ansible_collections/cisco/dnac/plugins/modules/discovery_workflow_manager.py @@ -59,7 +59,8 @@ options: pass a list with single element like - 10.197.156.22. For CIDR based discovery, we should pass a list with single element like - 10.197.156.22/22. For RANGE based discovery, we should pass a list with single element and range like - 10.197.156.1-10.197.156.100. For MULTI RANGE based discovery, we should pass a list with multiple - elementd like - 10.197.156.1-10.197.156.100 and in next line - 10.197.157.1-10.197.157.100. + elementd like - 10.197.156.1-10.197.156.100 and in next line - 10.197.157.1-10.197.157.100. Maximum of 8 IP address ranges + are allowed. type: list elements: str required: true @@ -328,7 +329,7 @@ options: default: False requirements: - dnacentersdk == 2.6.10 -- python >= 3.5 +- python >= 3.9 notes: - SDK Method used are discovery.Discovery.get_all_global_credentials_v2, @@ -721,6 +722,43 @@ class Discovery(DnacBase): self.status = "success" return self + def validate_ip4_address_list(self): + """ + Validates each ip adress paased in the IP_address_list passed by the user before preprocessing it + """ + + ip_address_list = self.validated_config[0].get('ip_address_list') + for ip in ip_address_list: + if '/' in ip: + ip = ip.split("/")[0] + if '-' in ip: + if len(ip.split('-')) == 2: + ip1, ip2 = ip.split('-') + if self.is_valid_ipv4(ip1) is False: + msg = "IP address {0} is not valid".format(ip1) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + if self.is_valid_ipv4(ip2) is False: + msg = "IP address {0} is not valid".format(ip2) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + ip1_parts = list(map(int, ip1.split('.'))) + ip2_parts = list(map(int, ip2.split('.'))) + for part in range(4): + if ip1_parts[part] > ip2_parts[part]: + msg = "Incorrect range passed: {0}. Please pass correct IP address range".format(ip) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + else: + msg = "Provided range '{0}' is incorrect. IP address range should have only upper and lower limit values".format(ip) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + if self.is_valid_ipv4(ip) is False and '-' not in ip: + msg = "IP address {0} is not valid".format(ip) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + self.log("All the IP addresses passed are correct", "INFO") + def get_creds_ids_list(self): """ Retrieve the list of credentials IDs associated with class instance. @@ -934,6 +972,7 @@ class Discovery(DnacBase): family="discovery", function='get_all_global_credentials_v2', params=self.validated_config[0].get('headers'), + op_modifies=True ) response = response.get('response') self.log("The Global credentials response from 'get all global credentials v2' API is {0}".format(str(response)), "DEBUG") @@ -1022,6 +1061,10 @@ class Discovery(DnacBase): else: self.preprocess_device_discovery_handle_error() else: + if len(ip_address_list) > 8: + msg = "Maximum of 8 IP ranges are allowed." + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) new_ip_collected = [] for ip in ip_address_list: if len(str(ip).split("-")) != 2: @@ -1267,11 +1310,11 @@ class Discovery(DnacBase): self.log("Task Id of the API task created is {0}".format(result.response.get('taskId')), "INFO") return result.response.get('taskId') - def get_task_status(self, task_id=None): + def get_merged_task_status(self, task_id=None): """ - Monitor the status of a task in the Cisco Catalyst Center. It checks the task - status periodically until the task is no longer 'In Progress'. - If the task encounters an error or fails, it immediately fails the + Monitor the status of a task of creation of dicovery in the Cisco Catalyst Center. + It checks the task status periodically until the task is no longer 'In Progress' + or other states. If the task encounters an error or fails, it immediately fails the module and returns False. Parameters: @@ -1288,9 +1331,10 @@ class Discovery(DnacBase): family="task", function='get_task_by_id', params=params, + op_modifies=True, ) response = response.response - self.log("Task status for the task id {0} is {1}".format(str(task_id), str(response)), "INFO") + self.log("Task status for the task id {0} is {1}, is_error: {2}".format(str(task_id), str(response), str(response.get('isError'))), "INFO") if response.get('isError') or re.search( 'failed', response.get('progress'), flags=re.IGNORECASE ): @@ -1299,17 +1343,62 @@ class Discovery(DnacBase): self.log(msg, "CRITICAL") self.module.fail_json(msg=msg) return False + self.log("Task status for the task id (before checking status) {0} is {1}".format(str(task_id), str(response)), "INFO") progress = response.get('progress') - if progress in ('In Progress', 'Inventory service initiating discovery'): + try: + progress_value = int(progress) + result = True + self.log("The discovery process is completed", "INFO") + self.result.update(dict(discovery_task=response)) + return result + except Exception: + self.log("The progress status is {0}, continue to check the status after 3 seconds. Putting into sleep for 3 seconds".format(progress)) time.sleep(3) - continue - else: + + def get_deleted_task_status(self, task_id=None): + """ + Monitor the status of a task of deletion of dicovery in the Cisco Catalyst Center. + It checks the itask status periodically until the task is 'Discovery deleted successfully'. + If the task encounters an error or fails, it immediately fails the module and returns False. + + Parameters: + - task_id: The ID of the task to monitor. + + Returns: + - result: True if the task completed successfully, False otherwise. + """ + + result = False + params = dict(task_id=task_id) + while True: + response = self.dnac_apply['exec']( + family="task", + function='get_task_by_id', + params=params, + op_modifies=True, + ) + response = response.response + self.log("Task status for the task id {0} is {1}, is_error: {2}".format(str(task_id), str(response), str(response.get('isError'))), "INFO") + if response.get('isError') or re.search( + 'failed', response.get('progress'), flags=re.IGNORECASE + ): + msg = 'Discovery task with id {0} has not completed - Reason: {1}'.format( + task_id, response.get("failureReason")) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + return False + + self.log("Task status for the task id (before checking status) {0} is {1}".format(str(task_id), str(response)), "INFO") + progress = response.get('progress') + if re.search('Discovery deleted successfully.', response.get('progress')): result = True - self.log("The Process is completed", "INFO") - break - self.result.update(dict(discovery_task=response)) - return result + self.log("The discovery process is completed", "INFO") + self.result.update(dict(discovery_task=response)) + return result + + self.log("The progress status is {0}, continue to check the status after 3 seconds. Putting into sleep for 3 seconds".format(progress)) + time.sleep(3) def lookup_discovery_by_range_via_name(self): """ @@ -1336,7 +1425,8 @@ class Discovery(DnacBase): response_part = self.dnac_apply['exec']( family="discovery", function='get_discoveries_by_range', - params=params + params=params, + op_modifies=True, ) response["response"].extend(response_part["response"]) else: @@ -1349,7 +1439,8 @@ class Discovery(DnacBase): response = self.dnac_apply['exec']( family="discovery", function='get_discoveries_by_range', - params=params + params=params, + op_modifies=True, ) self.log("Response of the get discoveries via range API is {0}".format(str(response)), "DEBUG") @@ -1373,6 +1464,7 @@ class Discovery(DnacBase): """ result = False + aborted = False discovery = self.lookup_discovery_by_range_via_name() if not discovery: @@ -1383,17 +1475,25 @@ class Discovery(DnacBase): while True: discovery = self.lookup_discovery_by_range_via_name() - if discovery.get('discoveryCondition') == 'Complete': + discovery_condition = discovery.get('discoveryCondition') + if discovery_condition == 'Complete': result = True break - + elif discovery_condition == 'Aborted': + aborted = True + break time.sleep(3) if not result: - msg = 'Cannot find any discovery task with name {0} -- Discovery result: {1}'.format( - str(self.validated_config[0].get("discovery_name")), str(discovery)) - self.log(msg, "CRITICAL") - self.module.fail_json(msg=msg) + if aborted is True: + msg = 'Discovery with name {0} is aborted by the user on the GUI'.format(str(self.validated_config[0].get("discovery_name"))) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) + else: + msg = 'Cannot find any discovery task with name {0} -- Discovery result: {1}'.format( + str(self.validated_config[0].get("discovery_name")), str(discovery)) + self.log(msg, "CRITICAL") + self.module.fail_json(msg=msg) self.result.update(dict(discovery_range=discovery)) return discovery @@ -1425,6 +1525,7 @@ class Discovery(DnacBase): family="discovery", function='get_discovered_network_devices_by_discovery_id', params=params, + op_modifies=True, ) devices = response.response @@ -1495,6 +1596,7 @@ class Discovery(DnacBase): family="discovery", function="delete_discovery_by_id", params=params, + op_modifies=True, ) self.log("Response collected from API 'delete_discovery_by_id': {0}".format(str(response)), "DEBUG") @@ -1513,17 +1615,18 @@ class Discovery(DnacBase): - self: The instance of the class with updated attributes. """ + self.validate_ip4_address_list() devices_list_info = self.get_devices_list_info() ip_address_list = self.preprocess_device_discovery(devices_list_info) exist_discovery = self.get_exist_discovery() if exist_discovery: params = dict(id=exist_discovery.get('id')) discovery_task_id = self.delete_exist_discovery(params=params) - complete_discovery = self.get_task_status(task_id=discovery_task_id) + complete_discovery = self.get_deleted_task_status(task_id=discovery_task_id) discovery_task_id = self.create_discovery( ip_address_list=ip_address_list) - complete_discovery = self.get_task_status(task_id=discovery_task_id) + complete_discovery = self.get_merged_task_status(task_id=discovery_task_id) discovery_task_info = self.get_discoveries_by_range_until_success() result = self.get_discovery_device_info(discovery_id=discovery_task_info.get('id')) self.result["changed"] = True @@ -1576,7 +1679,7 @@ class Discovery(DnacBase): params = dict(id=exist_discovery.get('id')) discovery_task_id = self.delete_exist_discovery(params=params) - complete_discovery = self.get_task_status(task_id=discovery_task_id) + complete_discovery = self.get_deleted_task_status(task_id=discovery_task_id) self.result["changed"] = True self.result['msg'] = "Successfully deleted discovery" self.result['diff'] = self.validated_config @@ -1611,7 +1714,8 @@ class Discovery(DnacBase): response = self.dnac_apply['exec']( family="discovery", function='get_discovery_by_id', - params=params + params=params, + op_modifies=True, ) discovery_name = config.get('discovery_name') if response: diff --git a/ansible_collections/cisco/dnac/plugins/modules/dna_command_runner_keywords_info.py b/ansible_collections/cisco/dnac/plugins/modules/dna_command_runner_keywords_info.py index dee8c3ff2..1e63e6b13 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/dna_command_runner_keywords_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/dna_command_runner_keywords_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Command Runner GetAllKeywordsOfCLIsAcceptedByCommandRunner description: Complete reference of the GetAllKeywordsOfCLIsAcceptedByCommandRunner API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/dnac_packages_info.py b/ansible_collections/cisco/dnac/plugins/modules/dnac_packages_info.py index 2d0a0e0dd..ebc2481a5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/dnac_packages_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/dnac_packages_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Platform CiscoDNACenterPackagesSummary description: Complete reference of the CiscoDNACenterPackagesSummary API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/dnacaap_management_execution_status_info.py b/ansible_collections/cisco/dnac/plugins/modules/dnacaap_management_execution_status_info.py index 1afb01dff..3fc122f4d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/dnacaap_management_execution_status_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/dnacaap_management_execution_status_info.py @@ -24,8 +24,8 @@ options: - ExecutionId path parameter. Execution Id of API. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Task GetBusinessAPIExecutionDetails description: Complete reference of the GetBusinessAPIExecutionDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/endpoint_analytics_profiling_rules.py b/ansible_collections/cisco/dnac/plugins/modules/endpoint_analytics_profiling_rules.py index 38e2f47ec..43633824b 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/endpoint_analytics_profiling_rules.py +++ b/ansible_collections/cisco/dnac/plugins/modules/endpoint_analytics_profiling_rules.py @@ -114,8 +114,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are policy.Policy.create_a_profiling_rule, diff --git a/ansible_collections/cisco/dnac/plugins/modules/endpoint_analytics_profiling_rules_info.py b/ansible_collections/cisco/dnac/plugins/modules/endpoint_analytics_profiling_rules_info.py index 9c42ee1ea..1e3ca88c2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/endpoint_analytics_profiling_rules_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/endpoint_analytics_profiling_rules_info.py @@ -60,8 +60,8 @@ options: - RuleId path parameter. Unique rule identifier. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are policy.Policy.get_details_of_a_single_profiling_rule, diff --git a/ansible_collections/cisco/dnac/plugins/modules/eox_status_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/eox_status_device_info.py index 6843843e8..dc1073450 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/eox_status_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/eox_status_device_info.py @@ -26,8 +26,8 @@ options: - DeviceId path parameter. Device instance UUID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for EoX GetEoXDetailsPerDevice description: Complete reference of the GetEoXDetailsPerDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/eox_status_summary_info.py b/ansible_collections/cisco/dnac/plugins/modules/eox_status_summary_info.py index 0ec817750..26dc6d99d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/eox_status_summary_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/eox_status_summary_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for EoX GetEoXSummary description: Complete reference of the GetEoXSummary API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_api_status_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_api_status_info.py index 4ddaaca0a..8c6cf8d13 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_api_status_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_api_status_info.py @@ -24,8 +24,8 @@ options: - ExecutionId path parameter. Execution ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetStatusAPIForEvents description: Complete reference of the GetStatusAPIForEvents API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_artifact_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_artifact_count_info.py index f34e77fe8..fb7d3ab7d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_artifact_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_artifact_count_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management EventArtifactCount description: Complete reference of the EventArtifactCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_artifact_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_artifact_info.py index 6e4f14b6a..196b1233c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_artifact_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_artifact_info.py @@ -48,8 +48,8 @@ options: - Search query parameter. Findd matches in name, description, eventId, type, category. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetEventArtifacts description: Complete reference of the GetEventArtifacts API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_config_connector_types_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_config_connector_types_info.py index 8c0958e7e..b30a9659a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_config_connector_types_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_config_connector_types_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetConnectorTypes description: Complete reference of the GetConnectorTypes API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_count_info.py index 131712342..864364655 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_count_info.py @@ -28,8 +28,8 @@ options: - Tags query parameter. The registered Tags should be provided. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CountOfEvents description: Complete reference of the CountOfEvents API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_email_config.py b/ansible_collections/cisco/dnac/plugins/modules/event_email_config.py index 3b9de49a1..fd5fdb882 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_email_config.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_email_config.py @@ -62,8 +62,8 @@ options: description: To Email. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CreateEmailDestination description: Complete reference of the CreateEmailDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_email_config_create.py b/ansible_collections/cisco/dnac/plugins/modules/event_email_config_create.py index b207dde21..4be4ec362 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_email_config_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_email_config_create.py @@ -61,8 +61,8 @@ options: description: To Email. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CreateEmailDestination description: Complete reference of the CreateEmailDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_email_config_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_email_config_info.py index 6aa855855..272118cd7 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_email_config_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_email_config_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetEmailDestination description: Complete reference of the GetEmailDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_email_config_update.py b/ansible_collections/cisco/dnac/plugins/modules/event_email_config_update.py index 2234ae907..c471ff807 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_email_config_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_email_config_update.py @@ -61,8 +61,8 @@ options: description: To Email. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management UpdateEmailDestination description: Complete reference of the UpdateEmailDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_info.py index ac34fbf25..a3eafb297 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_info.py @@ -44,8 +44,8 @@ options: - Order query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetEvents description: Complete reference of the GetEvents API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_info.py index dbb7b5320..b5fa297d9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_info.py @@ -122,8 +122,8 @@ options: values asc, desc. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetAuditLogRecords description: Complete reference of the GetAuditLogRecords API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_parent_records_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_parent_records_info.py index 6f6a2b616..26bd96d29 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_parent_records_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_parent_records_info.py @@ -118,8 +118,8 @@ options: values asc, desc. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetAuditLogParentRecords description: Complete reference of the GetAuditLogParentRecords API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_summary_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_summary_info.py index ee2063fa0..2e0d2e133 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_summary_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_series_audit_logs_summary_info.py @@ -106,8 +106,8 @@ options: mandatory). type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetAuditLogSummary description: Complete reference of the GetAuditLogSummary API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_series_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_series_count_info.py index 6fd07cf4a..ebd6576f0 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_series_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_series_count_info.py @@ -56,8 +56,8 @@ options: - Source query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CountOfNotifications description: Complete reference of the CountOfNotifications API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_series_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_series_info.py index 523e5a708..982aa0cbc 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_series_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_series_info.py @@ -84,8 +84,8 @@ options: - SiteId query parameter. Site Id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetNotifications description: Complete reference of the GetNotifications API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_snmp_config_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_snmp_config_info.py index 6ae23c7f3..b87081672 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_snmp_config_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_snmp_config_info.py @@ -40,8 +40,8 @@ options: - Order query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetSNMPDestination description: Complete reference of the GetSNMPDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription.py index 38c2899ae..0aca4d2db 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription.py @@ -94,8 +94,8 @@ options: description: Subscriptions query parameter. List of EventSubscriptionId's for removal. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CreateEventSubscriptions description: Complete reference of the CreateEventSubscriptions API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_count_info.py index e9eb3e432..daf1a6fdf 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_count_info.py @@ -24,8 +24,8 @@ options: - EventIds query parameter. List of subscriptions related to the respective eventIds. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CountOfEventSubscriptions description: Complete reference of the CountOfEventSubscriptions API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_email_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_email_info.py index 7109b1ac1..b6487d13f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_email_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_email_info.py @@ -44,8 +44,8 @@ options: - Order query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetEmailSubscriptionDetails description: Complete reference of the GetEmailSubscriptionDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_rest_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_rest_info.py index cde6348bf..ee793eff1 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_rest_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_rest_info.py @@ -48,8 +48,8 @@ options: - Order query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetRestWebhookSubscriptionDetails description: Complete reference of the GetRestWebhookSubscriptionDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_syslog_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_syslog_info.py index 2d3676759..18e68fa77 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_syslog_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_details_syslog_info.py @@ -46,8 +46,8 @@ options: - Order query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetSyslogSubscriptionDetails description: Complete reference of the GetSyslogSubscriptionDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_email.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_email.py index 56b82b4a8..13dc4cfe8 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_email.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_email.py @@ -106,8 +106,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CreateEmailEventSubscription description: Complete reference of the CreateEmailEventSubscription API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_email_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_email_info.py index 5d20ef478..3eab8992b 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_email_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_email_info.py @@ -62,8 +62,8 @@ options: - Name query parameter. List of email subscriptions related to the respective name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetEmailEventSubscriptions description: Complete reference of the GetEmailEventSubscriptions API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_info.py index 7655d9676..9349d81e7 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_info.py @@ -40,8 +40,8 @@ options: - Order query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetEventSubscriptions description: Complete reference of the GetEventSubscriptions API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_rest.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_rest.py index acfc5f9e4..81eea1f2e 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_rest.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_rest.py @@ -90,8 +90,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CreateRestWebhookEventSubscription description: Complete reference of the CreateRestWebhookEventSubscription API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_rest_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_rest_info.py index a26bf7473..06e8dab61 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_rest_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_rest_info.py @@ -60,8 +60,8 @@ options: - Name query parameter. List of subscriptions related to the respective name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetRestWebhookEventSubscriptions description: Complete reference of the GetRestWebhookEventSubscriptions API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_syslog.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_syslog.py index 802664038..aeff30dd3 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_syslog.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_syslog.py @@ -90,8 +90,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CreateSyslogEventSubscription description: Complete reference of the CreateSyslogEventSubscription API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_syslog_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_syslog_info.py index dcd077007..ef6ffb044 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_subscription_syslog_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_subscription_syslog_info.py @@ -60,8 +60,8 @@ options: - Name query parameter. List of subscriptions related to the respective name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetSyslogEventSubscriptions description: Complete reference of the GetSyslogEventSubscriptions API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_syslog_config.py b/ansible_collections/cisco/dnac/plugins/modules/event_syslog_config.py index a59316f39..11c6d9508 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_syslog_config.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_syslog_config.py @@ -36,8 +36,8 @@ options: description: Protocol. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CreateSyslogDestination description: Complete reference of the CreateSyslogDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_syslog_config_info.py b/ansible_collections/cisco/dnac/plugins/modules/event_syslog_config_info.py index 2c2617128..a2e6009c8 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_syslog_config_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_syslog_config_info.py @@ -48,8 +48,8 @@ options: - Order query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management GetSyslogDestination description: Complete reference of the GetSyslogDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_webhook_create.py b/ansible_collections/cisco/dnac/plugins/modules/event_webhook_create.py index b9c585ee9..2859b7615 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_webhook_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_webhook_create.py @@ -52,8 +52,8 @@ options: description: Required only for update webhook configuration. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CreateWebhookDestination description: Complete reference of the CreateWebhookDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/event_webhook_update.py b/ansible_collections/cisco/dnac/plugins/modules/event_webhook_update.py index 91d70839b..0c50462ed 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/event_webhook_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/event_webhook_update.py @@ -52,8 +52,8 @@ options: description: Required only for update webhook configuration. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management UpdateWebhookDestination description: Complete reference of the UpdateWebhookDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/execute_suggested_actions_commands.py b/ansible_collections/cisco/dnac/plugins/modules/execute_suggested_actions_commands.py index 51df59677..43fce3203 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/execute_suggested_actions_commands.py +++ b/ansible_collections/cisco/dnac/plugins/modules/execute_suggested_actions_commands.py @@ -27,8 +27,8 @@ options: description: Contains the actual value for the entity type that has been defined. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Issues ExecuteSuggestedActionsCommands description: Complete reference of the ExecuteSuggestedActionsCommands API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/file_import.py b/ansible_collections/cisco/dnac/plugins/modules/file_import.py index f82598e0c..f9909eddd 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/file_import.py +++ b/ansible_collections/cisco/dnac/plugins/modules/file_import.py @@ -23,8 +23,8 @@ options: description: NameSpace path parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for File UploadFile description: Complete reference of the UploadFile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/file_info.py b/ansible_collections/cisco/dnac/plugins/modules/file_info.py index bf07d1072..b9bdba4b9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/file_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/file_info.py @@ -36,8 +36,8 @@ options: - The filename used to save the download file. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for File DownloadAFileByFileId description: Complete reference of the DownloadAFileByFileId API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/file_namespace_files_info.py b/ansible_collections/cisco/dnac/plugins/modules/file_namespace_files_info.py index e28b10c8f..0e16dbc1a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/file_namespace_files_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/file_namespace_files_info.py @@ -24,8 +24,8 @@ options: - NameSpace path parameter. A listing of fileId's. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for File GetListOfFiles description: Complete reference of the GetListOfFiles API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/file_namespaces_info.py b/ansible_collections/cisco/dnac/plugins/modules/file_namespaces_info.py index a0fc5682f..849268111 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/file_namespaces_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/file_namespaces_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for File GetListOfAvailableNamespaces description: Complete reference of the GetListOfAvailableNamespaces API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/global_credential_delete.py b/ansible_collections/cisco/dnac/plugins/modules/global_credential_delete.py index 13c9630c3..3dd9ad1d1 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/global_credential_delete.py +++ b/ansible_collections/cisco/dnac/plugins/modules/global_credential_delete.py @@ -20,8 +20,8 @@ options: description: GlobalCredentialId path parameter. ID of global-credential. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery DeleteGlobalCredentialsById description: Complete reference of the DeleteGlobalCredentialsById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/global_credential_info.py b/ansible_collections/cisco/dnac/plugins/modules/global_credential_info.py index 4fe317b6f..2d46ca10f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/global_credential_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/global_credential_info.py @@ -40,8 +40,8 @@ options: - Id path parameter. Global Credential ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetCredentialSubTypeByCredentialId description: Complete reference of the GetCredentialSubTypeByCredentialId API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/global_credential_update.py b/ansible_collections/cisco/dnac/plugins/modules/global_credential_update.py index 127504846..8f2ea144a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/global_credential_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/global_credential_update.py @@ -24,8 +24,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery UpdateGlobalCredentials description: Complete reference of the UpdateGlobalCredentials API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/global_credential_v2.py b/ansible_collections/cisco/dnac/plugins/modules/global_credential_v2.py index 0679fed86..2d27cca33 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/global_credential_v2.py +++ b/ansible_collections/cisco/dnac/plugins/modules/global_credential_v2.py @@ -137,8 +137,8 @@ options: type: str type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery CreateGlobalCredentialsV2 description: Complete reference of the CreateGlobalCredentialsV2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/global_credential_v2_info.py b/ansible_collections/cisco/dnac/plugins/modules/global_credential_v2_info.py index c746964cb..6b0bffd4d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/global_credential_v2_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/global_credential_v2_info.py @@ -22,8 +22,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetAllGlobalCredentialsV2 description: Complete reference of the GetAllGlobalCredentialsV2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/global_pool.py b/ansible_collections/cisco/dnac/plugins/modules/global_pool.py index 3c94f9c58..f52c316d6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/global_pool.py +++ b/ansible_collections/cisco/dnac/plugins/modules/global_pool.py @@ -48,8 +48,8 @@ options: type: list type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings CreateGlobalPool description: Complete reference of the CreateGlobalPool API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/global_pool_info.py b/ansible_collections/cisco/dnac/plugins/modules/global_pool_info.py index ed95446be..4d95ba9ea 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/global_pool_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/global_pool_info.py @@ -28,8 +28,8 @@ options: - Limit query parameter. No of Global Pools to be retrieved. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings GetGlobalPool description: Complete reference of the GetGlobalPool API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/golden_image_create.py b/ansible_collections/cisco/dnac/plugins/modules/golden_image_create.py index 1f176f172..95385c59d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/golden_image_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/golden_image_create.py @@ -30,8 +30,8 @@ options: description: SiteId in uuid format. For Global Site "-1" to be used. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Software Image Management (SWIM) TagAsGoldenImage description: Complete reference of the TagAsGoldenImage API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/golden_tag_image_delete.py b/ansible_collections/cisco/dnac/plugins/modules/golden_tag_image_delete.py index 8191e4915..392165663 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/golden_tag_image_delete.py +++ b/ansible_collections/cisco/dnac/plugins/modules/golden_tag_image_delete.py @@ -32,8 +32,8 @@ options: Global site. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Software Image Management (SWIM) RemoveGoldenTagForImage description: Complete reference of the RemoveGoldenTagForImage API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/golden_tag_image_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/golden_tag_image_details_info.py index 9d41a7610..c92ed9503 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/golden_tag_image_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/golden_tag_image_details_info.py @@ -38,8 +38,8 @@ options: - ImageId path parameter. Image Id in uuid format. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Software Image Management (SWIM) GetGoldenTagStatusOfAnImage description: Complete reference of the GetGoldenTagStatusOfAnImage API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/http_read_credential.py b/ansible_collections/cisco/dnac/plugins/modules/http_read_credential.py index 63c19d5c4..89a5f7f47 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/http_read_credential.py +++ b/ansible_collections/cisco/dnac/plugins/modules/http_read_credential.py @@ -48,8 +48,8 @@ options: description: Http Read Credential's username. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery CreateHTTPReadCredentials description: Complete reference of the CreateHTTPReadCredentials API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/http_write_credential.py b/ansible_collections/cisco/dnac/plugins/modules/http_write_credential.py index 2db38bb61..611f40716 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/http_write_credential.py +++ b/ansible_collections/cisco/dnac/plugins/modules/http_write_credential.py @@ -48,8 +48,8 @@ options: description: Http Write Credential's username. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery CreateHTTPWriteCredentials description: Complete reference of the CreateHTTPWriteCredentials API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/integration_settings_instances_itsm.py b/ansible_collections/cisco/dnac/plugins/modules/integration_settings_instances_itsm.py index 1bc569d9f..86fa8bd76 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/integration_settings_instances_itsm.py +++ b/ansible_collections/cisco/dnac/plugins/modules/integration_settings_instances_itsm.py @@ -48,8 +48,8 @@ options: description: Name of the setting instance. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for ITSM Integration CreateITSMIntegrationSetting description: Complete reference of the CreateITSMIntegrationSetting API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/integration_settings_instances_itsm_info.py b/ansible_collections/cisco/dnac/plugins/modules/integration_settings_instances_itsm_info.py index fc6a5de7a..0519f5e5a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/integration_settings_instances_itsm_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/integration_settings_instances_itsm_info.py @@ -24,8 +24,8 @@ options: - InstanceId path parameter. Instance Id of the Integration setting instance. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for ITSM Integration GetITSMIntegrationSettingById description: Complete reference of the GetITSMIntegrationSettingById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/interface_info.py b/ansible_collections/cisco/dnac/plugins/modules/interface_info.py index 02d4dd14e..a6f0706ad 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/interface_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/interface_info.py @@ -24,8 +24,8 @@ options: - InterfaceUuid path parameter. Interface ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices LegitOperationsForInterface description: Complete reference of the LegitOperationsForInterface API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_detail_info.py b/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_detail_info.py index 344f22a2f..81a3203d6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_detail_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_detail_info.py @@ -28,8 +28,8 @@ options: - Name query parameter. Interface name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetInterfaceDetailsByDeviceIdAndInterfaceName description: Complete reference of the GetInterfaceDetailsByDeviceIdAndInterfaceName API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_info.py index 8fdc0e226..62bb64e03 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_info.py @@ -24,8 +24,8 @@ options: - DeviceId path parameter. Device ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetInterfaceInfoById description: Complete reference of the GetInterfaceInfoById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_range_info.py b/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_range_info.py index 0a3f1448b..2f2e3a6ea 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_range_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/interface_network_device_range_info.py @@ -32,8 +32,8 @@ options: - RecordsToReturn path parameter. Number of records to return. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceInterfacesBySpecifiedRange description: Complete reference of the GetDeviceInterfacesBySpecifiedRange API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/interface_operation_create.py b/ansible_collections/cisco/dnac/plugins/modules/interface_operation_create.py index 98995c1dc..1bc065c31 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/interface_operation_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/interface_operation_create.py @@ -33,8 +33,8 @@ options: description: Payload. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices ClearMacAddressTable description: Complete reference of the ClearMacAddressTable API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/interface_update.py b/ansible_collections/cisco/dnac/plugins/modules/interface_update.py index 20d7435e4..261703d48 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/interface_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/interface_update.py @@ -39,8 +39,8 @@ options: description: Voice Vlan Id. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices UpdateInterfaceDetails description: Complete reference of the UpdateInterfaceDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/inventory_intent.py b/ansible_collections/cisco/dnac/plugins/modules/inventory_intent.py index 675c11c91..af2572486 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/inventory_intent.py +++ b/ansible_collections/cisco/dnac/plugins/modules/inventory_intent.py @@ -307,8 +307,8 @@ options: version_added: 6.12.0 requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco Catalyst Center documentation for Devices AddDevice2 description: Complete reference of the AddDevice2 API. @@ -522,7 +522,7 @@ EXAMPLES = r""" - device_ip: "1.1.1.1" site_name: "Global/USA/San Francisco/BGL_18/floor_pnp" resync_retry_count: 200 - resync_interval: 2 + resync_retry_interval: 2 - device_ip: "2.2.2.2" site_name: "Global/USA/San Francisco/BGL_18/floor_test" resync_retry_count: 200 @@ -913,6 +913,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_all_user_defined_fields', + op_modifies=True, params={"name": field_name}, ) @@ -943,6 +944,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='create_user_defined_field', + op_modifies=True, params=udf, ) self.log("Received API response from 'create_user_defined_field': {0}".format(str(response)), "DEBUG") @@ -986,6 +988,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='add_user_defined_field_to_device', + op_modifies=True, params=udf_param_dict, ) self.log("Received API response from 'add_user_defined_field_to_device': {0}".format(str(response)), "DEBUG") @@ -1226,6 +1229,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) response = response.get('response', []) @@ -1360,6 +1364,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) response = response.get('response') @@ -1905,6 +1910,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_all_user_defined_fields', + op_modifies=True, params={"name": field_name}, ) self.log("Received API response from 'get_all_user_defined_fields': {0}".format(str(response)), "DEBUG") @@ -1918,11 +1924,12 @@ class DnacDevice(DnacBase): return udf_id - def mandatory_parameter(self): + def mandatory_parameter(self, device_to_add_in_ccc): """ Check for and validate mandatory parameters for adding network devices in Cisco Catalyst Center. Parameters: self (object): An instance of a class used for interacting with Cisco Cisco Catalyst Center. + device_to_add_in_ccc(list): List to device ip addresses to be added in Cisco Catalyst Center. Returns: dict: The input `config` dictionary if all mandatory parameters are present. Description: @@ -1947,12 +1954,12 @@ class DnacDevice(DnacBase): if mandatory_params_absent: self.status = "failed" - self.msg = "Required parameters {0} for adding devices are not present".format(str(mandatory_params_absent)) + self.msg = "Required parameters {0} for adding devices '{1}' are not present".format(str(mandatory_params_absent), str(device_to_add_in_ccc)) self.result['msg'] = self.msg self.log(self.msg, "ERROR") else: self.status = "success" - self.msg = "Required parameter for Adding the devices in Inventory are present." + self.msg = "Required parameters for adding the devices '{0}' to inventory are present.".format(str(device_to_add_in_ccc)) self.log(self.msg, "INFO") return self @@ -2091,6 +2098,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) @@ -2127,6 +2135,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"hostname": hostname} ) if response: @@ -2161,6 +2170,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"serialNumber": serial_number} ) if response: @@ -2195,6 +2205,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"macAddress": mac_address} ) if response: @@ -2233,6 +2244,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_interface_details', + op_modifies=True, params=interface_detail_params ) self.log("Received API response from 'get_interface_details': {0}".format(str(response)), "DEBUG") @@ -2246,44 +2258,44 @@ class DnacDevice(DnacBase): return interface_id except Exception as e: - error_message = "Error while fetching interface id for interface({0}) from Cisco Catalyst Center: {1}".format(interface_name, str(e)) - self.log(error_message, "ERROR") - self.msg = error_message self.status = "failed" + self.msg = "Failed to retrieve interface ID for interface({0}) from Cisco Catalyst Center: {1}".format(interface_name, str(e)) + self.log(self.msg, "ERROR") return self - def get_interface_from_ip(self, device_ip): - """ - Get the interface ID for a device in Cisco Catalyst Center based on its IP address. - Parameters: - self (object): An instance of a class used for interacting with Cisco Catalyst Center. - device_ip (str): The IP address of the device. - Returns: - str: The interface ID for the specified device. - Description: - The function sends a request to Cisco Catalyst Center to retrieve the interface information - for the device with the provided IP address and extracts the interface ID from the - response, and returns the interface ID. - """ + def get_interface_from_ip(self, device_ip): + """ + Get the interface ID for a device in Cisco Catalyst Center based on its IP address. + Parameters: + self (object): An instance of a class used for interacting with Cisco Catalyst Center. + device_ip (str): The IP address of the device. + Returns: + str: The interface ID for the specified device. + Description: + The function sends a request to Cisco Catalyst Center to retrieve the interface information + for the device with the provided IP address and extracts the interface ID from the + response, and returns the interface ID. + """ - try: - response = self.dnac._exec( - family="devices", - function='get_interface_by_ip', - params={"ip_address": device_ip} - ) - self.log("Received API response from 'get_interface_by_ip': {0}".format(str(response)), "DEBUG") - response = response.get("response") + try: + response = self.dnac._exec( + family="devices", + function='get_interface_by_ip', + op_modifies=True, + params={"ip_address": device_ip} + ) + self.log("Received API response from 'get_interface_by_ip': {0}".format(str(response)), "DEBUG") + response = response.get("response") - if response: - interface_id = response[0]["id"] - self.log("Fetch Interface Id for device '{0}' successfully !!".format(device_ip)) - return interface_id + if response: + interface_id = response[0]["id"] + self.log("Successfully retrieved Interface Id '{0}' for device '{1}'.".format(interface_id, device_ip), "DEBUG") + return interface_id - except Exception as e: - error_message = "Error while fetching Interface Id for device '{0}' from Cisco Catalyst Center: {1}".format(device_ip, str(e)) - self.log(error_message, "ERROR") - raise Exception(error_message) + except Exception as e: + error_message = "Error while fetching Interface Id for device '{0}' from Cisco Catalyst Center: {1}".format(device_ip, str(e)) + self.log(error_message, "ERROR") + raise Exception(error_message) def get_device_response(self, device_ip): """ @@ -2302,6 +2314,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) response = response.get('response')[0] @@ -2360,6 +2373,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_interface_details', + op_modifies=True, params=interface_detail_params ) self.log("Received API response from 'get_interface_details': {0}".format(str(response)), "DEBUG") @@ -2555,12 +2569,23 @@ class DnacDevice(DnacBase): """ # Call the Get interface details by device IP API and fetch the interface Id + is_update_occurred = False + response_list = [] for device_ip in device_to_update: interface_params = self.config[0].get('update_interface_details') interface_names_list = interface_params.get('interface_name') for interface_name in interface_names_list: device_id = self.get_device_ids([device_ip]) - interface_id = self.get_interface_from_id_and_name(device_id[0], interface_name) + interface_details = self.get_interface_from_id_and_name(device_id[0], interface_name) + # Check if interface_details is None or does not contain the 'id' key. + if interface_details is None or not interface_details.get('id'): + self.status = "failed" + self.msg = """Failed to retrieve interface details or the 'id' is missing for the device with identifier + '{0}' and interface '{1}'""".format(device_id[0], interface_name) + self.log(self.msg, "WARNING") + return self + + interface_id = interface_details['id'] self.check_return_status() # Now we call update interface details api with required parameter @@ -2574,11 +2599,11 @@ class DnacDevice(DnacBase): if response.get('role').upper() != "ACCESS": self.msg = "The action to clear the MAC Address table is only supported for devices with the ACCESS role." self.log(self.msg, "WARNING") - self.result['response'] = self.msg + response_list.append(self.msg) + self.result['changed'] = False else: deploy_mode = interface_params.get('deployment_mode', 'Deploy') - self.clear_mac_address(interface_id, deploy_mode, interface_name) - self.check_return_status() + self.clear_mac_address(interface_id, deploy_mode, interface_name).check_return_status() temp_params = { 'description': interface_params.get('description', ''), @@ -2591,6 +2616,25 @@ class DnacDevice(DnacBase): if value is not None: payload_params[key] = value + # Check if interface need update or not here + interface_needs_update = False + for key, value in payload_params.items(): + if key == "voiceVlanId": + if str(value) != interface_details['voiceVlan']: + interface_needs_update = True + else: + if str(value) != str(interface_details.get(key)): + interface_needs_update = True + + if not interface_needs_update: + self.status = "success" + self.result['changed'] = False + self.msg = """Interface details for the given interface '{0}' are already updated in the Cisco Catalyst Center for the + device '{1}'.""".format(interface_name, device_ip) + self.log(self.msg, "INFO") + self.result['response'] = self.msg + continue + update_interface_params = { 'payload': payload_params, 'interface_uuid': interface_id, @@ -2605,16 +2649,23 @@ class DnacDevice(DnacBase): self.log("Received API response from 'update_interface_details': {0}".format(str(response)), "DEBUG") if response and isinstance(response, dict): - task_id = response.get('response').get('taskId') + response = response.get('response') + if not response: + self.status = "failed" + self.msg = "Failed to update the interface because the 'update_interface_details' API returned an empty response." + self.log(self.msg, "ERROR") + continue + + task_id = response.get('taskId') while True: execution_details = self.get_task_details(task_id) if 'SUCCESS' in execution_details.get("progress"): self.status = "success" - self.result['changed'] = True - self.result['response'] = execution_details - self.msg = "Updated Interface Details for device '{0}' successfully".format(device_ip) + is_update_occurred = True + self.msg = "Successfully updated the Interface Details for device '{0}'.".format(device_ip) + response_list.append(self.msg) self.log(self.msg, "INFO") break elif execution_details.get("isError"): @@ -2634,6 +2685,10 @@ class DnacDevice(DnacBase): self.result['changed'] = False self.msg = "Port actions are only supported on user facing/access ports as it's not allowed or No Updation required" self.log(self.msg, "INFO") + response_list.append(self.msg) + + self.result['changed'] = is_update_occurred + self.result['response'] = response_list return self @@ -2711,8 +2766,8 @@ class DnacDevice(DnacBase): elif execution_details.get("endTime"): self.status = "success" self.result['changed'] = True - self.result['response'] = execution_details self.msg = "Device '{0}' present in Cisco Catalyst Center and have been updated successfully".format(device_ip) + self.result['response'] = self.msg self.log(self.msg, "INFO") break @@ -2737,6 +2792,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) response = response.get('response') @@ -2924,7 +2980,8 @@ class DnacDevice(DnacBase): device_params.pop('snmpPrivPassphrase', None) device_params.pop('snmpPrivProtocol', None) - self.mandatory_parameter().check_return_status() + device_to_add_in_ccc = device_params['ipAddress'] + self.mandatory_parameter(device_to_add_in_ccc).check_return_status() try: response = self.dnac._exec( family="devices", @@ -2982,6 +3039,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) response = response.get('response')[0] @@ -3161,6 +3219,15 @@ class DnacDevice(DnacBase): if not playbook_params['snmpROCommunity']: playbook_params['snmpROCommunity'] = device_data.get('snmp_community', None) + if not playbook_params['snmpRWCommunity']: + playbook_params['snmpRWCommunity'] = device_data.get('snmp_write_community', None) + + if not playbook_params['httpUserName']: + playbook_params['httpUserName'] = device_data.get('http_config_username', None) + if not playbook_params['httpPassword']: + playbook_params['httpPassword'] = device_data.get('http_config_password', None) + if not playbook_params['httpPort']: + playbook_params['httpPort'] = device_data.get('http_port', None) try: if playbook_params['updateMgmtIPaddressList']: @@ -3306,6 +3373,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='delete_user_defined_field', + op_modifies=True, params={"id": udf_id}, ) if response and isinstance(response, dict): @@ -3356,6 +3424,7 @@ class DnacDevice(DnacBase): prov_respone = self.dnac._exec( family="sda", function='get_provisioned_wired_device', + op_modifies=True, params=provision_params, ) @@ -3363,6 +3432,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="sda", function='delete_provisioned_wired_device', + op_modifies=True, params=provision_params, ) executionid = response.get("executionId") @@ -3389,6 +3459,7 @@ class DnacDevice(DnacBase): response = self.dnac._exec( family="devices", function='delete_device_by_id', + op_modifies=True, params=delete_params, ) diff --git a/ansible_collections/cisco/dnac/plugins/modules/inventory_workflow_manager.py b/ansible_collections/cisco/dnac/plugins/modules/inventory_workflow_manager.py index 3eda0e2cc..17f63f475 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/inventory_workflow_manager.py +++ b/ansible_collections/cisco/dnac/plugins/modules/inventory_workflow_manager.py @@ -307,8 +307,8 @@ options: version_added: 6.12.0 requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco Catalyst Center documentation for Devices AddDevice2 description: Complete reference of the AddDevice2 API. @@ -522,7 +522,7 @@ EXAMPLES = r""" - device_ip: "1.1.1.1" site_name: "Global/USA/San Francisco/BGL_18/floor_pnp" resync_retry_count: 200 - resync_interval: 2 + resync_retry_interval: 2 - device_ip: "2.2.2.2" site_name: "Global/USA/San Francisco/BGL_18/floor_test" resync_retry_count: 200 @@ -752,7 +752,7 @@ class Inventory(DnacBase): 'mac_address_list': {'type': 'list', 'elements': 'str'}, 'netconf_port': {'type': 'str'}, 'password': {'type': 'str'}, - 'serial_number': {'type': 'str'}, + 'serial_number_list': {'type': 'list', 'elements': 'str'}, 'snmp_auth_passphrase': {'type': 'str'}, 'snmp_auth_protocol': {'default': "SHA", 'type': 'str'}, 'snmp_mode': {'type': 'str'}, @@ -912,6 +912,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_all_user_defined_fields', + op_modifies=True, params={"name": field_name}, ) @@ -942,6 +943,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='create_user_defined_field', + op_modifies=True, params=udf, ) self.log("Received API response from 'create_user_defined_field': {0}".format(str(response)), "DEBUG") @@ -984,6 +986,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='add_user_defined_field_to_device', + op_modifies=True, params=udf_param_dict, ) self.log("Received API response from 'add_user_defined_field_to_device': {0}".format(str(response)), "DEBUG") @@ -1224,6 +1227,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) response = response.get('response', []) @@ -1358,6 +1362,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) response = response.get('response') @@ -1897,6 +1902,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_all_user_defined_fields', + op_modifies=True, params={"name": field_name}, ) self.log("Received API response from 'get_all_user_defined_fields': {0}".format(str(response)), "DEBUG") @@ -1910,11 +1916,12 @@ class Inventory(DnacBase): return udf_id - def mandatory_parameter(self): + def mandatory_parameter(self, device_to_add_in_ccc): """ Check for and validate mandatory parameters for adding network devices in Cisco Catalyst Center. Parameters: self (object): An instance of a class used for interacting with Cisco Cisco Catalyst Center. + device_to_add_in_ccc(list): List to device ip addresses to be added in Cisco Catalyst Center. Returns: dict: The input `config` dictionary if all mandatory parameters are present. Description: @@ -1939,12 +1946,12 @@ class Inventory(DnacBase): if mandatory_params_absent: self.status = "failed" - self.msg = "Required parameters {0} for adding devices are not present".format(str(mandatory_params_absent)) + self.msg = "Required parameters {0} for adding devices '{1}' are not present".format(str(mandatory_params_absent), str(device_to_add_in_ccc)) self.result['msg'] = self.msg self.log(self.msg, "ERROR") else: self.status = "success" - self.msg = "Required parameter for Adding the devices in Inventory are present." + self.msg = "Required parameters for adding the devices '{0}' to inventory are present.".format(str(device_to_add_in_ccc)) self.log(self.msg, "INFO") return self @@ -2044,7 +2051,6 @@ class Inventory(DnacBase): "httpSecure": params.get("http_secure"), "httpUserName": params.get("http_username"), "netconfPort": params.get("netconf_port"), - "serialNumber": params.get("serial_number"), "snmpVersion": params.get("snmp_version"), "type": params.get("type"), "updateMgmtIPaddressList": params.get("update_mgmt_ipaddresslist"), @@ -2084,6 +2090,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) @@ -2120,6 +2127,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"hostname": hostname} ) if response: @@ -2154,6 +2162,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"serialNumber": serial_number} ) if response: @@ -2188,6 +2197,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"macAddress": mac_address} ) if response: @@ -2226,6 +2236,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_interface_details', + op_modifies=True, params=interface_detail_params ) self.log("Received API response from 'get_interface_details': {0}".format(str(response)), "DEBUG") @@ -2236,47 +2247,47 @@ class Inventory(DnacBase): interface_id = response["id"] self.log("""Successfully fetched interface ID ({0}) by using device id {1} and interface name {2}.""" .format(interface_id, device_id, interface_name), "INFO") - return interface_id + return response except Exception as e: - error_message = "Error while fetching interface id for interface({0}) from Cisco Catalyst Center: {1}".format(interface_name, str(e)) - self.log(error_message, "ERROR") - self.msg = error_message self.status = "failed" + self.msg = "Failed to retrieve interface ID for interface({0}) from Cisco Catalyst Center: {1}".format(interface_name, str(e)) + self.log(self.msg, "ERROR") return self - def get_interface_from_ip(self, device_ip): - """ - Get the interface ID for a device in Cisco Catalyst Center based on its IP address. - Parameters: - self (object): An instance of a class used for interacting with Cisco Catalyst Center. - device_ip (str): The IP address of the device. - Returns: - str: The interface ID for the specified device. - Description: - The function sends a request to Cisco Catalyst Center to retrieve the interface information - for the device with the provided IP address and extracts the interface ID from the - response, and returns the interface ID. - """ + def get_interface_from_ip(self, device_ip): + """ + Get the interface ID for a device in Cisco Catalyst Center based on its IP address. + Parameters: + self (object): An instance of a class used for interacting with Cisco Catalyst Center. + device_ip (str): The IP address of the device. + Returns: + str: The interface ID for the specified device. + Description: + The function sends a request to Cisco Catalyst Center to retrieve the interface information + for the device with the provided IP address and extracts the interface ID from the + response, and returns the interface ID. + """ - try: - response = self.dnac._exec( - family="devices", - function='get_interface_by_ip', - params={"ip_address": device_ip} - ) - self.log("Received API response from 'get_interface_by_ip': {0}".format(str(response)), "DEBUG") - response = response.get("response") + try: + response = self.dnac._exec( + family="devices", + function='get_interface_by_ip', + op_modifies=True, + params={"ip_address": device_ip} + ) + self.log("Received API response from 'get_interface_by_ip': {0}".format(str(response)), "DEBUG") + response = response.get("response") - if response: - interface_id = response[0]["id"] - self.log("Fetch Interface Id for device '{0}' successfully !!".format(device_ip)) - return interface_id + if response: + interface_id = response[0]["id"] + self.log("Successfully retrieved Interface Id '{0}' for device '{1}'.".format(interface_id, device_ip), "DEBUG") + return interface_id - except Exception as e: - error_message = "Error while fetching Interface Id for device '{0}' from Cisco Catalyst Center: {1}".format(device_ip, str(e)) - self.log(error_message, "ERROR") - raise Exception(error_message) + except Exception as e: + error_message = "Error while fetching Interface Id for device '{0}' from Cisco Catalyst Center: {1}".format(device_ip, str(e)) + self.log(error_message, "ERROR") + raise Exception(error_message) def get_device_response(self, device_ip): """ @@ -2295,6 +2306,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) response = response.get('response')[0] @@ -2353,6 +2365,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_interface_details', + op_modifies=True, params=interface_detail_params ) self.log("Received API response from 'get_interface_details': {0}".format(str(response)), "DEBUG") @@ -2548,12 +2561,23 @@ class Inventory(DnacBase): """ # Call the Get interface details by device IP API and fetch the interface Id + is_update_occurred = False + response_list = [] for device_ip in device_to_update: interface_params = self.config[0].get('update_interface_details') interface_names_list = interface_params.get('interface_name') for interface_name in interface_names_list: device_id = self.get_device_ids([device_ip]) - interface_id = self.get_interface_from_id_and_name(device_id[0], interface_name) + interface_details = self.get_interface_from_id_and_name(device_id[0], interface_name) + # Check if interface_details is None or does not contain the 'id' key. + if interface_details is None or not interface_details.get('id'): + self.status = "failed" + self.msg = """Failed to retrieve interface details or the 'id' is missing for the device with identifier + '{0}' and interface '{1}'""".format(device_id[0], interface_name) + self.log(self.msg, "WARNING") + return self + + interface_id = interface_details['id'] self.check_return_status() # Now we call update interface details api with required parameter @@ -2567,11 +2591,11 @@ class Inventory(DnacBase): if response.get('role').upper() != "ACCESS": self.msg = "The action to clear the MAC Address table is only supported for devices with the ACCESS role." self.log(self.msg, "WARNING") - self.result['response'] = self.msg + response_list.append(self.msg) + self.result['changed'] = False else: deploy_mode = interface_params.get('deployment_mode', 'Deploy') - self.clear_mac_address(interface_id, deploy_mode, interface_name) - self.check_return_status() + self.clear_mac_address(interface_id, deploy_mode, interface_name).check_return_status() temp_params = { 'description': interface_params.get('description', ''), @@ -2584,6 +2608,25 @@ class Inventory(DnacBase): if value is not None: payload_params[key] = value + # Check if interface need update or not here + interface_needs_update = False + for key, value in payload_params.items(): + if key == "voiceVlanId": + if str(value) != interface_details['voiceVlan']: + interface_needs_update = True + else: + if str(value) != str(interface_details.get(key)): + interface_needs_update = True + + if not interface_needs_update: + self.status = "success" + self.result['changed'] = False + self.msg = """Interface details for the given interface '{0}' are already updated in the Cisco Catalyst Center for the + device '{1}'.""".format(interface_name, device_ip) + self.log(self.msg, "INFO") + response_list.append(self.msg) + continue + update_interface_params = { 'payload': payload_params, 'interface_uuid': interface_id, @@ -2598,16 +2641,23 @@ class Inventory(DnacBase): self.log("Received API response from 'update_interface_details': {0}".format(str(response)), "DEBUG") if response and isinstance(response, dict): - task_id = response.get('response').get('taskId') + response = response.get('response') + if not response: + self.status = "failed" + self.msg = "Failed to update the interface because the 'update_interface_details' API returned an empty response." + self.log(self.msg, "ERROR") + continue + + task_id = response.get('taskId') while True: execution_details = self.get_task_details(task_id) if 'SUCCESS' in execution_details.get("progress"): self.status = "success" - self.result['changed'] = True - self.result['response'] = execution_details - self.msg = "Updated Interface Details for device '{0}' successfully".format(device_ip) + is_update_occurred = True + self.msg = "Successfully updated the Interface Details for device '{0}'.".format(device_ip) + response_list.append(self.msg) self.log(self.msg, "INFO") break elif execution_details.get("isError"): @@ -2627,6 +2677,10 @@ class Inventory(DnacBase): self.result['changed'] = False self.msg = "Port actions are only supported on user facing/access ports as it's not allowed or No Updation required" self.log(self.msg, "INFO") + response_list.append(self.msg) + + self.result['changed'] = is_update_occurred + self.result['response'] = response_list return self @@ -2704,8 +2758,8 @@ class Inventory(DnacBase): elif execution_details.get("endTime"): self.status = "success" self.result['changed'] = True - self.result['response'] = execution_details self.msg = "Device '{0}' present in Cisco Catalyst Center and have been updated successfully".format(device_ip) + self.result['response'] = self.msg self.log(self.msg, "INFO") break @@ -2730,6 +2784,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) response = response.get('response') @@ -2916,7 +2971,8 @@ class Inventory(DnacBase): device_params.pop('snmpPrivPassphrase', None) device_params.pop('snmpPrivProtocol', None) - self.mandatory_parameter().check_return_status() + device_to_add_in_ccc = device_params['ipAddress'] + self.mandatory_parameter(device_to_add_in_ccc).check_return_status() try: response = self.dnac._exec( family="devices", @@ -2974,6 +3030,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"managementIpAddress": device_ip} ) response = response.get('response')[0] @@ -3154,6 +3211,15 @@ class Inventory(DnacBase): if not playbook_params['snmpROCommunity']: playbook_params['snmpROCommunity'] = device_data.get('snmp_community', None) + if not playbook_params['snmpRWCommunity']: + playbook_params['snmpRWCommunity'] = device_data.get('snmp_write_community', None) + + if not playbook_params['httpUserName']: + playbook_params['httpUserName'] = device_data.get('http_config_username', None) + if not playbook_params['httpPassword']: + playbook_params['httpPassword'] = device_data.get('http_config_password', None) + if not playbook_params['httpPort']: + playbook_params['httpPort'] = device_data.get('http_port', None) try: if playbook_params['updateMgmtIPaddressList']: @@ -3299,6 +3365,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='delete_user_defined_field', + op_modifies=True, params={"id": udf_id}, ) if response and isinstance(response, dict): @@ -3349,6 +3416,7 @@ class Inventory(DnacBase): prov_respone = self.dnac._exec( family="sda", function='get_provisioned_wired_device', + op_modifies=True, params=provision_params, ) @@ -3356,6 +3424,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="sda", function='delete_provisioned_wired_device', + op_modifies=True, params=provision_params, ) executionid = response.get("executionId") @@ -3383,6 +3452,7 @@ class Inventory(DnacBase): response = self.dnac._exec( family="devices", function='delete_device_by_id', + op_modifies=True, params=delete_params, ) diff --git a/ansible_collections/cisco/dnac/plugins/modules/issues_enrichment_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/issues_enrichment_details_info.py index e81d3f2d9..58d5c787c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/issues_enrichment_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/issues_enrichment_details_info.py @@ -22,8 +22,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Issues GetIssueEnrichmentDetails description: Complete reference of the GetIssueEnrichmentDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/issues_info.py b/ansible_collections/cisco/dnac/plugins/modules/issues_info.py index b94e0f1cf..f6131d2b8 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/issues_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/issues_info.py @@ -58,8 +58,8 @@ options: - IssueStatus query parameter. The issue's status value (One of ACTIVE, IGNORED, RESOLVED). type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Issues Issues description: Complete reference of the Issues API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/itsm_cmdb_sync_status_info.py b/ansible_collections/cisco/dnac/plugins/modules/itsm_cmdb_sync_status_info.py index ba5721124..2b3a47ea2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/itsm_cmdb_sync_status_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/itsm_cmdb_sync_status_info.py @@ -34,8 +34,8 @@ options: - Date query parameter. Provide date in "YYYY-MM-DD" format. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for ITSM GetCMDBSyncStatus description: Complete reference of the GetCMDBSyncStatus API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/itsm_integration_events_failed_info.py b/ansible_collections/cisco/dnac/plugins/modules/itsm_integration_events_failed_info.py index b02e8dc1d..c2a6dca63 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/itsm_integration_events_failed_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/itsm_integration_events_failed_info.py @@ -24,8 +24,8 @@ options: - InstanceId query parameter. Instance Id of the failed event as in the Runtime Dashboard. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for ITSM GetFailedITSMEvents description: Complete reference of the GetFailedITSMEvents API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/itsm_integration_events_retry.py b/ansible_collections/cisco/dnac/plugins/modules/itsm_integration_events_retry.py index 201f6891d..64c97fe80 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/itsm_integration_events_retry.py +++ b/ansible_collections/cisco/dnac/plugins/modules/itsm_integration_events_retry.py @@ -24,8 +24,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for ITSM RetryIntegrationEvents description: Complete reference of the RetryIntegrationEvents API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_count_info.py index d172a752c..e275eaf2c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_count_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for LAN Automation LANAutomationSessionCount description: Complete reference of the LANAutomationSessionCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_create.py b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_create.py index e87775b94..b9c04f38d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_create.py @@ -63,8 +63,8 @@ options: type: bool type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for LAN Automation LANAutomationStart description: Complete reference of the LANAutomationStart API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_delete.py b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_delete.py index d4a8a6651..d31484c67 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_delete.py +++ b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_delete.py @@ -20,8 +20,8 @@ options: description: Id path parameter. LAN Automation id can be obtained from /dna/intent/api/v1/lan-automation/status. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for LAN Automation LANAutomationStop description: Complete reference of the LANAutomationStop API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_log_by_serial_number_info.py b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_log_by_serial_number_info.py index c81f24292..fa75bec89 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_log_by_serial_number_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_log_by_serial_number_info.py @@ -37,8 +37,8 @@ options: the remaining logs, please leave the query parameter blank. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for LAN Automation LANAutomationLogsForIndividualDevices description: Complete reference of the LANAutomationLogsForIndividualDevices API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_log_info.py b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_log_info.py index ede147df9..6a8aa1291 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_log_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_log_info.py @@ -34,8 +34,8 @@ options: - Id path parameter. LAN Automation session identifier. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for LAN Automation LANAutomationLog description: Complete reference of the LANAutomationLog API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_status_info.py b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_status_info.py index 62ad0a371..3680a97eb 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/lan_automation_status_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/lan_automation_status_info.py @@ -34,8 +34,8 @@ options: - Id path parameter. LAN Automation session identifier. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for LAN Automation LANAutomationStatus description: Complete reference of the LANAutomationStatus API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/license_device_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/license_device_count_info.py index efee0085a..0ec3976ac 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/license_device_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/license_device_count_info.py @@ -40,8 +40,8 @@ options: - Smart_account_id query parameter. Smart account id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Licenses DeviceCountDetails2 description: Complete reference of the DeviceCountDetails2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/license_device_deregistration.py b/ansible_collections/cisco/dnac/plugins/modules/license_device_deregistration.py index aeceb3470..ddf70df11 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/license_device_deregistration.py +++ b/ansible_collections/cisco/dnac/plugins/modules/license_device_deregistration.py @@ -21,8 +21,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Licenses DeviceDeregistration2 description: Complete reference of the DeviceDeregistration2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/license_device_license_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/license_device_license_details_info.py index 5410196ca..965c577e3 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/license_device_license_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/license_device_license_details_info.py @@ -24,8 +24,8 @@ options: - Device_uuid path parameter. Id of device. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Licenses DeviceLicenseDetails2 description: Complete reference of the DeviceLicenseDetails2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/license_device_license_summary_info.py b/ansible_collections/cisco/dnac/plugins/modules/license_device_license_summary_info.py index ae872d095..c2806d39a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/license_device_license_summary_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/license_device_license_summary_info.py @@ -60,8 +60,8 @@ options: - Device_uuid query parameter. Id of device. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Licenses DeviceLicenseSummary2 description: Complete reference of the DeviceLicenseSummary2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/license_device_registration.py b/ansible_collections/cisco/dnac/plugins/modules/license_device_registration.py index 6d7f5b955..de878f790 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/license_device_registration.py +++ b/ansible_collections/cisco/dnac/plugins/modules/license_device_registration.py @@ -24,8 +24,8 @@ options: description: Virtual_account_name path parameter. Name of virtual account. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Licenses DeviceRegistration2 description: Complete reference of the DeviceRegistration2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/license_smart_account_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/license_smart_account_details_info.py index b70fa56c0..70685c2ed 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/license_smart_account_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/license_smart_account_details_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Licenses SmartAccountDetails description: Complete reference of the SmartAccountDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/license_term_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/license_term_details_info.py index bdf26471d..d0bf73d4d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/license_term_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/license_term_details_info.py @@ -34,8 +34,8 @@ options: - Device_type query parameter. Type of device like router, switch, wireless or ise. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Licenses LicenseTermDetails2 description: Complete reference of the LicenseTermDetails2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/license_usage_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/license_usage_details_info.py index d315848c9..3fd4d5466 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/license_usage_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/license_usage_details_info.py @@ -34,8 +34,8 @@ options: - Device_type query parameter. Type of device like router, switch, wireless or ise. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Licenses LicenseUsageDetails2 description: Complete reference of the LicenseUsageDetails2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/license_virtual_account_change.py b/ansible_collections/cisco/dnac/plugins/modules/license_virtual_account_change.py index 9e647aefc..762e01540 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/license_virtual_account_change.py +++ b/ansible_collections/cisco/dnac/plugins/modules/license_virtual_account_change.py @@ -27,8 +27,8 @@ options: description: Virtual_account_name path parameter. Name of target virtual account. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Licenses ChangeVirtualAccount2 description: Complete reference of the ChangeVirtualAccount2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/license_virtual_account_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/license_virtual_account_details_info.py index 476f58758..72a2f1041 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/license_virtual_account_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/license_virtual_account_details_info.py @@ -24,8 +24,8 @@ options: - Smart_account_id path parameter. Id of smart account. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Licenses VirtualAccountDetails2 description: Complete reference of the VirtualAccountDetails2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/netconf_credential.py b/ansible_collections/cisco/dnac/plugins/modules/netconf_credential.py index a8cec0942..d75908aa6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/netconf_credential.py +++ b/ansible_collections/cisco/dnac/plugins/modules/netconf_credential.py @@ -39,8 +39,8 @@ options: description: Netconf Credential's netconfPort. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery CreateNetconfCredentials description: Complete reference of the CreateNetconfCredentials API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_create.py b/ansible_collections/cisco/dnac/plugins/modules/network_create.py index 9c7abda29..8bf553aba 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_create.py @@ -134,8 +134,8 @@ options: the network settings. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings CreateNetwork description: Complete reference of the CreateNetwork API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device.py b/ansible_collections/cisco/dnac/plugins/modules/network_device.py index e103dbbf1..2fca16035 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device.py @@ -117,8 +117,8 @@ options: description: Network Device's userName. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices AddDevice2 description: Complete reference of the AddDevice2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_by_ip_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_by_ip_info.py index 151347c57..502db8ba4 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_by_ip_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_by_ip_info.py @@ -24,8 +24,8 @@ options: - IpAddress path parameter. Device IP address. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetNetworkDeviceByIP description: Complete reference of the GetNetworkDeviceByIP API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_by_serial_number_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_by_serial_number_info.py index 4248aee8c..d40497b17 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_by_serial_number_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_by_serial_number_info.py @@ -24,8 +24,8 @@ options: - SerialNumber path parameter. Device serial number. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceBySerialNumber description: Complete reference of the GetDeviceBySerialNumber API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_chassis_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_chassis_details_info.py index 6d540eae8..c5b34a498 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_chassis_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_chassis_details_info.py @@ -24,8 +24,8 @@ options: - DeviceId path parameter. Device ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetChassisDetailsForDevice description: Complete reference of the GetChassisDetailsForDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_config_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_config_count_info.py index e2b2a2449..3d2c900b0 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_config_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_config_count_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceConfigCount description: Complete reference of the GetDeviceConfigCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_config_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_config_info.py index b2832bb77..6810fd6db 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_config_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_config_info.py @@ -26,8 +26,8 @@ options: - NetworkDeviceId path parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceConfigById description: Complete reference of the GetDeviceConfigById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_count_info.py index 3a865dacb..cdcf87b7c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_count_info.py @@ -28,8 +28,8 @@ options: - DeviceId path parameter. Device ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceCount2 description: Complete reference of the GetDeviceCount2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_custom_prompt.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_custom_prompt.py index ab60bde8b..38fbc4eaa 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_custom_prompt.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_custom_prompt.py @@ -25,8 +25,8 @@ options: description: Username Prompt. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for System Settings CustomPromptPOSTAPI description: Complete reference of the CustomPromptPOSTAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_custom_prompt_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_custom_prompt_info.py index 96a9c74bc..cd3d02bdd 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_custom_prompt_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_custom_prompt_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for System Settings CustomPromptSupportGETAPI description: Complete reference of the CustomPromptSupportGETAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_equipment_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_equipment_info.py index 0e5cd5c64..7bc3a6733 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_equipment_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_equipment_info.py @@ -30,8 +30,8 @@ options: If no type is mentioned, All equipments are fetched for the device. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices ReturnPowerSupplyFanDetailsForTheGivenDevice description: Complete reference of the ReturnPowerSupplyFanDetailsForTheGivenDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_export.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_export.py index 93bb723e6..c1bf8d245 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_export.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_export.py @@ -34,8 +34,8 @@ options: description: Network Device Export's password. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices ExportDeviceList description: Complete reference of the ExportDeviceList API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_functional_capability_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_functional_capability_info.py index 60d2c04b2..1d88047ab 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_functional_capability_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_functional_capability_info.py @@ -37,8 +37,8 @@ options: - Id path parameter. Functional Capability UUID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetFunctionalCapabilityById description: Complete reference of the GetFunctionalCapabilityById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_global_polling_interval_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_global_polling_interval_info.py index 4d1df2f6e..41bced4d1 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_global_polling_interval_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_global_polling_interval_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetPollingIntervalForAllDevices description: Complete reference of the GetPollingIntervalForAllDevices API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_info.py index 49d427c07..7dae65a3f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_info.py @@ -190,8 +190,8 @@ options: - Limit query parameter. 1 <= limit <= 500 max. No. Of devices to be returned in the result. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceByID description: Complete reference of the GetDeviceByID API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_interface_neighbor_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_interface_neighbor_info.py index 9b34f8a98..da4550a9e 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_interface_neighbor_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_interface_neighbor_info.py @@ -28,8 +28,8 @@ options: - InterfaceUuid path parameter. Instanceuuid of interface. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetConnectedDeviceDetail description: Complete reference of the GetConnectedDeviceDetail API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_interface_poe_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_interface_poe_info.py index 3da01e141..2c525456f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_interface_poe_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_interface_poe_info.py @@ -31,8 +31,8 @@ options: - InterfaceNameList query parameter. Comma seperated interface names. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices ReturnsPOEInterfaceDetailsForTheDevice description: Complete reference of the ReturnsPOEInterfaceDetailsForTheDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_inventory_insight_link_mismatch_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_inventory_insight_link_mismatch_info.py index 23f7c6c57..ee282e771 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_inventory_insight_link_mismatch_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_inventory_insight_link_mismatch_info.py @@ -44,8 +44,8 @@ options: - Order query parameter. Order. Value can be asc or desc. Default value is asc. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices InventoryInsightDeviceLinkMismatchAPI description: Complete reference of the InventoryInsightDeviceLinkMismatchAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_lexicographically_sorted_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_lexicographically_sorted_info.py index 04e1ebfce..cd7473692 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_lexicographically_sorted_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_lexicographically_sorted_info.py @@ -108,8 +108,8 @@ options: - Limit query parameter. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceValuesThatMatchFullyOrPartiallyAnAttribute description: Complete reference of the GetDeviceValuesThatMatchFullyOrPartiallyAnAttribute API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_linecard_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_linecard_details_info.py index a2267a752..6ec120ded 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_linecard_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_linecard_details_info.py @@ -24,8 +24,8 @@ options: - DeviceUuid path parameter. Instanceuuid of device. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetLinecardDetails description: Complete reference of the GetLinecardDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_meraki_organization_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_meraki_organization_info.py index a9bde346e..a8bc1ddeb 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_meraki_organization_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_meraki_organization_info.py @@ -24,8 +24,8 @@ options: - Id path parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetOrganizationListForMeraki description: Complete reference of the GetOrganizationListForMeraki API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_module_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_module_count_info.py index 6bddca67e..5969b346e 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_module_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_module_count_info.py @@ -44,8 +44,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetModuleCount description: Complete reference of the GetModuleCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_module_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_module_info.py index d9924fc15..be3bd1a55 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_module_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_module_info.py @@ -58,8 +58,8 @@ options: - Id path parameter. Module id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetModuleInfoById description: Complete reference of the GetModuleInfoById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_poe_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_poe_info.py index ca99bdd37..4f78d1e70 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_poe_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_poe_info.py @@ -24,8 +24,8 @@ options: - DeviceUuid path parameter. Uuid of the device. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices POEDetails description: Complete reference of the POEDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_polling_interval_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_polling_interval_info.py index 36bfbce02..fc4707d26 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_polling_interval_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_polling_interval_info.py @@ -24,8 +24,8 @@ options: - Id path parameter. Device ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetPollingIntervalById description: Complete reference of the GetPollingIntervalById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_range_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_range_info.py index 2aa2f9e80..5ea4572f4 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_range_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_range_info.py @@ -30,8 +30,8 @@ options: - RecordsToReturn path parameter. Number of records to return 1<= recordsToReturn <= 500. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetNetworkDeviceByPaginationRange description: Complete reference of the GetNetworkDeviceByPaginationRange API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_register_for_wsa_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_register_for_wsa_info.py index 7997fa15f..29c483aa2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_register_for_wsa_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_register_for_wsa_info.py @@ -30,8 +30,8 @@ options: - Macaddress query parameter. Mac addres of the device. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDevicesRegisteredForWSANotification description: Complete reference of the GetDevicesRegisteredForWSANotification API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_stack_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_stack_details_info.py index 4f8912bc9..5cdaf55ad 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_stack_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_stack_details_info.py @@ -24,8 +24,8 @@ options: - DeviceId path parameter. Device ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetStackDetailsForDevice description: Complete reference of the GetStackDetailsForDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_summary_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_summary_info.py index 4aa0c2940..3096ba1cf 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_summary_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_summary_info.py @@ -24,8 +24,8 @@ options: - Id path parameter. Device ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceSummary description: Complete reference of the GetDeviceSummary API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_supervisor_card_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_supervisor_card_details_info.py index f4547f295..f9db5bdd7 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_supervisor_card_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_supervisor_card_details_info.py @@ -24,8 +24,8 @@ options: - DeviceUuid path parameter. Instanceuuid of device. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetSupervisorCardDetail description: Complete reference of the GetSupervisorCardDetail API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_sync.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_sync.py index 255d81e12..526b8d239 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_sync.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_sync.py @@ -27,8 +27,8 @@ options: elements: dict type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices SyncDevices description: Complete reference of the SyncDevices API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_update_role.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_update_role.py index 16972e2ee..14ded7ec1 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_update_role.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_update_role.py @@ -26,8 +26,8 @@ options: description: Network Device Update Role's roleSource. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices UpdateDeviceRole description: Complete reference of the UpdateDeviceRole API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_user_defined_field.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_user_defined_field.py index b350e69dd..8d0ddc17e 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_user_defined_field.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_user_defined_field.py @@ -28,8 +28,8 @@ options: description: Name of UDF. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices CreateUserDefinedField description: Complete reference of the CreateUserDefinedField API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_user_defined_field_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_user_defined_field_info.py index d72f5955e..967114272 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_user_defined_field_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_user_defined_field_info.py @@ -30,8 +30,8 @@ options: - Name query parameter. Comma-seperated name(s) used for search/filtering. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetAllUserDefinedFields description: Complete reference of the GetAllUserDefinedFields API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_vlan_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_vlan_info.py index d236beee3..132c102c7 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_vlan_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_vlan_info.py @@ -28,8 +28,8 @@ options: - InterfaceType query parameter. Vlan assocaited with sub-interface. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetDeviceInterfaceVLANs description: Complete reference of the GetDeviceInterfaceVLANs API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_wireless_lan_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_wireless_lan_info.py index 29615e66d..f08b1bcca 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_wireless_lan_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_wireless_lan_info.py @@ -24,8 +24,8 @@ options: - Id path parameter. Device ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetWirelessLanControllerDetailsById description: Complete reference of the GetWirelessLanControllerDetailsById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_device_with_snmp_v3_des_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_device_with_snmp_v3_des_info.py index 4fd5157c5..b3b6a55d6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_device_with_snmp_v3_des_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_device_with_snmp_v3_des_info.py @@ -42,8 +42,8 @@ options: - Order query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices ReturnsDevicesAddedToCiscoDNACenterWithSnmpV3DES description: Complete reference of the ReturnsDevicesAddedToCiscoDNACenterWithSnmpV3DES API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_info.py index 682a9b5b1..0aa99bde5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_info.py @@ -24,8 +24,8 @@ options: - SiteId query parameter. Site id to get the network settings associated with the site. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings GetNetwork description: Complete reference of the GetNetwork API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_settings_intent.py b/ansible_collections/cisco/dnac/plugins/modules/network_settings_intent.py index 49d6fa5d4..a86d342cf 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_settings_intent.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_settings_intent.py @@ -318,7 +318,7 @@ options: type: str requirements: - dnacentersdk == 2.4.5 -- python >= 3.5 +- python >= 3.9 notes: - SDK Method used are network_settings.NetworkSettings.create_global_pool, @@ -705,6 +705,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="sites", function='get_site', + op_modifies=True, params={"name": site_name}, ) self.log("Received API response from 'get_site': {0}".format(response), "DEBUG") @@ -856,6 +857,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function='get_network_v2', + op_modifies=True, params={"site_id": site_id} ) self.log("Received API response from 'get_network_v2': {0}".format(response), "DEBUG") @@ -1061,6 +1063,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="get_reserve_ip_subpool", + op_modifies=True, params={"siteId": site_id} ) if not isinstance(response, dict): @@ -1748,6 +1751,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="create_global_pool", + op_modifies=True, params=pool_params, ) self.check_execution_response_status(response).check_return_status() @@ -1793,6 +1797,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="update_global_pool", + op_modifies=True, params=pool_params, ) @@ -1836,6 +1841,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="reserve_ip_subpool", + op_modifies=True, params=reserve_params, ) self.check_execution_response_status(response).check_return_status() @@ -1868,6 +1874,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="update_reserve_ip_subpool", + op_modifies=True, params=reserve_params, ) self.check_execution_response_status(response).check_return_status() @@ -1915,6 +1922,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function='update_network_v2', + op_modifies=True, params=net_params, ) self.log("Received API response of 'update_network_v2': {0}".format(response), "DEBUG") @@ -1978,6 +1986,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="release_reserve_ip_subpool", + op_modifies=True, params={"id": _id}, ) self.check_execution_response_status(response).check_return_status() @@ -2014,6 +2023,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="delete_global_ip_pool", + op_modifies=True, params={"id": self.have.get("globalPool").get("id")}, ) diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_settings_workflow_manager.py b/ansible_collections/cisco/dnac/plugins/modules/network_settings_workflow_manager.py index bbae36463..cdf7b0634 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_settings_workflow_manager.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_settings_workflow_manager.py @@ -318,7 +318,7 @@ options: type: str requirements: - dnacentersdk == 2.4.5 -- python >= 3.5 +- python >= 3.9 notes: - SDK Method used are network_settings.NetworkSettings.create_global_pool, @@ -701,6 +701,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="sites", function='get_site', + op_modifies=True, params={"name": site_name}, ) self.log("Received API response from 'get_site': {0}".format(response), "DEBUG") @@ -852,6 +853,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function='get_network_v2', + op_modifies=True, params={"site_id": site_id} ) self.log("Received API response from 'get_network_v2': {0}".format(response), "DEBUG") @@ -1057,6 +1059,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="get_reserve_ip_subpool", + op_modifies=True, params={"siteId": site_id} ) if not isinstance(response, dict): @@ -1733,6 +1736,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="create_global_pool", + op_modifies=True, params=pool_params, ) self.check_execution_response_status(response).check_return_status() @@ -1778,6 +1782,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="update_global_pool", + op_modifies=True, params=pool_params, ) @@ -1821,6 +1826,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="reserve_ip_subpool", + op_modifies=True, params=reserve_params, ) self.check_execution_response_status(response).check_return_status() @@ -1853,6 +1859,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="update_reserve_ip_subpool", + op_modifies=True, params=reserve_params, ) self.check_execution_response_status(response).check_return_status() @@ -1900,6 +1907,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function='update_network_v2', + op_modifies=True, params=net_params, ) self.log("Received API response of 'update_network_v2': {0}".format(response), "DEBUG") @@ -1963,6 +1971,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="release_reserve_ip_subpool", + op_modifies=True, params={"id": _id}, ) self.check_execution_response_status(response).check_return_status() @@ -1999,6 +2008,7 @@ class NetworkSettings(DnacBase): response = self.dnac._exec( family="network_settings", function="delete_global_ip_pool", + op_modifies=True, params={"id": self.have.get("globalPool").get("id")}, ) diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_update.py b/ansible_collections/cisco/dnac/plugins/modules/network_update.py index be67025b8..42b2eec0f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_update.py @@ -131,8 +131,8 @@ options: is associated with the site. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings UpdateNetwork description: Complete reference of the UpdateNetwork API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_v2.py b/ansible_collections/cisco/dnac/plugins/modules/network_v2.py index 14ca5c286..faa1b85c9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_v2.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_v2.py @@ -134,8 +134,8 @@ options: the network settings. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings CreateNetworkV2 description: Complete reference of the CreateNetworkV2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/network_v2_info.py b/ansible_collections/cisco/dnac/plugins/modules/network_v2_info.py index f3b03cb76..096b27bbd 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/network_v2_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/network_v2_info.py @@ -24,8 +24,8 @@ options: - SiteId query parameter. Site Id to get the network settings associated with the site. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings GetNetworkV2 description: Complete reference of the GetNetworkV2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/nfv_profile.py b/ansible_collections/cisco/dnac/plugins/modules/nfv_profile.py index 409c937d4..37ce59101 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/nfv_profile.py +++ b/ansible_collections/cisco/dnac/plugins/modules/nfv_profile.py @@ -147,8 +147,8 @@ options: description: Name of the profile to create NFV profile. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Site Design CreateNFVProfile description: Complete reference of the CreateNFVProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/nfv_profile_info.py b/ansible_collections/cisco/dnac/plugins/modules/nfv_profile_info.py index 946879359..7deb4f7be 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/nfv_profile_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/nfv_profile_info.py @@ -36,8 +36,8 @@ options: - Name query parameter. Name of network profile to be retrieved. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Site Design GetNFVProfile description: Complete reference of the GetNFVProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/nfv_provision.py b/ansible_collections/cisco/dnac/plugins/modules/nfv_provision.py index 23f4269f0..e242de7f5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/nfv_provision.py +++ b/ansible_collections/cisco/dnac/plugins/modules/nfv_provision.py @@ -375,8 +375,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Site Design ProvisionNFV description: Complete reference of the ProvisionNFV API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/nfv_provision_detail_info.py b/ansible_collections/cisco/dnac/plugins/modules/nfv_provision_detail_info.py index 8ad7287ad..2a0f85a5a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/nfv_provision_detail_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/nfv_provision_detail_info.py @@ -24,8 +24,8 @@ options: - DeviceIp query parameter. Device to which the provisioning detail has to be retrieved. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Site Design GetDeviceDetailsByIP description: Complete reference of the GetDeviceDetailsByIP API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/nfv_provision_details.py b/ansible_collections/cisco/dnac/plugins/modules/nfv_provision_details.py index 6f8bc7308..af9792e72 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/nfv_provision_details.py +++ b/ansible_collections/cisco/dnac/plugins/modules/nfv_provision_details.py @@ -23,8 +23,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Site Design NFVProvisioningDetail description: Complete reference of the NFVProvisioningDetail API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/path_trace.py b/ansible_collections/cisco/dnac/plugins/modules/path_trace.py index a2b5519a6..055db2d56 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/path_trace.py +++ b/ansible_collections/cisco/dnac/plugins/modules/path_trace.py @@ -49,8 +49,8 @@ options: description: Source Port. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Path Trace InitiateANewPathtrace description: Complete reference of the InitiateANewPathtrace API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/path_trace_info.py b/ansible_collections/cisco/dnac/plugins/modules/path_trace_info.py index a160114ef..d305183c1 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/path_trace_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/path_trace_info.py @@ -86,8 +86,8 @@ options: - FlowAnalysisId path parameter. Flow analysis request id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Path Trace RetrievesPreviousPathtrace description: Complete reference of the RetrievesPreviousPathtrace API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/planned_access_points_info.py b/ansible_collections/cisco/dnac/plugins/modules/planned_access_points_info.py index df323c577..bed5d8656 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/planned_access_points_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/planned_access_points_info.py @@ -36,8 +36,8 @@ options: - Radios query parameter. Inlcude planned radio details. type: bool requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Devices GetPlannedAccessPointsForFloor description: Complete reference of the GetPlannedAccessPointsForFloor API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/platform_nodes_configuration_summary_info.py b/ansible_collections/cisco/dnac/plugins/modules/platform_nodes_configuration_summary_info.py index 9e4bad79e..d06ecb029 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/platform_nodes_configuration_summary_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/platform_nodes_configuration_summary_info.py @@ -23,8 +23,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Platform Configuration CiscoDNACenterNodesConfigurationSummary description: Complete reference of the CiscoDNACenterNodesConfigurationSummary API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/platform_release_summary_info.py b/ansible_collections/cisco/dnac/plugins/modules/platform_release_summary_info.py index 7af697e95..b37caefc0 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/platform_release_summary_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/platform_release_summary_info.py @@ -22,8 +22,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Platform Configuration CiscoDNACenterReleaseSummary description: Complete reference of the CiscoDNACenterReleaseSummary API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device.py index 0f6a736a5..a3451edeb 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device.py @@ -823,8 +823,8 @@ options: type: str type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) AddDevice description: Complete reference of the AddDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_authorize.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_authorize.py index c6aa96590..2a033f504 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_authorize.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_authorize.py @@ -21,8 +21,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for AuthorizeDevice description: Complete reference of the AuthorizeDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_claim.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_claim.py index 3a6c668f5..4ce1b3389 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_claim.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_claim.py @@ -77,8 +77,8 @@ options: description: Pnp Device Claim's workflowId. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) ClaimDevice description: Complete reference of the ClaimDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_claim_to_site.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_claim_to_site.py index 397dc9f95..2e3bdd0a5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_claim_to_site.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_claim_to_site.py @@ -80,8 +80,8 @@ options: description: For Catalyst 9800 WLC. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) ClaimADeviceToASite description: Complete reference of the ClaimADeviceToASite API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_config_preview.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_config_preview.py index 7007ba3bb..24d1ae219 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_config_preview.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_config_preview.py @@ -26,8 +26,8 @@ options: description: Pnp Device Config Preview's type. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) PreviewConfig description: Complete reference of the PreviewConfig API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_count_info.py index 5b98a91e5..94dc35fa2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_count_info.py @@ -89,8 +89,8 @@ options: - LastContact query parameter. Device Has Contacted lastContact > 0. type: bool requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) GetDeviceCount description: Complete reference of the GetDeviceCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_history_info.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_history_info.py index 662cc694b..781a2f035 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_history_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_history_info.py @@ -33,8 +33,8 @@ options: - SortOrder query parameter. Sort Order Ascending (asc) or Descending (des). type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) GetDeviceHistory description: Complete reference of the GetDeviceHistory API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_import.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_import.py index 78ff2aada..ed0802a80 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_import.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_import.py @@ -823,8 +823,8 @@ options: type: dict type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) ImportDevicesInBulk description: Complete reference of the ImportDevicesInBulk API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_info.py index 3f0b11bee..06500ec52 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_info.py @@ -126,8 +126,8 @@ options: - Id path parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) GetDeviceById description: Complete reference of the GetDeviceById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_reset.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_reset.py index 97d079c49..df5a7fe15 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_reset.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_reset.py @@ -59,8 +59,8 @@ options: description: Pnp Device Reset's workflowId. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) ResetDevice description: Complete reference of the ResetDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_unclaim.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_unclaim.py index a1212a688..81ac6a27b 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_device_unclaim.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_device_unclaim.py @@ -21,8 +21,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) UnClaimDevice description: Complete reference of the UnClaimDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_global_settings.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_global_settings.py index fa5ff41b8..b7bd4f09e 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_global_settings.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_global_settings.py @@ -158,8 +158,8 @@ options: description: Pnp Global Settings's version. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) UpdatePnPGlobalSettings description: Complete reference of the UpdatePnPGlobalSettings API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_global_settings_info.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_global_settings_info.py index 9347be595..e9c124ec5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_global_settings_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_global_settings_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) GetPnPGlobalSettings description: Complete reference of the GetPnPGlobalSettings API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_intent.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_intent.py index 3c71046a9..15d00b0dc 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_intent.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_intent.py @@ -158,7 +158,7 @@ options: - TYPICAL requirements: - dnacentersdk == 2.6.10 - - python >= 3.5 + - python >= 3.9 notes: - SDK Method used are device_onboarding_pnp.DeviceOnboardingPnp.add_device, device_onboarding_pnp.DeviceOnboardingPnp.get_device_list, @@ -429,6 +429,7 @@ class PnP(DnacBase): family="sites", function='get_site', params={"name": self.want.get("site_name")}, + op_modifies=True, ) except Exception: self.log("Exception occurred as site \ @@ -467,6 +468,7 @@ class PnP(DnacBase): family="sites", function='get_site', params={"name": self.want.get("site_name")}, + op_modifies=True, ) except Exception: self.log("Exception occurred as \ @@ -632,7 +634,7 @@ class PnP(DnacBase): self.pnp_cred_failure(msg=msg) claim_params["rfProfile"] = self.validated_config[0]["rf_profile"] - self.log("Paramters used for claiming are {0}".format(str(claim_params)), "INFO") + self.log("Parameters used for claiming are {0}".format(str(claim_params)), "INFO") return claim_params def get_reset_params(self): @@ -698,7 +700,8 @@ class PnP(DnacBase): device_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function='get_device_list', - params={"serial_number": self.want.get("serial_number")} + params={"serial_number": self.want.get("serial_number")}, + op_modifies=True, ) self.log("Device details for the device with serial \ number '{0}': {1}".format(self.want.get("serial_number"), str(device_response)), "DEBUG") @@ -721,6 +724,7 @@ class PnP(DnacBase): family="software_image_management_swim", function='get_software_image_details', params=self.want.get("image_params"), + op_modifies=True, ) image_list = image_response.get("response") self.log("Image details obtained from the API 'get_software_image_details': {0}".format(str(image_response)), "DEBUG") @@ -730,13 +734,15 @@ class PnP(DnacBase): family="configuration_templates", function='gets_the_templates_available', params={"project_names": self.want.get("project_name")}, + op_modifies=True, ) self.log("List of templates under the project '{0}': {1}".format(self.want.get("project_name"), str(template_list)), "DEBUG") dev_details_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function="get_device_by_id", - params={"id": device_response[0].get("id")} + params={"id": device_response[0].get("id")}, + op_modifies=True, ) self.log("Device details retrieved after calling the 'get_device_by_id' API: {0}".format(str(dev_details_response)), "DEBUG") install_mode = dev_details_response.get("deviceInfo").get("mode") @@ -899,7 +905,8 @@ class PnP(DnacBase): multi_device_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function='get_device_list', - params={"serial_number": device["deviceInfo"]["serialNumber"]} + params={"serial_number": device["deviceInfo"]["serialNumber"]}, + op_modifies=True, ) self.log("Device details for serial number {0} \ obtained from the API 'get_device_list': {1}".format(device["deviceInfo"]["serialNumber"], str(multi_device_response)), "DEBUG") @@ -1034,7 +1041,8 @@ class PnP(DnacBase): dev_details_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function="get_device_by_id", - params={"id": self.have["device_id"]} + params={"id": self.have["device_id"]}, + op_modifies=True, ) self.log("Response from 'get_device_by_id' API for device details: {0}".format(str(dev_details_response)), "DEBUG") @@ -1133,7 +1141,8 @@ class PnP(DnacBase): multi_device_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function='get_device_list', - params={"serial_number": device["deviceInfo"]["serialNumber"]} + params={"serial_number": device["deviceInfo"]["serialNumber"]}, + op_modifies=True, ) self.log("Response from 'get_device_list' API for claiming: {0}".format(str(multi_device_response)), "DEBUG") if multi_device_response and len(multi_device_response) == 1: @@ -1190,7 +1199,8 @@ class PnP(DnacBase): device_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function='get_device_list', - params={"serial_number": device["deviceInfo"]["serialNumber"]} + params={"serial_number": device["deviceInfo"]["serialNumber"]}, + op_modifies=True, ) if (device_response and (len(device_response) == 1)): msg = ( @@ -1230,7 +1240,8 @@ class PnP(DnacBase): device_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function='get_device_list', - params={"serial_number": device["deviceInfo"]["serialNumber"]} + params={"serial_number": device["deviceInfo"]["serialNumber"]}, + op_modifies=True, ) if not (device_response and (len(device_response) == 1)): msg = ( diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_server_profile_update.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_server_profile_update.py index b6528b96b..ee90a6978 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_server_profile_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_server_profile_update.py @@ -99,8 +99,8 @@ options: description: Pnp Server Profile Update's virtualAccountId. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) UpdatePnPServerProfile description: Complete reference of the UpdatePnPServerProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_smart_account_domains_info.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_smart_account_domains_info.py index 6f57ce11d..bc612723a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_smart_account_domains_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_smart_account_domains_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) GetSmartAccountList description: Complete reference of the GetSmartAccountList API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_add.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_add.py index 0f8140822..7a3ceef87 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_add.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_add.py @@ -100,8 +100,8 @@ options: description: Pnp Virtual Account Add's virtualAccountId. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) AddVirtualAccount description: Complete reference of the AddVirtualAccount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_deregister.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_deregister.py index 8f0d9d432..06af57d3b 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_deregister.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_deregister.py @@ -26,8 +26,8 @@ options: description: Name query parameter. Virtual Account Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) DeregisterVirtualAccount description: Complete reference of the DeregisterVirtualAccount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_devices_sync.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_devices_sync.py index 6a1c0da09..208bd3352 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_devices_sync.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_devices_sync.py @@ -99,8 +99,8 @@ options: description: Pnp Virtual Account Devices Sync's virtualAccountId. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) SyncVirtualAccountDevices description: Complete reference of the SyncVirtualAccountDevices API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_sync_result_info.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_sync_result_info.py index e3c37abe0..61a07cb79 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_sync_result_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_account_sync_result_info.py @@ -28,8 +28,8 @@ options: - Name path parameter. Virtual Account Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) GetSyncResultForVirtualAccount description: Complete reference of the GetSyncResultForVirtualAccount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_accounts_info.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_accounts_info.py index 40ed3ac75..635a189d5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_accounts_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_virtual_accounts_info.py @@ -24,8 +24,8 @@ options: - Domain path parameter. Smart Account Domain. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) GetVirtualAccountList description: Complete reference of the GetVirtualAccountList API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow.py index 5a5850959..d8658e0ea 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow.py @@ -128,8 +128,8 @@ options: description: Pnp Workflow's version. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) AddAWorkflow description: Complete reference of the AddAWorkflow API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_count_info.py index 215330a78..3c835c119 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_count_info.py @@ -25,8 +25,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) GetWorkflowCount description: Complete reference of the GetWorkflowCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_info.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_info.py index 7a00e17bc..d91ea342b 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_info.py @@ -55,8 +55,8 @@ options: - Id path parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Device Onboarding (PnP) GetWorkflowById description: Complete reference of the GetWorkflowById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_manager.py b/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_manager.py index e1b334f71..909670645 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_manager.py +++ b/ansible_collections/cisco/dnac/plugins/modules/pnp_workflow_manager.py @@ -158,7 +158,7 @@ options: - TYPICAL requirements: - dnacentersdk == 2.6.10 - - python >= 3.5 + - python >= 3.9 notes: - SDK Method used are device_onboarding_pnp.DeviceOnboardingPnp.add_device, device_onboarding_pnp.DeviceOnboardingPnp.get_device_list, @@ -429,6 +429,7 @@ class PnP(DnacBase): family="sites", function='get_site', params={"name": self.want.get("site_name")}, + op_modifies=True, ) except Exception: self.log("Exception occurred as site \ @@ -467,6 +468,7 @@ class PnP(DnacBase): family="sites", function='get_site', params={"name": self.want.get("site_name")}, + op_modifies=True, ) except Exception: self.log("Exception occurred as \ @@ -632,7 +634,7 @@ class PnP(DnacBase): self.pnp_cred_failure(msg=msg) claim_params["rfProfile"] = self.validated_config[0]["rf_profile"] - self.log("Paramters used for claiming are {0}".format(str(claim_params)), "INFO") + self.log("Parameters used for claiming are {0}".format(str(claim_params)), "INFO") return claim_params def get_reset_params(self): @@ -698,7 +700,8 @@ class PnP(DnacBase): device_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function='get_device_list', - params={"serial_number": self.want.get("serial_number")} + params={"serial_number": self.want.get("serial_number")}, + op_modifies=True, ) self.log("Device details for the device with serial \ number '{0}': {1}".format(self.want.get("serial_number"), str(device_response)), "DEBUG") @@ -721,6 +724,7 @@ class PnP(DnacBase): family="software_image_management_swim", function='get_software_image_details', params=self.want.get("image_params"), + op_modifies=True, ) image_list = image_response.get("response") self.log("Image details obtained from the API 'get_software_image_details': {0}".format(str(image_response)), "DEBUG") @@ -730,13 +734,15 @@ class PnP(DnacBase): family="configuration_templates", function='gets_the_templates_available', params={"project_names": self.want.get("project_name")}, + op_modifies=True, ) self.log("List of templates under the project '{0}': {1}".format(self.want.get("project_name"), str(template_list)), "DEBUG") dev_details_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function="get_device_by_id", - params={"id": device_response[0].get("id")} + params={"id": device_response[0].get("id")}, + op_modifies=True, ) self.log("Device details retrieved after calling the 'get_device_by_id' API: {0}".format(str(dev_details_response)), "DEBUG") install_mode = dev_details_response.get("deviceInfo").get("mode") @@ -899,7 +905,8 @@ class PnP(DnacBase): multi_device_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function='get_device_list', - params={"serial_number": device["deviceInfo"]["serialNumber"]} + params={"serial_number": device["deviceInfo"]["serialNumber"]}, + op_modifies=True, ) self.log("Device details for serial number {0} \ obtained from the API 'get_device_list': {1}".format(device["deviceInfo"]["serialNumber"], str(multi_device_response)), "DEBUG") @@ -1034,7 +1041,8 @@ class PnP(DnacBase): dev_details_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function="get_device_by_id", - params={"id": self.have["device_id"]} + params={"id": self.have["device_id"]}, + op_modifies=True, ) self.log("Response from 'get_device_by_id' API for device details: {0}".format(str(dev_details_response)), "DEBUG") @@ -1133,7 +1141,8 @@ class PnP(DnacBase): multi_device_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function='get_device_list', - params={"serial_number": device["deviceInfo"]["serialNumber"]} + params={"serial_number": device["deviceInfo"]["serialNumber"]}, + op_modifies=True, ) self.log("Response from 'get_device_list' API for claiming: {0}".format(str(multi_device_response)), "DEBUG") if multi_device_response and len(multi_device_response) == 1: @@ -1190,7 +1199,8 @@ class PnP(DnacBase): device_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function='get_device_list', - params={"serial_number": device["deviceInfo"]["serialNumber"]} + params={"serial_number": device["deviceInfo"]["serialNumber"]}, + op_modifies=True, ) if (device_response and (len(device_response) == 1)): msg = ( @@ -1230,7 +1240,8 @@ class PnP(DnacBase): device_response = self.dnac_apply['exec']( family="device_onboarding_pnp", function='get_device_list', - params={"serial_number": device["deviceInfo"]["serialNumber"]} + params={"serial_number": device["deviceInfo"]["serialNumber"]}, + op_modifies=True, ) if not (device_response and (len(device_response) == 1)): msg = ( diff --git a/ansible_collections/cisco/dnac/plugins/modules/profiling_rules_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/profiling_rules_count_info.py index a3181b3c6..461adba26 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/profiling_rules_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/profiling_rules_count_info.py @@ -29,8 +29,8 @@ options: - IncludeDeleted query parameter. Flag to indicate whether deleted rules should be part of the records fetched. type: bool requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are policy.Policy.get_count_of_profiling_rules, diff --git a/ansible_collections/cisco/dnac/plugins/modules/profiling_rules_in_bulk_create.py b/ansible_collections/cisco/dnac/plugins/modules/profiling_rules_in_bulk_create.py index 8e5b49c2d..ec2bfc306 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/profiling_rules_in_bulk_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/profiling_rules_in_bulk_create.py @@ -121,8 +121,8 @@ options: type: list type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are policy.Policy.import_profiling_rules_in_bulk, diff --git a/ansible_collections/cisco/dnac/plugins/modules/projects_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/projects_details_info.py index 704c881e2..2185060fd 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/projects_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/projects_details_info.py @@ -40,8 +40,8 @@ options: - SortOrder query parameter. Sort Order Ascending (asc) or Descending (dsc). type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates GetProjectsDetails description: Complete reference of the GetProjectsDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/provision_intent.py b/ansible_collections/cisco/dnac/plugins/modules/provision_intent.py index 4a3c8a228..1c19ed0c7 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/provision_intent.py +++ b/ansible_collections/cisco/dnac/plugins/modules/provision_intent.py @@ -74,7 +74,7 @@ options: requirements: - dnacentersdk == 2.4.5 -- python >= 3.5 +- python >= 3.9 notes: - SDK Methods used are sites.Sites.get_site, @@ -246,7 +246,8 @@ class Dnacprovision(DnacBase): dev_response = self.dnac_apply['exec']( family="devices", function='get_network_device_by_ip', - params={"ip_address": self.validated_config[0]["management_ip_address"]} + params={"ip_address": self.validated_config[0]["management_ip_address"]}, + op_modifies=True ) dev_dict = dev_response.get("response") @@ -282,6 +283,7 @@ class Dnacprovision(DnacBase): family="task", function='get_task_by_id', params=params, + op_modifies=True ) response = response.response if response.get('isError') or re.search( @@ -321,6 +323,7 @@ class Dnacprovision(DnacBase): family="sites", function='get_site', params={"name": site_name}, + op_modifies=True ) except Exception: self.module.fail_json(msg="Site not found", response=[]) @@ -403,7 +406,8 @@ class Dnacprovision(DnacBase): response = self.dnac_apply['exec']( family="devices", function='get_network_device_by_ip', - params={"management_ip_address": self.validated_config[0]["management_ip_address"]} + params={"management_ip_address": self.validated_config[0]["management_ip_address"]}, + op_modifies=True ) wireless_params[0]["deviceName"] = response.get("response")[0].get("hostname") diff --git a/ansible_collections/cisco/dnac/plugins/modules/provision_workflow_manager.py b/ansible_collections/cisco/dnac/plugins/modules/provision_workflow_manager.py index 27ae58141..cd99f3de6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/provision_workflow_manager.py +++ b/ansible_collections/cisco/dnac/plugins/modules/provision_workflow_manager.py @@ -75,7 +75,7 @@ options: requirements: - dnacentersdk == 2.4.5 -- python >= 3.5 +- python >= 3.9 notes: - SDK Methods used are sites.Sites.get_site, @@ -251,7 +251,8 @@ class Provision(DnacBase): dev_response = self.dnac_apply['exec']( family="devices", function='get_network_device_by_ip', - params={"ip_address": self.validated_config[0]["management_ip_address"]} + params={"ip_address": self.validated_config[0]["management_ip_address"]}, + op_modifies=True ) self.log("The device response from 'get_network_device_by_ip' API is {0}".format(str(dev_response)), "DEBUG") @@ -289,6 +290,7 @@ class Provision(DnacBase): family="task", function='get_task_by_id', params=params, + op_modifies=True ) self.log("Response collected from 'get_task_by_id' API is {0}".format(str(response)), "DEBUG") response = response.response @@ -330,6 +332,7 @@ class Provision(DnacBase): family="sites", function='get_site', params={"name": site_name_hierarchy}, + op_modifies=True ) except Exception: self.log("Exception occurred as \ @@ -418,7 +421,8 @@ class Provision(DnacBase): response = self.dnac_apply['exec']( family="devices", function='get_network_device_by_ip', - params={"management_ip_address": self.validated_config[0]["management_ip_address"]} + params={"management_ip_address": self.validated_config[0]["management_ip_address"]}, + op_modifies=True ) self.log("Response collected from 'get_network_device_by_ip' is:{0}".format(str(response)), "DEBUG") @@ -475,17 +479,14 @@ class Provision(DnacBase): device_type = self.want.get("device_type") if device_type == "wired": - try: - status_response = self.dnac_apply['exec']( - family="sda", - function="get_provisioned_wired_device", - op_modifies=True, - params={ - "device_management_ip_address": self.validated_config[0]["management_ip_address"] - }, - ) - except Exception: - status_response = {} + status_response = self.dnac_apply['exec']( + family="sda", + function="get_provisioned_wired_device", + op_modifies=True, + params={ + "device_management_ip_address": self.validated_config[0]["management_ip_address"] + }, + ) self.log("Wired device's status Response collected from 'get_provisioned_wired_device' API is:{0}".format(str(status_response)), "DEBUG") status = status_response.get("status") self.log("The provisioned status of the wired device is {0}".format(status), "INFO") diff --git a/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface.py b/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface.py index 2c7881cb7..e9b67c760 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface.py +++ b/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface.py @@ -70,8 +70,8 @@ options: type: list type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy CreateQosDeviceInterfaceInfo description: Complete reference of the CreateQosDeviceInterfaceInfo API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface_info.py b/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface_info.py index 98f070c58..ad7bb2bbe 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface_info.py @@ -24,8 +24,8 @@ options: - NetworkDeviceId query parameter. Network device id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy GetQosDeviceInterfaceInfo description: Complete reference of the GetQosDeviceInterfaceInfo API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface_info_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface_info_count_info.py index fd872ab6e..f77c2ce31 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface_info_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/qos_device_interface_info_count_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Application Policy GetQosDeviceInterfaceInfoCount description: Complete reference of the GetQosDeviceInterfaceInfoCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/reports.py b/ansible_collections/cisco/dnac/plugins/modules/reports.py index 039746e73..3e7eab25c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/reports.py +++ b/ansible_collections/cisco/dnac/plugins/modules/reports.py @@ -103,8 +103,8 @@ options: description: Version of viewgroup for the report. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Reports CreateOrScheduleAReport description: Complete reference of the CreateOrScheduleAReport API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/reports_executions_info.py b/ansible_collections/cisco/dnac/plugins/modules/reports_executions_info.py index 2002682db..f12cd7caa 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/reports_executions_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/reports_executions_info.py @@ -44,8 +44,8 @@ options: - The filename used to save the download file. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Reports DownloadReportContent description: Complete reference of the DownloadReportContent API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/reports_info.py b/ansible_collections/cisco/dnac/plugins/modules/reports_info.py index 963b6bb16..aed7e10df 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/reports_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/reports_info.py @@ -34,8 +34,8 @@ options: - ReportId path parameter. ReportId of report. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Reports GetAScheduledReport description: Complete reference of the GetAScheduledReport API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/reports_view_group_info.py b/ansible_collections/cisco/dnac/plugins/modules/reports_view_group_info.py index 71fd405a9..76b131718 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/reports_view_group_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/reports_view_group_info.py @@ -28,8 +28,8 @@ options: - ViewGroupId path parameter. ViewGroupId of viewgroup. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Reports GetAllViewGroups description: Complete reference of the GetAllViewGroups API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/reports_view_group_view_info.py b/ansible_collections/cisco/dnac/plugins/modules/reports_view_group_view_info.py index 791e4a0d6..11889bac9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/reports_view_group_view_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/reports_view_group_view_info.py @@ -30,8 +30,8 @@ options: - ViewId path parameter. View id of view. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Reports GetViewDetailsForAGivenViewGroup_View description: Complete reference of the GetViewDetailsForAGivenViewGroup_View API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool.py b/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool.py index 8d0d75295..507b0e078 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool.py +++ b/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool.py @@ -94,8 +94,8 @@ options: description: Type of the reserve ip sub pool. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings ReserveIPSubpool description: Complete reference of the ReserveIPSubpool API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_create.py b/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_create.py index ad78c5f91..699e7c96c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_create.py @@ -88,8 +88,8 @@ options: description: Type of the reserve ip sub pool. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings ReserveIPSubpool description: Complete reference of the ReserveIPSubpool API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_delete.py b/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_delete.py index d4471c2a9..65ecd4733 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_delete.py +++ b/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_delete.py @@ -20,8 +20,8 @@ options: description: Id path parameter. Id of reserve ip subpool to be deleted. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings ReleaseReserveIPSubpool description: Complete reference of the ReleaseReserveIPSubpool API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_info.py b/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_info.py index ab1a52955..ec3c76d16 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_info.py @@ -32,8 +32,8 @@ options: - Limit query parameter. No of Global Pools to be retrieved. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings GetReserveIPSubpool description: Complete reference of the GetReserveIPSubpool API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_update.py b/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_update.py index 3e960395f..4bf71c42c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/reserve_ip_subpool_update.py @@ -72,8 +72,8 @@ options: description: Slaac Support. type: bool requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings UpdateReserveIPSubpool description: Complete reference of the UpdateReserveIPSubpool API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/role_permissions_info.py b/ansible_collections/cisco/dnac/plugins/modules/role_permissions_info.py index 3f520a697..51957ed06 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/role_permissions_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/role_permissions_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for User and Roles GetPermissionsAPI description: Complete reference of the GetPermissionsAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/roles_info.py b/ansible_collections/cisco/dnac/plugins/modules/roles_info.py index 3e719be1a..a8ce30ddf 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/roles_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/roles_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for User and Roles GetRolesAPI description: Complete reference of the GetRolesAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_count_info.py index a80b1d359..d942591c1 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_count_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are sda.Sda.get_sda_fabric_count, diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_device_info.py index db40c572b..22029fe55 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_device_info.py @@ -24,8 +24,8 @@ options: - DeviceManagementIpAddress query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetDeviceInfoFromSDAFabric description: Complete reference of the GetDeviceInfoFromSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_device_role_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_device_role_info.py index 2a857d803..b06a698a1 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_device_role_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_device_role_info.py @@ -24,8 +24,8 @@ options: - DeviceManagementIpAddress query parameter. Device Management IP Address. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetDeviceRoleInSDAFabric description: Complete reference of the GetDeviceRoleInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric.py index 158e6f1e6..f068b0e1e 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric.py @@ -21,8 +21,8 @@ options: description: FabricName query parameter. Fabric Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are sda.Sda.add_fabric, diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_authentication_profile.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_authentication_profile.py index 51b32887b..925e28fa1 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_authentication_profile.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_authentication_profile.py @@ -34,8 +34,8 @@ options: description: SiteNameHierarchy query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddDefaultAuthenticationTemplateInSDAFabric description: Complete reference of the AddDefaultAuthenticationTemplateInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_authentication_profile_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_authentication_profile_info.py index 7d810bb81..619af5f01 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_authentication_profile_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_authentication_profile_info.py @@ -29,8 +29,8 @@ options: - AuthenticateTemplateName query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetDefaultAuthenticationProfileFromSDAFabric description: Complete reference of the GetDefaultAuthenticationProfileFromSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_border_device.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_border_device.py index 960e9d7cd..e2441daf8 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_border_device.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_border_device.py @@ -125,8 +125,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddBorderDeviceInSDAFabric description: Complete reference of the AddBorderDeviceInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_border_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_border_device_info.py index 329040201..c4318cd73 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_border_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_border_device_info.py @@ -25,8 +25,8 @@ options: - DeviceManagementIpAddress query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetBorderDeviceDetailFromSDAFabric description: Complete reference of the GetBorderDeviceDetailFromSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_control_plane_device.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_control_plane_device.py index 2f7189b35..ff3ecf449 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_control_plane_device.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_control_plane_device.py @@ -31,8 +31,8 @@ options: type: str version_added: 4.0.0 requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddControlPlaneDeviceInSDAFabric description: Complete reference of the AddControlPlaneDeviceInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_control_plane_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_control_plane_device_info.py index 837a4d543..9267a7014 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_control_plane_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_control_plane_device_info.py @@ -25,8 +25,8 @@ options: - DeviceManagementIpAddress query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetControlPlaneDeviceFromSDAFabric description: Complete reference of the GetControlPlaneDeviceFromSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_edge_device.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_edge_device.py index 800ca6d3c..9bcde0422 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_edge_device.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_edge_device.py @@ -26,8 +26,8 @@ options: type: str version_added: 4.0.0 requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddEdgeDeviceInSDAFabric description: Complete reference of the AddEdgeDeviceInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_edge_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_edge_device_info.py index 7d94ac466..a4f6eecc2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_edge_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_edge_device_info.py @@ -24,8 +24,8 @@ options: - DeviceManagementIpAddress query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetEdgeDeviceFromSDAFabric description: Complete reference of the GetEdgeDeviceFromSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_info.py index c0e49de7d..c44290025 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_info.py @@ -24,8 +24,8 @@ options: - FabricName query parameter. Fabric Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are sda.Sda.get_sda_fabric_info, diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_site.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_site.py index 2b7e6f8d4..eed71ad48 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_site.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_site.py @@ -31,8 +31,8 @@ options: description: SiteNameHierarchy query parameter. Site Name Hierarchy. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddSiteInSDAFabric description: Complete reference of the AddSiteInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_site_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_site_info.py index c0c115828..bd2e8c177 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_site_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_fabric_site_info.py @@ -24,8 +24,8 @@ options: - SiteNameHierarchy query parameter. Site Name Hierarchy. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetSiteFromSDAFabric description: Complete reference of the GetSiteFromSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_multicast.py b/ansible_collections/cisco/dnac/plugins/modules/sda_multicast.py index 4ee828f02..6e1045c5d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_multicast.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_multicast.py @@ -56,8 +56,8 @@ options: description: Full path of sda Fabric Site. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddMulticastInSDAFabric description: Complete reference of the AddMulticastInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_multicast_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_multicast_info.py index 959c9ed2f..2f4ae1218 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_multicast_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_multicast_info.py @@ -24,8 +24,8 @@ options: - SiteNameHierarchy query parameter. Fabric site name hierarchy. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetMulticastDetailsFromSDAFabric description: Complete reference of the GetMulticastDetailsFromSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_access_point.py b/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_access_point.py index 39b7df6e5..c8280407d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_access_point.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_access_point.py @@ -41,8 +41,8 @@ options: type: str version_added: 4.0.0 requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddPortAssignmentForAccessPointInSDAFabric description: Complete reference of the AddPortAssignmentForAccessPointInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_access_point_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_access_point_info.py index 45dc1ea39..3cdb7cd3a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_access_point_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_access_point_info.py @@ -29,8 +29,8 @@ options: - InterfaceName query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetPortAssignmentForAccessPointInSDAFabric description: Complete reference of the GetPortAssignmentForAccessPointInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_user_device.py b/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_user_device.py index 15c389ce6..58664b8e2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_user_device.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_user_device.py @@ -54,8 +54,8 @@ options: type: str version_added: 4.0.0 requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddPortAssignmentForUserDeviceInSDAFabric description: Complete reference of the AddPortAssignmentForUserDeviceInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_user_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_user_device_info.py index e62e9ae3c..2fdbee046 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_user_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_port_assignment_for_user_device_info.py @@ -28,8 +28,8 @@ options: - InterfaceName query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetPortAssignmentForUserDeviceInSDAFabric description: Complete reference of the GetPortAssignmentForUserDeviceInSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_provision_device.py b/ansible_collections/cisco/dnac/plugins/modules/sda_provision_device.py index 97c12fae0..5940634b8 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_provision_device.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_provision_device.py @@ -26,8 +26,8 @@ options: description: SiteNameHierarchy of the provisioned device. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA ProvisionWiredDevice description: Complete reference of the ProvisionWiredDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_provision_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_provision_device_info.py index a57d73303..ae78549ec 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_provision_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_provision_device_info.py @@ -24,8 +24,8 @@ options: - DeviceManagementIpAddress query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetProvisionedWiredDevice description: Complete reference of the GetProvisionedWiredDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network.py b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network.py index 5231d8b95..09d01e5ed 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network.py @@ -24,8 +24,8 @@ options: description: VirtualNetworkName query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddVNInFabric description: Complete reference of the AddVNInFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_info.py index 073937177..560c9179f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_info.py @@ -28,8 +28,8 @@ options: - SiteNameHierarchy query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetVNFromSDAFabric description: Complete reference of the GetVNFromSDAFabric API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_ip_pool.py b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_ip_pool.py index c0242821c..71bdf744f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_ip_pool.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_ip_pool.py @@ -83,8 +83,8 @@ options: type: str version_added: 4.0.0 requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddIPPoolInSDAVirtualNetwork description: Complete reference of the AddIPPoolInSDAVirtualNetwork API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_ip_pool_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_ip_pool_info.py index 205199cf5..35de542c6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_ip_pool_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_ip_pool_info.py @@ -34,8 +34,8 @@ options: - IpPoolName query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetIPPoolFromSDAVirtualNetwork description: Complete reference of the GetIPPoolFromSDAVirtualNetwork API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_v2.py b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_v2.py index 37e862ae5..27bffd8d9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_v2.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_v2.py @@ -32,8 +32,8 @@ options: description: Virtual Network Name to be assigned at global level. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA AddVirtualNetworkWithScalableGroups description: Complete reference of the AddVirtualNetworkWithScalableGroups API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_v2_info.py b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_v2_info.py index b1b408c08..fc73454d1 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_v2_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sda_virtual_network_v2_info.py @@ -24,8 +24,8 @@ options: - VirtualNetworkName query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for SDA GetVirtualNetworkWithScalableGroups description: Complete reference of the GetVirtualNetworkWithScalableGroups API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/security_advisories_devices_info.py b/ansible_collections/cisco/dnac/plugins/modules/security_advisories_devices_info.py index 0a0bf0c90..977fe48cd 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/security_advisories_devices_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/security_advisories_devices_info.py @@ -24,8 +24,8 @@ options: - AdvisoryId path parameter. Advisory ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Security Advisories GetDevicesPerAdvisory description: Complete reference of the GetDevicesPerAdvisory API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/security_advisories_ids_per_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/security_advisories_ids_per_device_info.py index 8bf7638d9..47f2db396 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/security_advisories_ids_per_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/security_advisories_ids_per_device_info.py @@ -24,8 +24,8 @@ options: - DeviceId path parameter. Device instance UUID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Security Advisories GetAdvisoryIDsPerDevice description: Complete reference of the GetAdvisoryIDsPerDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/security_advisories_info.py b/ansible_collections/cisco/dnac/plugins/modules/security_advisories_info.py index b0b551cd9..a2d860316 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/security_advisories_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/security_advisories_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Security Advisories GetAdvisoriesList description: Complete reference of the GetAdvisoriesList API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/security_advisories_per_device_info.py b/ansible_collections/cisco/dnac/plugins/modules/security_advisories_per_device_info.py index 54735ee13..486bb4654 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/security_advisories_per_device_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/security_advisories_per_device_info.py @@ -24,8 +24,8 @@ options: - DeviceId path parameter. Device instance UUID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Security Advisories GetAdvisoriesPerDevice description: Complete reference of the GetAdvisoriesPerDevice API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/security_advisories_summary_info.py b/ansible_collections/cisco/dnac/plugins/modules/security_advisories_summary_info.py index 4709ca6b9..88440aceb 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/security_advisories_summary_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/security_advisories_summary_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Security Advisories GetAdvisoriesSummary description: Complete reference of the GetAdvisoriesSummary API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sensor.py b/ansible_collections/cisco/dnac/plugins/modules/sensor.py index 4ac0fc8bd..c98887c45 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sensor.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sensor.py @@ -87,8 +87,8 @@ options: description: TemplateName query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sensors CreateSensorTestTemplate description: Complete reference of the CreateSensorTestTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sensor_info.py b/ansible_collections/cisco/dnac/plugins/modules/sensor_info.py index 20bbeae04..2955ceac1 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sensor_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sensor_info.py @@ -24,8 +24,8 @@ options: - SiteId query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sensors Sensors description: Complete reference of the Sensors API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sensor_test_run.py b/ansible_collections/cisco/dnac/plugins/modules/sensor_test_run.py index ac13177e0..cb800c968 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sensor_test_run.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sensor_test_run.py @@ -20,8 +20,8 @@ options: description: Template Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sensors RunNowSensorTest description: Complete reference of the RunNowSensorTest API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sensor_test_template_duplicate.py b/ansible_collections/cisco/dnac/plugins/modules/sensor_test_template_duplicate.py index 513178c5e..85cad96d2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sensor_test_template_duplicate.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sensor_test_template_duplicate.py @@ -23,8 +23,8 @@ options: description: Template Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sensors DuplicateSensorTestTemplate description: Complete reference of the DuplicateSensorTestTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sensor_test_template_edit.py b/ansible_collections/cisco/dnac/plugins/modules/sensor_test_template_edit.py index aa993bd10..b8bf3f3b4 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sensor_test_template_edit.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sensor_test_template_edit.py @@ -83,8 +83,8 @@ options: description: Template Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sensors EditSensorTestTemplate description: Complete reference of the EditSensorTestTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/service_provider_create.py b/ansible_collections/cisco/dnac/plugins/modules/service_provider_create.py index 44ef4888b..2ce62b664 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/service_provider_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/service_provider_create.py @@ -35,8 +35,8 @@ options: type: list type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings CreateSPProfile description: Complete reference of the CreateSPProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/service_provider_info.py b/ansible_collections/cisco/dnac/plugins/modules/service_provider_info.py index 6444f7978..d2bc282f3 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/service_provider_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/service_provider_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings GetServiceProviderDetails description: Complete reference of the GetServiceProviderDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/service_provider_profile_delete.py b/ansible_collections/cisco/dnac/plugins/modules/service_provider_profile_delete.py index ec7330c64..0d076885e 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/service_provider_profile_delete.py +++ b/ansible_collections/cisco/dnac/plugins/modules/service_provider_profile_delete.py @@ -20,8 +20,8 @@ options: description: SpProfileName path parameter. Sp profile name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings DeleteSPProfile description: Complete reference of the DeleteSPProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/service_provider_update.py b/ansible_collections/cisco/dnac/plugins/modules/service_provider_update.py index f3c9a6d35..3ec3fcde9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/service_provider_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/service_provider_update.py @@ -38,8 +38,8 @@ options: type: list type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings UpdateSPProfile description: Complete reference of the UpdateSPProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/service_provider_v2.py b/ansible_collections/cisco/dnac/plugins/modules/service_provider_v2.py index 3a804288f..5dcf4f367 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/service_provider_v2.py +++ b/ansible_collections/cisco/dnac/plugins/modules/service_provider_v2.py @@ -36,8 +36,8 @@ options: type: list type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings CreateSPProfileV2 description: Complete reference of the CreateSPProfileV2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/service_provider_v2_info.py b/ansible_collections/cisco/dnac/plugins/modules/service_provider_v2_info.py index 50635cc29..2641b9bdb 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/service_provider_v2_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/service_provider_v2_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings GetServiceProviderDetailsV2 description: Complete reference of the GetServiceProviderDetailsV2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_assign_credential.py b/ansible_collections/cisco/dnac/plugins/modules/site_assign_credential.py index 5cbb53684..b21a5ca77 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_assign_credential.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_assign_credential.py @@ -41,8 +41,8 @@ options: description: Snmp V3 Id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings AssignDeviceCredentialToSite description: Complete reference of the AssignDeviceCredentialToSite API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_assign_device.py b/ansible_collections/cisco/dnac/plugins/modules/site_assign_device.py index d0bdd2268..1c080cba4 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_assign_device.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_assign_device.py @@ -28,8 +28,8 @@ options: description: SiteId path parameter. Site id to which site the device to assign. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are sites.Sites.assign_device_to_site, diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/site_count_info.py index 85b57d946..c4a5dbd96 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_count_info.py @@ -24,8 +24,8 @@ options: - SiteId query parameter. Site id to retrieve site count. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sites GetSiteCount description: Complete reference of the GetSiteCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_create.py b/ansible_collections/cisco/dnac/plugins/modules/site_create.py index 31f357aea..6b690ac25 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_create.py @@ -84,8 +84,8 @@ options: description: Type of site to create (eg area, building, floor). type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sites CreateSite description: Complete reference of the CreateSite API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_delete.py b/ansible_collections/cisco/dnac/plugins/modules/site_delete.py index d36690ef4..6c52cc343 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_delete.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_delete.py @@ -20,8 +20,8 @@ options: description: SiteId path parameter. Site id to which site details to be deleted. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sites DeleteSite description: Complete reference of the DeleteSite API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_design_floormap.py b/ansible_collections/cisco/dnac/plugins/modules/site_design_floormap.py index a5f868383..0948930f3 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_design_floormap.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_design_floormap.py @@ -24,8 +24,8 @@ options: description: Site Design Floormap's payload type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are site_design.SiteDesign.create_floormap, diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_design_floormap_info.py b/ansible_collections/cisco/dnac/plugins/modules/site_design_floormap_info.py index ee1fa87bf..c427e42bb 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_design_floormap_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_design_floormap_info.py @@ -26,8 +26,8 @@ options: - FloorId path parameter. Group Id of the specified floormap. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are site_design.SiteDesign.get_floormap, diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_health_info.py b/ansible_collections/cisco/dnac/plugins/modules/site_health_info.py index 9614b6eb8..cbb91dcd6 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_health_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_health_info.py @@ -36,8 +36,8 @@ options: - Limit query parameter. The max number of sites in the returned data set. Default is 25, and max at 50. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sites GetSiteHealth description: Complete reference of the GetSiteHealth API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_info.py b/ansible_collections/cisco/dnac/plugins/modules/site_info.py index 49bdf393c..be914d2e2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_info.py @@ -40,8 +40,8 @@ options: - Limit query parameter. Number of sites to be retrieved. The default value is 500. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sites GetSite description: Complete reference of the GetSite API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_intent.py b/ansible_collections/cisco/dnac/plugins/modules/site_intent.py index 751d520be..39d708730 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_intent.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_intent.py @@ -120,7 +120,7 @@ options: requirements: - dnacentersdk == 2.4.5 -- python >= 3.5 +- python >= 3.9 notes: - SDK Method used are sites.Sites.create_site, @@ -489,6 +489,7 @@ class DnacSite(DnacBase): response = self.dnac._exec( family="sites", function='get_site', + op_modifies=True, params={"name": self.want.get("site_name")}, ) @@ -807,12 +808,18 @@ class DnacSite(DnacBase): else: # Creating New Site site_params = self.want.get("site_params") - if site_params['site']['building']: - building_details = {} - for key, value in site_params['site']['building'].items(): - if value is not None: - building_details[key] = value - site_params['site']['building'] = building_details + try: + if site_params['site']['building']: + building_details = {} + for key, value in site_params['site']['building'].items(): + if value is not None: + building_details[key] = value + site_params['site']['building'] = building_details + except Exception as e: + site_type = site_params['type'] + site_name = site_params['site'][site_type]['name'] + self.log("""The site '{0}' is not categorized as a building; hence, there is no need to filter out 'None' + values from the 'site_params' dictionary.""".format(site_name), "INFO") response = self.dnac._exec( family="sites", @@ -877,6 +884,7 @@ class DnacSite(DnacBase): response = self.dnac._exec( family="sites", function="delete_site", + op_modifies=True, params={"site_id": site_id}, ) @@ -941,6 +949,7 @@ class DnacSite(DnacBase): mem_response = self.dnac._exec( family="sites", function="get_membership", + op_modifies=True, params={"site_id": site_id}, ) site_response = mem_response.get("site").get("response") diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_membership_info.py b/ansible_collections/cisco/dnac/plugins/modules/site_membership_info.py index d38f3844e..bc28ba3f3 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_membership_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_membership_info.py @@ -40,8 +40,8 @@ options: - SerialNumber query parameter. Device serial number. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sites GetMembership description: Complete reference of the GetMembership API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_update.py b/ansible_collections/cisco/dnac/plugins/modules/site_update.py index 4a97a6ede..86c54a60b 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_update.py @@ -78,8 +78,8 @@ options: description: Type. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Sites UpdateSite description: Complete reference of the UpdateSite API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/site_workflow_manager.py b/ansible_collections/cisco/dnac/plugins/modules/site_workflow_manager.py index 1ae28afd8..81c6a974e 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/site_workflow_manager.py +++ b/ansible_collections/cisco/dnac/plugins/modules/site_workflow_manager.py @@ -120,7 +120,7 @@ options: requirements: - dnacentersdk == 2.4.5 -- python >= 3.5 +- python >= 3.9 notes: - SDK Method used are sites.Sites.create_site, @@ -488,6 +488,7 @@ class Site(DnacBase): response = self.dnac._exec( family="sites", function='get_site', + op_modifies=True, params={"name": self.want.get("site_name")}, ) @@ -806,12 +807,18 @@ class Site(DnacBase): else: # Creating New Site site_params = self.want.get("site_params") - if site_params['site']['building']: - building_details = {} - for key, value in site_params['site']['building'].items(): - if value is not None: - building_details[key] = value - site_params['site']['building'] = building_details + try: + if site_params['site']['building']: + building_details = {} + for key, value in site_params['site']['building'].items(): + if value is not None: + building_details[key] = value + site_params['site']['building'] = building_details + except Exception as e: + site_type = site_params['type'] + site_name = site_params['site'][site_type]['name'] + self.log("""The site '{0}' is not categorized as a building; hence, there is no need to filter out 'None' + values from the 'site_params' dictionary.""".format(site_name), "INFO") response = self.dnac._exec( family="sites", @@ -876,6 +883,7 @@ class Site(DnacBase): response = self.dnac._exec( family="sites", function="delete_site", + op_modifies=True, params={"site_id": site_id}, ) @@ -940,6 +948,7 @@ class Site(DnacBase): mem_response = self.dnac._exec( family="sites", function="get_membership", + op_modifies=True, params={"site_id": site_id}, ) site_response = mem_response.get("site").get("response") diff --git a/ansible_collections/cisco/dnac/plugins/modules/snmp_properties.py b/ansible_collections/cisco/dnac/plugins/modules/snmp_properties.py index 0ea733b2a..9cbcae16c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/snmp_properties.py +++ b/ansible_collections/cisco/dnac/plugins/modules/snmp_properties.py @@ -37,8 +37,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery CreateUpdateSNMPProperties description: Complete reference of the CreateUpdateSNMPProperties API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/snmp_properties_info.py b/ansible_collections/cisco/dnac/plugins/modules/snmp_properties_info.py index 9300eaa86..4f32fd28d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/snmp_properties_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/snmp_properties_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery GetSNMPProperties description: Complete reference of the GetSNMPProperties API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/snmpv2_read_community_credential.py b/ansible_collections/cisco/dnac/plugins/modules/snmpv2_read_community_credential.py index 69da389ea..0fd5ce8cb 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/snmpv2_read_community_credential.py +++ b/ansible_collections/cisco/dnac/plugins/modules/snmpv2_read_community_credential.py @@ -33,8 +33,8 @@ options: description: SNMP read community. NO!$DATA!$ for no value change. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery CreateSNMPReadCommunity description: Complete reference of the CreateSNMPReadCommunity API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/snmpv2_write_community_credential.py b/ansible_collections/cisco/dnac/plugins/modules/snmpv2_write_community_credential.py index 2fbfbbc66..00caf3e5b 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/snmpv2_write_community_credential.py +++ b/ansible_collections/cisco/dnac/plugins/modules/snmpv2_write_community_credential.py @@ -33,8 +33,8 @@ options: description: SNMP write community. NO!$DATA!$ for no value change. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery CreateSNMPWriteCommunity description: Complete reference of the CreateSNMPWriteCommunity API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/snmpv3_credential.py b/ansible_collections/cisco/dnac/plugins/modules/snmpv3_credential.py index d48c693d5..705d9e507 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/snmpv3_credential.py +++ b/ansible_collections/cisco/dnac/plugins/modules/snmpv3_credential.py @@ -54,8 +54,8 @@ options: description: Snmpv3 Credential's username. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Discovery CreateSNMPv3Credentials description: Complete reference of the CreateSNMPv3Credentials API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/sp_profile_delete_v2.py b/ansible_collections/cisco/dnac/plugins/modules/sp_profile_delete_v2.py index 1022d4de4..236a0ba49 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/sp_profile_delete_v2.py +++ b/ansible_collections/cisco/dnac/plugins/modules/sp_profile_delete_v2.py @@ -20,8 +20,8 @@ options: description: SpProfileName path parameter. Sp profile name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Network Settings DeleteSPProfileV2 description: Complete reference of the DeleteSPProfileV2 API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/swim_image_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/swim_image_details_info.py index b9ed467ed..d41519382 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/swim_image_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/swim_image_details_info.py @@ -92,8 +92,8 @@ options: - Offset query parameter. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Software Image Management (SWIM) GetSoftwareImageDetails description: Complete reference of the GetSoftwareImageDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/swim_import_local.py b/ansible_collections/cisco/dnac/plugins/modules/swim_import_local.py index 6ea0d9b9c..27966b4cd 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/swim_import_local.py +++ b/ansible_collections/cisco/dnac/plugins/modules/swim_import_local.py @@ -35,8 +35,8 @@ options: description: ThirdPartyVendor query parameter. Third Party Vendor. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Software Image Management (SWIM) ImportLocalSoftwareImage description: Complete reference of the ImportLocalSoftwareImage API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/swim_import_via_url.py b/ansible_collections/cisco/dnac/plugins/modules/swim_import_via_url.py index 3f86cc047..df217a30c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/swim_import_via_url.py +++ b/ansible_collections/cisco/dnac/plugins/modules/swim_import_via_url.py @@ -49,8 +49,8 @@ options: description: ScheduleOrigin query parameter. Originator of this call (Optional). type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Software Image Management (SWIM) ImportSoftwareImageViaURL description: Complete reference of the ImportSoftwareImageViaURL API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/swim_intent.py b/ansible_collections/cisco/dnac/plugins/modules/swim_intent.py index 08f78ac30..f1eadb5b4 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/swim_intent.py +++ b/ansible_collections/cisco/dnac/plugins/modules/swim_intent.py @@ -309,7 +309,7 @@ options: type: bool requirements: - dnacentersdk == 2.4.5 -- python >= 3.5 +- python >= 3.9 notes: - SDK Method used are software_image_management_swim.SoftwareImageManagementSwim.import_software_image_via_url, @@ -583,6 +583,7 @@ class DnacSwims(DnacBase): response = self.dnac._exec( family="sites", function='get_site', + op_modifies=True, params={"name": site_name}, ) except Exception as e: @@ -617,6 +618,7 @@ class DnacSwims(DnacBase): image_response = self.dnac._exec( family="software_image_management_swim", function='get_software_image_details', + op_modifies=True, params={"image_name": name}, ) self.log("Received API response from 'get_software_image_details': {0}".format(str(image_response)), "DEBUG") @@ -651,6 +653,7 @@ class DnacSwims(DnacBase): image_response = self.dnac._exec( family="software_image_management_swim", function='get_software_image_details', + op_modifies=True, params={"image_uuid": image_id}, ) self.log("Received API response from 'get_software_image_details': {0}".format(str(image_response)), "DEBUG") @@ -686,6 +689,7 @@ class DnacSwims(DnacBase): image_response = self.dnac._exec( family="software_image_management_swim", function='get_software_image_details', + op_modifies=True, params={"image_name": name}, ) self.log("Received API response from 'get_software_image_details': {0}".format(str(image_response)), "DEBUG") @@ -713,6 +717,7 @@ class DnacSwims(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params=params, ) self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") @@ -765,12 +770,18 @@ class DnacSwims(DnacBase): "site_id": site_id, "device_family": device_family } - response = self.dnac._exec( - family="sites", - function='get_membership', - op_modifies=True, - params=site_params, - ) + + try: + response = self.dnac._exec( + family="sites", + function='get_membership', + op_modifies=True, + params=site_params, + ) + except Exception as e: + self.log("Unable to fetch the device(s) associated to the site '{0}' due to '{1}'".format(site_name, str(e)), "WARNING") + return device_uuid_list + self.log("Received API response from 'get_membership': {0}".format(str(response)), "DEBUG") response = response['device'] @@ -1305,6 +1316,7 @@ class DnacSwims(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"id": device_id} ) self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") diff --git a/ansible_collections/cisco/dnac/plugins/modules/swim_trigger_activation.py b/ansible_collections/cisco/dnac/plugins/modules/swim_trigger_activation.py index ec9ca0e5b..5d7cae2b5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/swim_trigger_activation.py +++ b/ansible_collections/cisco/dnac/plugins/modules/swim_trigger_activation.py @@ -49,8 +49,8 @@ options: before schedule (Optional). type: bool requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Software Image Management (SWIM) TriggerSoftwareImageActivation description: Complete reference of the TriggerSoftwareImageActivation API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/swim_trigger_distribution.py b/ansible_collections/cisco/dnac/plugins/modules/swim_trigger_distribution.py index cad143cb4..ce1b5e1fc 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/swim_trigger_distribution.py +++ b/ansible_collections/cisco/dnac/plugins/modules/swim_trigger_distribution.py @@ -30,8 +30,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Software Image Management (SWIM) TriggerSoftwareImageDistribution description: Complete reference of the TriggerSoftwareImageDistribution API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/swim_workflow_manager.py b/ansible_collections/cisco/dnac/plugins/modules/swim_workflow_manager.py index a147b4055..f7a1764fd 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/swim_workflow_manager.py +++ b/ansible_collections/cisco/dnac/plugins/modules/swim_workflow_manager.py @@ -296,7 +296,7 @@ options: type: bool requirements: - dnacentersdk == 2.4.5 -- python >= 3.5 +- python >= 3.9 notes: - SDK Method used are software_image_management_swim.SoftwareImageManagementSwim.import_software_image_via_url, @@ -569,6 +569,7 @@ class Swim(DnacBase): response = self.dnac._exec( family="sites", function='get_site', + op_modifies=True, params={"name": site_name}, ) except Exception as e: @@ -603,6 +604,7 @@ class Swim(DnacBase): image_response = self.dnac._exec( family="software_image_management_swim", function='get_software_image_details', + op_modifies=True, params={"image_name": name}, ) self.log("Received API response from 'get_software_image_details': {0}".format(str(image_response)), "DEBUG") @@ -637,6 +639,7 @@ class Swim(DnacBase): image_response = self.dnac._exec( family="software_image_management_swim", function='get_software_image_details', + op_modifies=True, params={"image_uuid": image_id}, ) self.log("Received API response from 'get_software_image_details': {0}".format(str(image_response)), "DEBUG") @@ -672,6 +675,7 @@ class Swim(DnacBase): image_response = self.dnac._exec( family="software_image_management_swim", function='get_software_image_details', + op_modifies=True, params={"image_name": name}, ) self.log("Received API response from 'get_software_image_details': {0}".format(str(image_response)), "DEBUG") @@ -699,6 +703,7 @@ class Swim(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params=params, ) self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") @@ -751,12 +756,18 @@ class Swim(DnacBase): "site_id": site_id, "device_family": device_family } - response = self.dnac._exec( - family="sites", - function='get_membership', - op_modifies=True, - params=site_params, - ) + + try: + response = self.dnac._exec( + family="sites", + function='get_membership', + op_modifies=True, + params=site_params, + ) + except Exception as e: + self.log("Unable to fetch the device(s) associated to the site '{0}' due to '{1}'".format(site_name, str(e)), "WARNING") + return device_uuid_list + self.log("Received API response from 'get_membership': {0}".format(str(response)), "DEBUG") response = response['device'] @@ -1291,6 +1302,7 @@ class Swim(DnacBase): response = self.dnac._exec( family="devices", function='get_device_list', + op_modifies=True, params={"id": device_id} ) self.log("Received API response from 'get_device_list': {0}".format(str(response)), "DEBUG") diff --git a/ansible_collections/cisco/dnac/plugins/modules/syslog_config_create.py b/ansible_collections/cisco/dnac/plugins/modules/syslog_config_create.py index d9058d44e..c4804a3b3 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/syslog_config_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/syslog_config_create.py @@ -35,8 +35,8 @@ options: description: Protocol. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management CreateSyslogDestination description: Complete reference of the CreateSyslogDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/syslog_config_update.py b/ansible_collections/cisco/dnac/plugins/modules/syslog_config_update.py index 79d319fea..653555ac9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/syslog_config_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/syslog_config_update.py @@ -35,8 +35,8 @@ options: description: Protocol. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Event Management UpdateSyslogDestination description: Complete reference of the UpdateSyslogDestination API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/system_health_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/system_health_count_info.py index b8e6b135c..bf9b72361 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/system_health_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/system_health_count_info.py @@ -32,8 +32,8 @@ options: here /dna/platform/app/consumer-portal/developer-toolkit/events. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Health and Performance SystemHealthCountAPI description: Complete reference of the SystemHealthCountAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/system_health_info.py b/ansible_collections/cisco/dnac/plugins/modules/system_health_info.py index c0d2ea881..01a23ee64 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/system_health_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/system_health_info.py @@ -44,8 +44,8 @@ options: - Offset query parameter. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Health and Performance SystemHealthAPI description: Complete reference of the SystemHealthAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/system_performance_historical_info.py b/ansible_collections/cisco/dnac/plugins/modules/system_performance_historical_info.py index 9cdbef7d6..11476ed6f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/system_performance_historical_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/system_performance_historical_info.py @@ -36,8 +36,8 @@ options: be fetched. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Health and Performance SystemPerformanceHistoricalAPI description: Complete reference of the SystemPerformanceHistoricalAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/system_performance_info.py b/ansible_collections/cisco/dnac/plugins/modules/system_performance_info.py index 8460d7265..41b14ccdd 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/system_performance_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/system_performance_info.py @@ -40,8 +40,8 @@ options: be fetched. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Health and Performance SystemPerformanceAPI description: Complete reference of the SystemPerformanceAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/tag.py b/ansible_collections/cisco/dnac/plugins/modules/tag.py index 7630c2e61..0b26448c0 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/tag.py +++ b/ansible_collections/cisco/dnac/plugins/modules/tag.py @@ -63,8 +63,8 @@ options: description: SystemTag flag. type: bool requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Tag CreateTag description: Complete reference of the CreateTag API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/tag_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/tag_count_info.py index 4624d65ed..7562f71fc 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/tag_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/tag_count_info.py @@ -44,8 +44,8 @@ options: - SystemTag query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Tag GetTagCount description: Complete reference of the GetTagCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/tag_info.py b/ansible_collections/cisco/dnac/plugins/modules/tag_info.py index bc09f0ba5..c7c32e7d5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/tag_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/tag_info.py @@ -72,8 +72,8 @@ options: - Id path parameter. Tag ID. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Tag GetTag description: Complete reference of the GetTag API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/tag_member.py b/ansible_collections/cisco/dnac/plugins/modules/tag_member.py index 017fd1c23..2ffe6ce10 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/tag_member.py +++ b/ansible_collections/cisco/dnac/plugins/modules/tag_member.py @@ -30,8 +30,8 @@ options: description: Map of member type and member ids. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Tag AddMembersToTheTag description: Complete reference of the AddMembersToTheTag API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/tag_member_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/tag_member_count_info.py index 13bfd2c4c..82dbf33d0 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/tag_member_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/tag_member_count_info.py @@ -36,8 +36,8 @@ options: - Level query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Tag GetTagMemberCount description: Complete reference of the GetTagMemberCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/tag_member_info.py b/ansible_collections/cisco/dnac/plugins/modules/tag_member_info.py index 077114139..57401f152 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/tag_member_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/tag_member_info.py @@ -50,8 +50,8 @@ options: - Level query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Tag GetTagMembersById description: Complete reference of the GetTagMembersById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/tag_member_type_info.py b/ansible_collections/cisco/dnac/plugins/modules/tag_member_type_info.py index 4fcb8ca42..a7e4cd1c9 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/tag_member_type_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/tag_member_type_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Tag GetTagResourceTypes description: Complete reference of the GetTagResourceTypes API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/tag_membership.py b/ansible_collections/cisco/dnac/plugins/modules/tag_membership.py index e7516549e..9366e9ed2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/tag_membership.py +++ b/ansible_collections/cisco/dnac/plugins/modules/tag_membership.py @@ -32,8 +32,8 @@ options: description: Tag Membership's memberType. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Tag UpdatesTagMembership description: Complete reference of the UpdatesTagMembership API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/task_count_info.py b/ansible_collections/cisco/dnac/plugins/modules/task_count_info.py index bb95a22fc..a1eedd445 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/task_count_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/task_count_info.py @@ -60,8 +60,8 @@ options: - ParentId query parameter. Fetch tasks that have this parent Id. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Task GetTaskCount description: Complete reference of the GetTaskCount API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/task_info.py b/ansible_collections/cisco/dnac/plugins/modules/task_info.py index 9b2b19b01..9adaf195a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/task_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/task_info.py @@ -82,8 +82,8 @@ options: - TaskId path parameter. UUID of the Task. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Task GetTaskById description: Complete reference of the GetTaskById API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/task_operation_info.py b/ansible_collections/cisco/dnac/plugins/modules/task_operation_info.py index f5578940c..ea08f3306 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/task_operation_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/task_operation_info.py @@ -34,8 +34,8 @@ options: value is 1. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Task GetTaskByOperationId description: Complete reference of the GetTaskByOperationId API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/task_tree_info.py b/ansible_collections/cisco/dnac/plugins/modules/task_tree_info.py index bda7d8c51..9e80665b3 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/task_tree_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/task_tree_info.py @@ -24,8 +24,8 @@ options: - TaskId path parameter. UUID of the Task. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Task GetTaskTree description: Complete reference of the GetTaskTree API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/template_intent.py b/ansible_collections/cisco/dnac/plugins/modules/template_intent.py index c6e3042de..53c42e0ce 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/template_intent.py +++ b/ansible_collections/cisco/dnac/plugins/modules/template_intent.py @@ -1104,7 +1104,7 @@ options: requirements: - dnacentersdk == 2.4.5 -- python >= 3.5 +- python >= 3.9 notes: - SDK Method used are configuration_templates.ConfigurationTemplates.create_template, @@ -1896,6 +1896,7 @@ class DnacTemplate(DnacBase): items = self.dnac_apply['exec']( family="configuration_templates", function="get_template_details", + op_modifies=True, params={"template_id": config.get("templateId")} ) if items: @@ -1980,6 +1981,7 @@ class DnacTemplate(DnacBase): template_list = self.dnac_apply['exec']( family="configuration_templates", function="gets_the_templates_available", + op_modifies=True, params={"projectNames": config.get("projectName")}, ) have_template["isCommitPending"] = True @@ -2371,8 +2373,8 @@ class DnacTemplate(DnacBase): response = self.dnac_apply['exec']( family="configuration_templates", function="update_template", - params=template_params, op_modifies=True, + params=template_params, ) template_updated = True self.log("Updating existing template '{0}'." @@ -2442,6 +2444,7 @@ class DnacTemplate(DnacBase): response = self.dnac._exec( family="configuration_templates", function='export_projects', + op_modifies=True, params={"payload": export_project}, ) validation_string = "successfully exported project" @@ -2458,6 +2461,7 @@ class DnacTemplate(DnacBase): response = self.dnac._exec( family="configuration_templates", function='export_templates', + op_modifies=True, params={"payload": self.export_template}, ) validation_string = "successfully exported template" @@ -2501,6 +2505,7 @@ class DnacTemplate(DnacBase): response = self.dnac._exec( family="configuration_templates", function='imports_the_projects_provided', + op_modifies=True, params=_import_project, ) validation_string = "successfully imported project" @@ -2529,6 +2534,7 @@ class DnacTemplate(DnacBase): response = self.dnac._exec( family="configuration_templates", function='imports_the_templates_provided', + op_modifies=True, params=import_template, ) validation_string = "successfully imported template" @@ -2592,6 +2598,7 @@ class DnacTemplate(DnacBase): response = self.dnac_apply['exec']( family="configuration_templates", function=deletion_value, + op_modifies=True, params=params_key, ) task_id = response.get("response").get("taskId") @@ -2716,6 +2723,7 @@ class DnacTemplate(DnacBase): template_list = self.dnac_apply['exec']( family="configuration_templates", function="gets_the_templates_available", + op_modifies=True, params={"projectNames": config.get("projectName")}, ) if template_list and isinstance(template_list, list): diff --git a/ansible_collections/cisco/dnac/plugins/modules/template_preview.py b/ansible_collections/cisco/dnac/plugins/modules/template_preview.py index bcd466a54..cb1657ccc 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/template_preview.py +++ b/ansible_collections/cisco/dnac/plugins/modules/template_preview.py @@ -29,8 +29,8 @@ options: description: UUID of template to get template preview. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates PreviewTemplate description: Complete reference of the PreviewTemplate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/template_workflow_manager.py b/ansible_collections/cisco/dnac/plugins/modules/template_workflow_manager.py index 13e81da9a..fbd91685e 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/template_workflow_manager.py +++ b/ansible_collections/cisco/dnac/plugins/modules/template_workflow_manager.py @@ -47,382 +47,385 @@ options: required: true suboptions: configuration_templates: - description: Create/Update/Delete template. + description: Perform operations such as Create/Update/Delete on a template. type: dict suboptions: author: - description: Author of template. + description: Identifies the creator of the template. type: str composite: - description: Is it composite template. + description: Specifies if the template is composite. type: bool containing_templates: - description: Configuration Template Create's containingTemplates. + description: + - Refer to a set of templates within the main template to define more complex or modular configurations. + - This is particularly useful in systems that support hierarchical or nested templates. + - Here parent templates may contain child templates to form a complete configuration. suboptions: composite: - description: Is it composite template. + description: Specifies if the template is composite. type: bool description: - description: Description of template. + description: Provides a description of the template. type: str device_types: - description: deviceTypes on which templates would be applied. + description: List of dictionaries details the types of devices that the templates can be applied to. type: list elements: dict suboptions: product_family: - description: Device family. + description: Denotes the family to which the device belongs. type: str product_series: - description: Device series. + description: Specifies the series classification of the device. type: str product_type: - description: Device type. + description: Describes the exact type of the device. type: str id: - description: UUID of template. + description: Unique identifier for the template, represented as a UUID. type: str language: - description: Template language + description: Programming language used for templating. Options are 'JINJA' for Jinja templating or 'VELOCITY' for Apache Velocity. choices: - JINJA - VELOCITY type: str name: - description: Name of template. + description: Designation of the template, serving as its unique name. type: str project_name: - description: Name of the project under which templates are managed. + description: Title of the project within which the template is categorized and managed. type: str project_description: - description: Description of the project created. + description: Narrative that elaborates on the purpose and scope of the project. type: str rollback_template_params: - description: Params required for template rollback. + description: A list of dictionaries defining parameters necessary for the rollback functionality of a template. type: list elements: dict suboptions: binding: - description: Bind to source. + description: Associates the parameter with its source. type: str custom_order: - description: CustomOrder of template param. + description: Specifies a user-defined ordering for the parameter. type: int data_type: - description: Datatype of template param. + description: Identifies the data type of the parameter (e.g., string, integer, boolean). type: str default_value: - description: Default value of template param. + description: Establishes a default value for the parameter, used if no other value is provided. type: str description: - description: Description of template param. + description: Provides a descriptive explanation of the parameter's purpose. type: str display_name: - description: Display name of param. + description: The name of the parameter as displayed to users. type: str group: - description: Group. + description: Categorizes the parameter into a named group for organizational purposes. type: str id: - description: UUID of template param. + description: A unique identifier for the parameter, formatted as a UUID. type: str instruction_text: - description: Instruction text for param. + description: Gives guidance or instructions regarding the parameter's use. type: str key: - description: Key. + description: A unique key that identifies the parameter within the template. type: str not_param: - description: Is it not a variable. + description: Indicates whether the entry is not to be treated as a parameter. type: bool order: - description: Order of template param. + description: Determines the sequence in which the parameter appears relative to others. type: int param_array: - description: Is it an array. + description: Specifies if the parameter should be treated as an array. type: bool parameter_name: - description: Name of template param. + description: The name of the parameter. type: str provider: - description: Provider. + description: Denotes the provider associated with the parameter. type: str range: - description: Configuration Template Create's range. + description: Defines the permissible range for the parameter's value. type: list elements: dict suboptions: id: - description: UUID of range. + description: Unique identifier for the range, represented as a UUID. type: str max_value: - description: Max value of range. + description: Specifies the maximum allowable value for the parameter. type: int min_value: - description: Min value of range. + description: Specifies the minimum allowable value for the parameter. type: int required: - description: Is param required. + description: Dictates whether the parameter is mandatory for template operations. type: bool selection: - description: Configuration Template Create's selection. + description: Contains options for parameter selection when a choice is available. suboptions: default_selected_values: - description: Default selection values. + description: Lists the default values that are preselected. elements: str type: list id: - description: UUID of selection. + description: A unique identifier for the selection entity, represented as a UUID. type: str selection_type: - description: Type of selection(SINGLE_SELECT or MULTI_SELECT). + description: Specifies the type of selection, such as 'SINGLE_SELECT' or 'MULTI_SELECT'. type: str selection_values: - description: Selection values. + description: A dictionary of available values for selection. type: dict type: dict tags: - description: Configuration Template Create's tags. + description: A list of dictionaries representing tags associated with the Configuration Template during creation. suboptions: id: - description: UUID of tag. + description: The unique identifier for each tag, presented as a UUID. type: str name: - description: Name of tag. + description: The descriptive label or name assigned to the tag. type: str type: list elements: dict template_content: - description: Template content. + description: The actual script or code constituting the body of the template. type: str template_params: - description: Configuration Template Create's templateParams. + description: The customization of the contents within the template. elements: dict suboptions: binding: - description: Bind to source. + description: Associates the parameter with its source. type: str custom_order: - description: CustomOrder of template param. + description: Specifies a user-defined ordering for the parameter. type: int data_type: - description: Datatype of template param. + description: Identifies the data type of the parameter (e.g., string, integer, boolean). type: str default_value: - description: Default value of template param. + description: Establishes a default value for the parameter, used if no other value is provided. type: str description: - description: Description of template param. + description: Provides a descriptive explanation of the parameter's purpose. type: str display_name: - description: Display name of param. + description: The name of the parameter as displayed to users. type: str group: - description: Group. + description: Categorizes the parameter into a named group for organizational purposes. type: str id: - description: UUID of template param. + description: A unique identifier for the parameter, formatted as a UUID. type: str instruction_text: - description: Instruction text for param. + description: Gives guidance or instructions regarding the parameter's use. type: str key: - description: Key. + description: A unique key that identifies the parameter within the template. type: str not_param: - description: Is it not a variable. + description: Indicates whether the entry is not to be treated as a parameter. type: bool order: - description: Order of template param. + description: Determines the sequence in which the parameter appears relative to others. type: int param_array: - description: Is it an array. + description: Specifies if the parameter should be treated as an array. type: bool parameter_name: - description: Name of template param. + description: The name of the parameter. type: str provider: - description: Provider. + description: Denotes the provider associated with the parameter. type: str range: - description: Configuration Template Create's range. + description: Defines the permissible range for the parameter's value. suboptions: id: - description: UUID of range. + description: Unique identifier for the range, represented as a UUID. type: str max_value: - description: Max value of range. + description: Specifies the maximum allowable value for the parameter. type: int min_value: - description: Min value of range. + description: Specifies the minimum allowable value for the parameter. type: int type: list elements: dict required: - description: Is param required. + description: Dictates whether the parameter is mandatory for template operations. type: bool selection: - description: Configuration Template Create's selection. + description: Contains options for parameter selection when a choice is available. suboptions: default_selected_values: - description: Default selection values. + description: Lists the default values that are preselected. elements: str type: list id: - description: UUID of selection. + description: A unique identifier for the selection entity, represented as a UUID. type: str selection_type: - description: Type of selection(SINGLE_SELECT or MULTI_SELECT). + description: Specifies the type of selection, such as 'SINGLE_SELECT' or 'MULTI_SELECT'. type: str selection_values: - description: Selection values. + description: A dictionary of available values for selection. type: dict type: dict type: list version: - description: Current version of template. + description: The current version of template. type: str type: list elements: dict create_time: - description: Create time of template. + description: The creation time of the template refers to the initial development. type: int custom_params_order: - description: Custom Params Order. + description: Specifies the sequence in which custom parameters or variables should be arranged within the template. type: bool template_description: - description: Description of template. + description: Provides a overview of the template. type: str device_types: - description: Configuration Template Create's deviceTypes. This field is mandatory to create a new template. + description: List of dictionaries details the types of devices that the templates can be applied to. + type: list + elements: dict suboptions: product_family: - description: Device family. + description: Denotes the family to which the device belongs. type: str product_series: - description: Device series. + description: Specifies the series classification of the device. type: str product_type: - description: Device type. + description: Describes the exact type of the device. type: str - type: list - elements: dict failure_policy: description: Define failure policy if template provisioning fails. type: str id: - description: UUID of template. + description: A unique identifier, represented as a UUID. type: str language: - description: Template language + description: Programming language used for templating. Options are 'JINJA' for Jinja templating or 'VELOCITY' for Apache Velocity. choices: - JINJA - VELOCITY type: str last_update_time: - description: Update time of template. + description: Indicates the most recent timestamp when the template was modified or revised. type: int latest_version_time: - description: Latest versioned template time. + description: Indicates when the most recent version of a template was released or updated. type: int template_name: description: Name of template. This field is mandatory to create a new template. type: str parent_template_id: - description: Parent templateID. + description: Refers to the unique identifier of a template from which another template derives. type: str project_id: - description: Project UUID. + description: A unique identifier for the project, formatted as a UUID. type: str project_name: - description: Project name. + description: Title of the project within which the template is categorized and managed. type: str project_description: - description: Project Description. + description: Narrative that elaborates on the purpose and scope of the project. type: str rollback_template_content: - description: Rollback template content. + description: Refers to the process of reverting the content of a template back to a previous version or state. type: str rollback_template_params: - description: Configuration Template Create's rollbackTemplateParams. + description: A list of dictionaries defining parameters necessary for the rollback functionality of a template. suboptions: binding: - description: Bind to source. + description: Associates the parameter with its source. type: str custom_order: - description: CustomOrder of template param. + description: Specifies a user-defined ordering for the parameter. type: int data_type: - description: Datatype of template param. + description: Identifies the data type of the parameter (e.g., string, integer, boolean). type: str default_value: - description: Default value of template param. + description: Establishes a default value for the parameter, used if no other value is provided. type: str description: - description: Description of template param. + description: Provides a descriptive explanation of the parameter's purpose. type: str display_name: - description: Display name of param. + description: The name of the parameter as displayed to users. type: str group: - description: Group. + description: Categorizes the parameter into a named group for organizational purposes. type: str id: - description: UUID of template param. + description: A unique identifier for the parameter, formatted as a UUID. type: str instruction_text: - description: Instruction text for param. + description: Gives guidance or instructions regarding the parameter's use. type: str key: - description: Key. + description: A unique key that identifies the parameter within the template. type: str not_param: - description: Is it not a variable. + description: Indicates whether the entry is not to be treated as a parameter. type: bool order: - description: Order of template param. + description: Determines the sequence in which the parameter appears relative to others. type: int param_array: - description: Is it an array. + description: Specifies if the parameter should be treated as an array. type: bool parameter_name: - description: Name of template param. + description: The name of the parameter. type: str provider: - description: Provider. + description: Denotes the provider associated with the parameter. type: str range: - description: Configuration Template Create's range. + description: Defines the permissible range for the parameter's value. suboptions: id: - description: UUID of range. + description: Unique identifier for the range, represented as a UUID. type: str max_value: - description: Max value of range. + description: Specifies the maximum allowable value for the parameter. type: int min_value: - description: Min value of range. + description: Specifies the minimum allowable value for the parameter. type: int type: list elements: dict required: - description: Is param required. + description: Dictates whether the parameter is mandatory for template operations. type: bool selection: - description: Configuration Template Create's selection. + description: Contains options for parameter selection when a choice is available. suboptions: default_selected_values: - description: Default selection values. + description: Lists the default values that are preselected. elements: str type: list id: - description: UUID of selection. + description: A unique identifier for the selection entity, represented as a UUID. type: str selection_type: - description: Type of selection(SINGLE_SELECT or MULTI_SELECT). + description: Specifies the type of selection, such as 'SINGLE_SELECT' or 'MULTI_SELECT'. type: str selection_values: - description: Selection values. + description: A dictionary of available values for selection. type: dict type: dict type: list @@ -431,143 +434,143 @@ options: description: Applicable device software type. This field is mandatory to create a new template. type: str software_variant: - description: Applicable device software variant. + description: Refers to a version or edition of a software application that differs from the main or standard release. type: str software_version: description: Applicable device software version. type: str template_tag: - description: Configuration Template Create's tags. + description: Refers to a keyword, label, or metadata assigned to a template. suboptions: id: - description: UUID of tag. + description: A unique identifier for the tag, represented as a UUID. type: str name: - description: Name of tag. + description: The name of the tag. type: str type: list elements: dict template_content: - description: Template content. + description: The actual script or code constituting the body of the template. type: str template_params: - description: Configuration Template Create's templateParams. + description: The customization of the contents within the template. suboptions: binding: - description: Bind to source. + description: Associates the parameter with its source. type: str custom_order: - description: CustomOrder of template param. + description: Specifies a user-defined ordering for the parameter. type: int data_type: - description: Datatype of template param. + description: Identifies the data type of the parameter (e.g., string, integer, boolean). type: str default_value: - description: Default value of template param. + description: Establishes a default value for the parameter, used if no other value is provided. type: str description: - description: Description of template param. + description: Provides a descriptive explanation of the parameter's purpose. type: str display_name: - description: Display name of param. + description: The name of the parameter as displayed to users. type: str group: - description: Group. + description: Categorizes the parameter into a named group for organizational purposes. type: str id: - description: UUID of template param. + description: A unique identifier for the parameter, formatted as a UUID. type: str instruction_text: - description: Instruction text for param. + description: Gives guidance or instructions regarding the parameter's use. type: str key: - description: Key. + description: A unique key that identifies the parameter within the template. type: str not_param: - description: Is it not a variable. + description: Indicates whether the entry is not to be treated as a parameter. type: bool order: - description: Order of template param. + description: Determines the sequence in which the parameter appears relative to others. type: int param_array: - description: Is it an array. + description: Specifies if the parameter should be treated as an array. type: bool parameter_name: - description: Name of template param. + description: The name of the parameter. type: str provider: - description: Provider. + description: Denotes the provider associated with the parameter. type: str range: - description: Configuration Template Create's range. + description: Defines the permissible range for the parameter's value. suboptions: id: - description: UUID of range. + description: Unique identifier for the range, represented as a UUID. type: str max_value: - description: Max value of range. + description: Specifies the maximum allowable value for the parameter. type: int min_value: - description: Min value of range. + description: Specifies the minimum allowable value for the parameter. type: int type: list elements: dict required: - description: Is param required. + description: Dictates whether the parameter is mandatory for template operations. type: bool selection: - description: Configuration Template Create's selection. + description: Contains options for parameter selection when a choice is available. suboptions: default_selected_values: - description: Default selection values. + description: Lists the default values that are preselected. elements: str type: list id: - description: UUID of selection. + description: A unique identifier for the selection entity, represented as a UUID. type: str selection_type: - description: Type of selection(SINGLE_SELECT or MULTI_SELECT). + description: Specifies the type of selection, such as 'SINGLE_SELECT' or 'MULTI_SELECT'. type: str selection_values: - description: Selection values. + description: A dictionary of available values for selection. type: dict type: dict type: list elements: dict validation_errors: - description: Configuration Template Create's validationErrors. + description: Refer to issues or discrepancies identified during the validation process. suboptions: rollback_template_errors: description: Validation or design conflicts errors of rollback template. elements: dict type: list template_errors: - description: Validation or design conflicts errors. + description: Refer to issues or discrepancies encountered during the processing of a template within a software application. elements: dict type: list template_id: - description: UUID of template. + description: A unique identifier for the template, represented as a UUID. type: str template_version: - description: Current version of template. + description: The current version of validation process in the template. type: str type: dict version: - description: Current version of template. + description: The current version of template. type: str version_description: description: Template version comments. type: str export: - description: Export the project/template details. + description: Perform export on the projects and templates. type: dict suboptions: project: - description: Export the project. + description: Export the project(s) details. type: list elements: str template: - description: Export the template. + description: Export the template(s) details. type: list elements: dict suboptions: @@ -575,14 +578,14 @@ options: description: Name of the project under the template available. type: str template_name: - description: Name of the template which we need to export + description: Name of the template which we need to be exported. type: str import: - description: Import the project/template details. + description: Perform import on the projects and templates. type: dict suboptions: project: - description: Import the project details. + description: Import the projects. type: dict suboptions: do_version: @@ -592,7 +595,7 @@ options: fails with 'Template already exists' error. type: bool template: - description: Import the template details. + description: Import the templates. type: dict suboptions: do_version: @@ -601,502 +604,524 @@ options: exists. " If false and if template already exists, then operation fails with 'Template already exists' error. type: bool + template_file: + description: + - Specifies the path to a JSON file that contains an import template. + - If both 'template_file' and 'payload' are provided, the 'template_file' will be given priority. + type: str payload: - description: Configuration Template Import Template's payload. + description: + - The payload parameter is used to directly import configuration data into the system. + - The payload provides an alternative way to import configurations without the need to reference an external file. + - If both 'template_file' and 'payload' are provided, the 'template_file' will be given priority. + type: list elements: dict suboptions: author: - description: Author of template. + description: Identifies the creator of the template. type: str composite: - description: Is it composite template. + description: Specifies if the template is composite. type: bool containing_templates: - description: Configuration Template Import Template's containingTemplates. - elements: dict + description: + - Refer to a set of templates within the main template to define more complex or modular configurations. + - This is particularly useful in systems that support hierarchical or nested templates. + - Here parent templates may contain child templates to form a complete configuration. suboptions: composite: - description: Is it composite template. + description: Specifies if the template is composite. type: bool description: - description: Description of template. + description: Provides a description of the template. type: str device_types: - description: Configuration Template Import Template's deviceTypes. + description: List of dictionaries details the types of devices that the templates can be applied to. + type: list elements: dict suboptions: product_family: - description: Device family. + description: Denotes the family to which the device belongs. type: str product_series: - description: Device series. + description: Specifies the series classification of the device. type: str product_type: - description: Device type. + description: Describes the exact type of the device. type: str - type: list id: - description: UUID of template. + description: Unique identifier for the template, represented as a UUID. type: str language: - description: Template language (JINJA or VELOCITY). + description: Programming language used for templating. Options are 'JINJA' for Jinja templating or 'VELOCITY' for Apache Velocity. + choices: + - JINJA + - VELOCITY type: str name: - description: Name of template. + description: Designation of the template, serving as its unique name. type: str project_name: - description: Project name. + description: Title of the project within which the template is categorized and managed. type: str rollback_template_params: - description: Configuration Template Import Template's rollbackTemplateParams. + description: A list of dictionaries defining parameters necessary for the rollback functionality of a template. + type: list elements: dict suboptions: binding: - description: Bind to source. + description: Associates the parameter with its source. type: str custom_order: - description: CustomOrder of template param. + description: Specifies a user-defined ordering for the parameter. type: int data_type: - description: Datatype of template param. + description: Identifies the data type of the parameter (e.g., string, integer, boolean). type: str default_value: - description: Default value of template param. + description: Establishes a default value for the parameter, used if no other value is provided. type: str description: - description: Description of template param. + description: Provides a descriptive explanation of the parameter's purpose. type: str display_name: - description: Display name of param. + description: The name of the parameter as displayed to users. type: str group: - description: Group. + description: Categorizes the parameter into a named group for organizational purposes. type: str id: - description: UUID of template param. + description: A unique identifier for the parameter, formatted as a UUID. type: str instruction_text: - description: Instruction text for param. + description: Gives guidance or instructions regarding the parameter's use. type: str key: - description: Key. + description: A unique key that identifies the parameter within the template. type: str not_param: - description: Is it not a variable. + description: Indicates whether the entry is not to be treated as a parameter. type: bool order: - description: Order of template param. + description: Determines the sequence in which the parameter appears relative to others. type: int param_array: - description: Is it an array. + description: Specifies if the parameter should be treated as an array. type: bool parameter_name: - description: Name of template param. + description: The name of the parameter. type: str provider: - description: Provider. + description: Denotes the provider associated with the parameter. type: str range: - description: Configuration Template Import Template's range. + description: Defines the permissible range for the parameter's value. + type: list elements: dict suboptions: id: - description: UUID of range. + description: Unique identifier for the range, represented as a UUID. type: str max_value: - description: Max value of range. + description: Specifies the maximum allowable value for the parameter. type: int min_value: - description: Min value of range. + description: Specifies the minimum allowable value for the parameter. type: int - type: list required: - description: Is param required. + description: Dictates whether the parameter is mandatory for template operations. type: bool selection: - description: Configuration Template Import Template's selection. + description: Contains options for parameter selection when a choice is available. suboptions: default_selected_values: - description: Default selection values. + description: Lists the default values that are preselected. elements: str type: list id: - description: UUID of selection. + description: A unique identifier for the selection entity, represented as a UUID. type: str selection_type: - description: Type of selection(SINGLE_SELECT or MULTI_SELECT). + description: Specifies the type of selection, such as 'SINGLE_SELECT' or 'MULTI_SELECT'. type: str selection_values: - description: Selection values. + description: A dictionary of available values for selection. type: dict type: dict - type: list tags: - description: Configuration Template Import Template's tags. - elements: dict + description: A list of dictionaries representing tags associated with the Configuration Template during creation. suboptions: id: - description: UUID of tag. + description: The unique identifier for each tag, presented as a UUID. type: str name: - description: Name of tag. + description: The descriptive label or name assigned to the tag. type: str type: list + elements: dict template_content: - description: Template content. + description: The actual script or code constituting the body of the template. type: str template_params: - description: Configuration Template Import Template's templateParams. + description: The customization of the contents within the template. elements: dict suboptions: binding: - description: Bind to source. + description: Associates the parameter with its source. type: str custom_order: - description: CustomOrder of template param. + description: Specifies a user-defined ordering for the parameter. type: int data_type: - description: Datatype of template param. + description: Identifies the data type of the parameter (e.g., string, integer, boolean). type: str default_value: - description: Default value of template param. + description: Establishes a default value for the parameter, used if no other value is provided. type: str description: - description: Description of template param. + description: Provides a descriptive explanation of the parameter's purpose. type: str display_name: - description: Display name of param. + description: The name of the parameter as displayed to users. type: str group: - description: Group. + description: Categorizes the parameter into a named group for organizational purposes. type: str id: - description: UUID of template param. + description: A unique identifier for the parameter, formatted as a UUID. type: str instruction_text: - description: Instruction text for param. + description: Gives guidance or instructions regarding the parameter's use. type: str key: - description: Key. + description: A unique key that identifies the parameter within the template. type: str not_param: - description: Is it not a variable. + description: Indicates whether the entry is not to be treated as a parameter. type: bool order: - description: Order of template param. + description: Determines the sequence in which the parameter appears relative to others. type: int param_array: - description: Is it an array. + description: Specifies if the parameter should be treated as an array. type: bool parameter_name: - description: Name of template param. + description: The name of the parameter. type: str provider: - description: Provider. + description: Denotes the provider associated with the parameter. type: str range: - description: Configuration Template Import Template's range. - elements: dict + description: Defines the permissible range for the parameter's value. suboptions: id: - description: UUID of range. + description: Unique identifier for the range, represented as a UUID. type: str max_value: - description: Max value of range. + description: Specifies the maximum allowable value for the parameter. type: int min_value: - description: Min value of range. + description: Specifies the minimum allowable value for the parameter. type: int type: list + elements: dict required: - description: Is param required. + description: Dictates whether the parameter is mandatory for template operations. type: bool selection: - description: Configuration Template Import Template's selection. + description: Contains options for parameter selection when a choice is available. suboptions: default_selected_values: - description: Default selection values. + description: Lists the default values that are preselected. elements: str type: list id: - description: UUID of selection. + description: A unique identifier for the selection entity, represented as a UUID. type: str selection_type: - description: Type of selection(SINGLE_SELECT or MULTI_SELECT). + description: Specifies the type of selection, such as 'SINGLE_SELECT' or 'MULTI_SELECT'. type: str selection_values: - description: Selection values. + description: A dictionary of available values for selection. type: dict type: dict type: list version: - description: Current version of template. + description: The current version of template. type: str type: list + elements: dict create_time: - description: Create time of template. + description: The creation time of the template refers to the initial development. type: int custom_params_order: - description: Custom Params Order. + description: Specifies the sequence in which custom parameters or variables should be arranged within the template. type: bool - description: - description: Description of template. + template_description: + description: Provides a overview of the template. type: str device_types: - description: Configuration Template Import Template's deviceTypes. + description: List of dictionaries details the types of devices that the templates can be applied to. + type: list elements: dict suboptions: product_family: - description: Device family. + description: Denotes the family to which the device belongs. type: str product_series: - description: Device series. + description: Specifies the series classification of the device. type: str product_type: - description: Device type. + description: Describes the exact type of the device. type: str - type: list failure_policy: description: Define failure policy if template provisioning fails. type: str id: - description: UUID of template. + description: A unique identifier, represented as a UUID. type: str language: - description: Template language (JINJA or VELOCITY). + description: Programming language used for templating. Options are 'JINJA' for Jinja templating or 'VELOCITY' for Apache Velocity. + choices: + - JINJA + - VELOCITY type: str last_update_time: - description: Update time of template. + description: Indicates the most recent timestamp when the template was modified or revised. type: int latest_version_time: - description: Latest versioned template time. + description: Indicates when the most recent version of a template was released or updated. type: int - name: - description: Name of template. + template_name: + description: Name of template. This field is mandatory to create a new template. type: str parent_template_id: - description: Parent templateID. + description: Refers to the unique identifier of a template from which another template derives. type: str project_id: - description: Project UUID. + description: A unique identifier for the project, formatted as a UUID. type: str project_name: - description: Project name. + description: Title of the project within which the template is categorized and managed. + type: str + project_description: + description: Narrative that elaborates on the purpose and scope of the project. type: str rollback_template_content: - description: Rollback template content. + description: Refers to the process of reverting the content of a template back to a previous version or state. type: str rollback_template_params: - description: Configuration Template Import Template's rollbackTemplateParams. - elements: dict + description: A list of dictionaries defining parameters necessary for the rollback functionality of a template. suboptions: binding: - description: Bind to source. + description: Associates the parameter with its source. type: str custom_order: - description: CustomOrder of template param. + description: Specifies a user-defined ordering for the parameter. type: int data_type: - description: Datatype of template param. + description: Identifies the data type of the parameter (e.g., string, integer, boolean). type: str default_value: - description: Default value of template param. + description: Establishes a default value for the parameter, used if no other value is provided. type: str description: - description: Description of template param. + description: Provides a descriptive explanation of the parameter's purpose. type: str display_name: - description: Display name of param. + description: The name of the parameter as displayed to users. type: str group: - description: Group. + description: Categorizes the parameter into a named group for organizational purposes. type: str id: - description: UUID of template param. + description: A unique identifier for the parameter, formatted as a UUID. type: str instruction_text: - description: Instruction text for param. + description: Gives guidance or instructions regarding the parameter's use. type: str key: - description: Key. + description: A unique key that identifies the parameter within the template. type: str not_param: - description: Is it not a variable. + description: Indicates whether the entry is not to be treated as a parameter. type: bool order: - description: Order of template param. + description: Determines the sequence in which the parameter appears relative to others. type: int param_array: - description: Is it an array. + description: Specifies if the parameter should be treated as an array. type: bool parameter_name: - description: Name of template param. + description: The name of the parameter. type: str provider: - description: Provider. + description: Denotes the provider associated with the parameter. type: str range: - description: Configuration Template Import Template's range. - elements: dict + description: Defines the permissible range for the parameter's value. suboptions: id: - description: UUID of range. + description: Unique identifier for the range, represented as a UUID. type: str max_value: - description: Max value of range. + description: Specifies the maximum allowable value for the parameter. type: int min_value: - description: Min value of range. + description: Specifies the minimum allowable value for the parameter. type: int type: list + elements: dict required: - description: Is param required. + description: Dictates whether the parameter is mandatory for template operations. type: bool selection: - description: Configuration Template Import Template's selection. + description: Contains options for parameter selection when a choice is available. suboptions: default_selected_values: - description: Default selection values. + description: Lists the default values that are preselected. elements: str type: list id: - description: UUID of selection. + description: A unique identifier for the selection entity, represented as a UUID. type: str selection_type: - description: Type of selection(SINGLE_SELECT or MULTI_SELECT). + description: Specifies the type of selection, such as 'SINGLE_SELECT' or 'MULTI_SELECT'. type: str selection_values: - description: Selection values. + description: A dictionary of available values for selection. type: dict type: dict type: list + elements: dict software_type: - description: Applicable device software type. + description: Applicable device software type. This field is mandatory to create a new template. type: str software_variant: - description: Applicable device software variant. + description: Refers to a version or edition of a software application that differs from the main or standard release. type: str software_version: description: Applicable device software version. type: str - tags: - description: Configuration Template Import Template's tags. - elements: dict + template_tag: + description: Refers to a keyword, label, or metadata assigned to a template. suboptions: id: - description: UUID of tag. + description: A unique identifier for the tag, represented as a UUID. type: str name: - description: Name of tag. + description: The name of the tag. type: str type: list + elements: dict template_content: - description: Template content. + description: The actual script or code constituting the body of the template. type: str template_params: - description: Configuration Template Import Template's templateParams. - elements: dict + description: The customization of the contents within the template. suboptions: binding: - description: Bind to source. + description: Associates the parameter with its source. type: str custom_order: - description: CustomOrder of template param. + description: Specifies a user-defined ordering for the parameter. type: int data_type: - description: Datatype of template param. + description: Identifies the data type of the parameter (e.g., string, integer, boolean). type: str default_value: - description: Default value of template param. + description: Establishes a default value for the parameter, used if no other value is provided. type: str description: - description: Description of template param. + description: Provides a descriptive explanation of the parameter's purpose. type: str display_name: - description: Display name of param. + description: The name of the parameter as displayed to users. type: str group: - description: Group. + description: Categorizes the parameter into a named group for organizational purposes. type: str id: - description: UUID of template param. + description: A unique identifier for the parameter, formatted as a UUID. type: str instruction_text: - description: Instruction text for param. + description: Gives guidance or instructions regarding the parameter's use. type: str key: - description: Key. + description: A unique key that identifies the parameter within the template. type: str not_param: - description: Is it not a variable. + description: Indicates whether the entry is not to be treated as a parameter. type: bool order: - description: Order of template param. + description: Determines the sequence in which the parameter appears relative to others. type: int param_array: - description: Is it an array. + description: Specifies if the parameter should be treated as an array. type: bool parameter_name: - description: Name of template param. + description: The name of the parameter. type: str provider: - description: Provider. + description: Denotes the provider associated with the parameter. type: str range: - description: Configuration Template Import Template's range. - elements: dict + description: Defines the permissible range for the parameter's value. suboptions: id: - description: UUID of range. + description: Unique identifier for the range, represented as a UUID. type: str max_value: - description: Max value of range. + description: Specifies the maximum allowable value for the parameter. type: int min_value: - description: Min value of range. + description: Specifies the minimum allowable value for the parameter. type: int type: list + elements: dict required: - description: Is param required. + description: Dictates whether the parameter is mandatory for template operations. type: bool selection: - description: Configuration Template Import Template's selection. + description: Contains options for parameter selection when a choice is available. suboptions: default_selected_values: - description: Default selection values. + description: Lists the default values that are preselected. elements: str type: list id: - description: UUID of selection. + description: A unique identifier for the selection entity, represented as a UUID. type: str selection_type: - description: Type of selection(SINGLE_SELECT or MULTI_SELECT). + description: Specifies the type of selection, such as 'SINGLE_SELECT' or 'MULTI_SELECT'. type: str selection_values: - description: Selection values. + description: A dictionary of available values for selection. type: dict type: dict type: list + elements: dict validation_errors: - description: Configuration Template Import Template's validationErrors. + description: Refer to issues or discrepancies identified during the validation process. suboptions: rollback_template_errors: - description: Validation or design conflicts errors of rollback template. - type: dict + description: Refer to errors or issues encountered during the process of reverting a template to a previous version or state. + elements: dict + type: list template_errors: - description: Validation or design conflicts errors. - type: dict + description: Refer to issues or discrepancies encountered during the processing of a template within a software application. + elements: dict + type: list template_id: - description: UUID of template. + description: A unique identifier for the template, represented as a UUID. type: str template_version: - description: Current version of template. + description: The current version of validation process in the template. type: str type: dict version: - description: Current version of template. + description: The current version of template. type: str - type: list project_name: description: ProjectName path parameter. Project name to create template under the project. @@ -1104,7 +1129,7 @@ options: requirements: - dnacentersdk == 2.4.5 -- python >= 3.5 +- python >= 3.9 notes: - SDK Method used are configuration_templates.ConfigurationTemplates.create_template, @@ -1239,6 +1264,26 @@ EXAMPLES = r""" - name: string - name: string +- name: Import the Templates. + cisco.dnac.template_workflow_manager: + dnac_host: "{{dnac_host}}" + dnac_username: "{{dnac_username}}" + dnac_password: "{{dnac_password}}" + dnac_verify: "{{dnac_verify}}" + dnac_port: "{{dnac_port}}" + dnac_version: "{{dnac_version}}" + dnac_debug: "{{dnac_debug}}" + dnac_log: True + dnac_log_level: "{{dnac_log_level}}" + state: merged + config_verify: True + config: + import: + template: + do_version: false + project_name: string + template_file: string + """ RETURN = r""" @@ -1312,6 +1357,7 @@ response_5: """ import copy +import json from ansible.module_utils.basic import AnsibleModule from ansible_collections.cisco.dnac.plugins.module_utils.dnac import ( DnacBase, @@ -1331,7 +1377,11 @@ class Template(DnacBase): self.supported_states = ["merged", "deleted"] self.accepted_languages = ["JINJA", "VELOCITY"] self.export_template = [] - self.result['response'].append({}) + self.result['response'] = [ + {"configurationTemplate": {"response": {}, "msg": {}}}, + {"export": {"response": {}}}, + {"import": {"response": {}}} + ] def validate_input(self): """ @@ -1367,7 +1417,7 @@ class Template(DnacBase): 'containing_templates': {'type': 'list'}, 'create_time': {'type': 'int'}, 'custom_params_order': {'type': 'bool'}, - 'description': {'type': 'str'}, + 'template_description': {'type': 'str'}, 'device_types': { 'type': 'list', 'elements': 'dict', @@ -1394,8 +1444,7 @@ class Template(DnacBase): 'template_params': {'type': 'list'}, 'template_name': {'type': 'str'}, 'validation_errors': {'type': 'dict'}, - 'version': {'type': 'str'}, - 'version_description': {'type': 'str'} + 'version': {'type': 'str'} }, 'export': { 'type': 'dict', @@ -1425,7 +1474,7 @@ class Template(DnacBase): 'containing_templates': {'type': 'list'}, 'create_time': {'type': 'int'}, 'custom_params_order': {'type': 'bool'}, - 'description': {'type': 'str'}, + 'template_description': {'type': 'str'}, 'device_types': { 'type': 'list', 'elements': 'dict', @@ -1857,7 +1906,6 @@ class Template(DnacBase): """ self.log("Template params playbook details: {0}".format(params), "DEBUG") - self.log(str(params)) temp_params = { "tags": self.get_tags(params.get("template_tag")), "author": params.get("author"), @@ -1917,7 +1965,7 @@ class Template(DnacBase): self.status = "failed" return self.check_return_status() - temp_params.update({"project_name": projectName}) + temp_params.update({"projectName": projectName}) softwareType = params.get("software_type") if not softwareType: @@ -1932,7 +1980,6 @@ class Template(DnacBase): for item in copy_temp_params: if temp_params[item] is None: del temp_params[item] - self.log(str(temp_params)) return temp_params def get_template(self, config): @@ -1950,13 +1997,14 @@ class Template(DnacBase): items = self.dnac_apply['exec']( family="configuration_templates", function="get_template_details", + op_modifies=True, params={"template_id": config.get("templateId")} ) if items: result = items self.log("Received API response from 'get_template_details': {0}".format(items), "DEBUG") - self.result['response'] = items + self.result['response'][0].get("configurationTemplate").update({"items": items}) return result def get_have_project(self, config): @@ -2034,6 +2082,7 @@ class Template(DnacBase): template_list = self.dnac_apply['exec']( family="configuration_templates", function="gets_the_templates_available", + op_modifies=True, params={"projectNames": config.get("projectName")}, ) have_template["isCommitPending"] = True @@ -2290,8 +2339,6 @@ class Template(DnacBase): # Mandate fields required for creating a new template. # Store it with other template parameters. - self.log(str(template_params)) - self.log(str(self.have_project)) template_params["projectId"] = self.have_project.get("id") template_params["project_id"] = self.have_project.get("id") # Update language,deviceTypes and softwareType if not provided for existing template. @@ -2419,7 +2466,7 @@ class Template(DnacBase): if is_template_found: if not self.requires_update(): # Template does not need update - self.result.update({ + self.result['response'][0].get("configurationTemplate").update({ 'response': self.have_template.get("template"), 'msg': "Template does not need update" }) @@ -2433,8 +2480,8 @@ class Template(DnacBase): response = self.dnac_apply['exec']( family="configuration_templates", function="update_template", - params=template_params, op_modifies=True, + params=template_params, ) template_updated = True self.log("Updating existing template '{0}'." @@ -2466,12 +2513,12 @@ class Template(DnacBase): return self task_details = self.get_task_details(task_id) self.result['changed'] = True - self.result['msg'] = task_details.get('progress') - self.result['diff'] = configuration_templates + self.result['response'][0].get("configurationTemplate")['msg'] = task_details.get('progress') + self.result['response'][0].get("configurationTemplate")['diff'] = configuration_templates self.log("Task details for 'version_template': {0}".format(task_details), "DEBUG") - self.result['response'] = task_details if task_details else response + self.result['response'][0].get("configurationTemplate")['response'] = task_details if task_details else response - if not self.result.get('msg'): + if not self.result['response'][0].get("configurationTemplate").get('msg'): self.msg = "Error while versioning the template" self.status = "failed" return self @@ -2494,16 +2541,16 @@ class Template(DnacBase): response = self.dnac._exec( family="configuration_templates", function='export_projects', + op_modifies=True, params={ "payload": export_project, - "active_validation": False, }, ) validation_string = "successfully exported project" self.check_task_response_status(response, validation_string, True).check_return_status() - self.result['response'][0].update({"exportProject": self.msg}) + self.result['response'][1].get("export").get("response").update({"exportProject": self.msg}) export_values = export.get("template") if export_values: @@ -2513,16 +2560,16 @@ class Template(DnacBase): response = self.dnac._exec( family="configuration_templates", function='export_templates', + op_modifies=True, params={ "payload": self.export_template, - "active_validation": False, }, ) validation_string = "successfully exported template" self.check_task_response_status(response, validation_string, True).check_return_status() - self.result['response'][0].update({"exportTemplate": self.msg}) + self.result['response'][1].get("export").get("response").update({"exportTemplate": self.msg}) return self @@ -2558,7 +2605,6 @@ class Template(DnacBase): _import_project = { "do_version": do_version, "payload": final_payload, - "active_validation": False, } self.log("Importing project details from the playbook: {0}" .format(_import_project), "DEBUG") @@ -2566,14 +2612,15 @@ class Template(DnacBase): response = self.dnac._exec( family="configuration_templates", function='imports_the_projects_provided', + op_modifies=True, params=_import_project, ) validation_string = "successfully imported project" self.check_task_response_status(response, validation_string).check_return_status() - self.result['response'][0].update({"importProject": validation_string}) + self.result['response'][2].get("import").get("response").update({"importProject": validation_string}) else: self.msg = "Projects '{0}' already available.".format(payload) - self.result['response'][0].update({ + self.result['response'][2].get("import").get("response").update({ "importProject": "Projects '{0}' already available.".format(payload) }) @@ -2582,39 +2629,71 @@ class Template(DnacBase): do_version = _import_template.get("do_version") if not do_version: do_version = False + + project_name = _import_template.get("project_name") if not _import_template.get("project_name"): self.msg = "Mandatory parameter project_name is not found under import template" self.status = "failed" return self - if not _import_template.get("payload"): - self.msg = "Mandatory parameter payload is not found under import template" + is_project_exists = self.get_project_details(project_name) + if not is_project_exists: + self.msg = "Project '{0}' is not found.".format(project_name) self.status = "failed" return self payload = _import_template.get("payload") - final_payload = [] - for item in payload: - self.log(str(item)) - final_payload.append(self.get_template_params(item)) - self.log(str(final_payload)) + template_file = _import_template.get("template_file") + if not (payload or template_file): + self.msg = "Mandatory parameter 'payload' or 'template_file' is not found under import template" + self.status = "failed" + return self + + final_payload = None + if template_file: + is_path_exists = self.is_path_exists(template_file) + if not is_path_exists: + self.msg = "Import template file path '{0}' does not exist.".format(template_file) + self.status = "failed" + return self + + is_json = self.is_json(template_file) + if not is_json: + self.msg = "Import template file '{0}' is not in JSON format".format(template_file) + self.status = "failed" + return self + try: + with open(template_file, 'r') as file: + json_data = file.read() + json_template = json.loads(json_data) + final_payload = json_template + except Exception as msg: + self.msg = "An unexpected error occurred while processing the file '{0}': {1}".format(template_file, msg) + self.status = "failed" + return self + + elif payload: + final_payload = [] + for item in payload: + final_payload.append(self.get_template_params(item)) import_template = { - "do_version": _import_template.get("do_version"), - "project_name": _import_template.get("project_name"), + "do_version": do_version, + "project_name": project_name, "payload": final_payload, - "active_validation": False, } self.log("Import template details from the playbook: {0}" - .format(_import_template), "DEBUG") + .format(import_template), "DEBUG") if _import_template: response = self.dnac._exec( family="configuration_templates", function='imports_the_templates_provided', + op_modifies=True, params=import_template ) validation_string = "successfully imported template" self.check_task_response_status(response, validation_string).check_return_status() - self.result['response'][0].update({"importTemplate": validation_string}) + self.result['response'][2].get("import").get("response") \ + .update({"importTemplate": "Successfully imported the templates"}) return self @@ -2679,19 +2758,20 @@ class Template(DnacBase): response = self.dnac_apply['exec']( family="configuration_templates", function=deletion_value, + op_modifies=True, params=params_key, ) task_id = response.get("response").get("taskId") if task_id: task_details = self.get_task_details(task_id) self.result['changed'] = True - self.result['msg'] = task_details.get('progress') - self.result['diff'] = config.get("configuration_templates") + self.result['response'][0].get("configurationTemplate")['msg'] = task_details.get('progress') + self.result['response'][0].get("configurationTemplate")['diff'] = config.get("configuration_templates") self.log("Task details for '{0}': {1}".format(deletion_value, task_details), "DEBUG") - self.result['response'] = task_details if task_details else response - if not self.result['msg']: - self.result['msg'] = "Error while deleting {name} : " + self.result['response'][0].get("configurationTemplate")['response'] = task_details if task_details else response + if not self.result['response'][0].get("configurationTemplate")['msg']: + self.result['response'][0].get("configurationTemplate")['msg'] = "Error while deleting {name} : " self.status = "failed" return self @@ -2774,11 +2854,11 @@ class Template(DnacBase): "softwareVariant", "templateContent"] for item in template_params: if self.have_template.get("template").get(item) != self.want.get("template_params").get(item): - self.msg = " Configuration Template config is not applied to the Cisco Catalyst Center." + self.msg = "Configuration Template config is not applied to the Cisco Catalyst Center." self.status = "failed" return self self.log("Successfully validated the Template in the Catalyst Center.", "INFO") - self.result.get("response").update({"Validation": "Success"}) + self.result['response'][0].get("configurationTemplate").get("response").update({"Validation": "Success"}) self.msg = "Successfully validated the Configuration Templates." self.status = "success" @@ -2803,6 +2883,7 @@ class Template(DnacBase): template_list = self.dnac_apply['exec']( family="configuration_templates", function="gets_the_templates_available", + op_modifies=True, params={"projectNames": config.get("projectName")}, ) if template_list and isinstance(template_list, list): @@ -2816,7 +2897,7 @@ class Template(DnacBase): return self self.log("Successfully validated absence of template in the Catalyst Center.", "INFO") - self.result.get("response").update({"Validation": "Success"}) + self.result['response'][0].get("configurationTemplate").get("response").update({"Validation": "Success"}) self.msg = "Successfully validated the absence of Template in the Cisco Catalyst Center." self.status = "success" @@ -2841,24 +2922,25 @@ class Template(DnacBase): def main(): """ main entry point for module execution""" - element_spec = {'dnac_host': {'required': True, 'type': 'str'}, - 'dnac_port': {'type': 'str', 'default': '443'}, - 'dnac_username': {'type': 'str', 'default': 'admin', 'aliases': ['user']}, - 'dnac_password': {'type': 'str', 'no_log': True}, - 'dnac_verify': {'type': 'bool', 'default': 'True'}, - 'dnac_version': {'type': 'str', 'default': '2.2.3.3'}, - 'dnac_debug': {'type': 'bool', 'default': False}, - 'dnac_log': {'type': 'bool', 'default': False}, - "dnac_log_level": {"type": 'str', "default": 'WARNING'}, - "dnac_log_file_path": {"type": 'str', "default": 'dnac.log'}, - "dnac_log_append": {"type": 'bool', "default": True}, - 'validate_response_schema': {'type': 'bool', 'default': True}, - "config_verify": {"type": 'bool', "default": False}, - 'dnac_api_task_timeout': {'type': 'int', "default": 1200}, - 'dnac_task_poll_interval': {'type': 'int', "default": 2}, - 'config': {'required': True, 'type': 'list', 'elements': 'dict'}, - 'state': {'default': 'merged', 'choices': ['merged', 'deleted']} - } + element_spec = { + 'dnac_host': {'required': True, 'type': 'str'}, + 'dnac_port': {'type': 'str', 'default': '443'}, + 'dnac_username': {'type': 'str', 'default': 'admin', 'aliases': ['user']}, + 'dnac_password': {'type': 'str', 'no_log': True}, + 'dnac_verify': {'type': 'bool', 'default': 'True'}, + 'dnac_version': {'type': 'str', 'default': '2.2.3.3'}, + 'dnac_debug': {'type': 'bool', 'default': False}, + 'dnac_log': {'type': 'bool', 'default': False}, + "dnac_log_level": {"type": 'str', "default": 'WARNING'}, + "dnac_log_file_path": {"type": 'str', "default": 'dnac.log'}, + "dnac_log_append": {"type": 'bool', "default": True}, + 'validate_response_schema': {'type': 'bool', 'default': True}, + "config_verify": {"type": 'bool', "default": False}, + 'dnac_api_task_timeout': {'type': 'int', "default": 1200}, + 'dnac_task_poll_interval': {'type': 'int', "default": 2}, + 'config': {'required': True, 'type': 'list', 'elements': 'dict'}, + 'state': {'default': 'merged', 'choices': ['merged', 'deleted']} + } module = AnsibleModule(argument_spec=element_spec, supports_check_mode=False) ccc_template = Template(module) diff --git a/ansible_collections/cisco/dnac/plugins/modules/templates_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/templates_details_info.py index d8d2b0704..f2f45271c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/templates_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/templates_details_info.py @@ -89,8 +89,8 @@ options: - Limit query parameter. Limits number of results. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Configuration Templates GetTemplatesDetails description: Complete reference of the GetTemplatesDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/threat_detail.py b/ansible_collections/cisco/dnac/plugins/modules/threat_detail.py index 685b60b15..0bcfac62c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/threat_detail.py +++ b/ansible_collections/cisco/dnac/plugins/modules/threat_detail.py @@ -44,8 +44,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are devices.Devices.threat_details, diff --git a/ansible_collections/cisco/dnac/plugins/modules/threat_detail_count.py b/ansible_collections/cisco/dnac/plugins/modules/threat_detail_count.py index fab706a16..7a21cd1ad 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/threat_detail_count.py +++ b/ansible_collections/cisco/dnac/plugins/modules/threat_detail_count.py @@ -44,8 +44,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are devices.Devices.threat_detail_count, diff --git a/ansible_collections/cisco/dnac/plugins/modules/threat_summary.py b/ansible_collections/cisco/dnac/plugins/modules/threat_summary.py index e3f3742bb..635b0c43c 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/threat_summary.py +++ b/ansible_collections/cisco/dnac/plugins/modules/threat_summary.py @@ -35,8 +35,8 @@ options: elements: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 notes: - SDK Method used are devices.Devices.threat_summary, diff --git a/ansible_collections/cisco/dnac/plugins/modules/topology_layer_2_info.py b/ansible_collections/cisco/dnac/plugins/modules/topology_layer_2_info.py index 2d9324000..2ba3667e2 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/topology_layer_2_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/topology_layer_2_info.py @@ -24,8 +24,8 @@ options: - VlanID path parameter. Vlan Name for e.g Vlan1, Vlan23 etc. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Topology GetTopologyDetails description: Complete reference of the GetTopologyDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/topology_layer_3_info.py b/ansible_collections/cisco/dnac/plugins/modules/topology_layer_3_info.py index fc09e3f56..008b5d1ac 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/topology_layer_3_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/topology_layer_3_info.py @@ -24,8 +24,8 @@ options: - TopologyType path parameter. Type of topology(OSPF,ISIS,etc). type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Topology GetL3TopologyDetails description: Complete reference of the GetL3TopologyDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/topology_network_health_info.py b/ansible_collections/cisco/dnac/plugins/modules/topology_network_health_info.py index 907a87c5f..b9c856316 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/topology_network_health_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/topology_network_health_info.py @@ -26,8 +26,8 @@ options: - Timestamp query parameter. Epoch time(in milliseconds) when the Network health data is required. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Topology GetOverallNetworkHealth description: Complete reference of the GetOverallNetworkHealth API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/topology_physical_info.py b/ansible_collections/cisco/dnac/plugins/modules/topology_physical_info.py index 89afc87f2..6a9573d57 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/topology_physical_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/topology_physical_info.py @@ -24,8 +24,8 @@ options: - NodeType query parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Topology GetPhysicalTopology description: Complete reference of the GetPhysicalTopology API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/topology_site_info.py b/ansible_collections/cisco/dnac/plugins/modules/topology_site_info.py index 034c84c96..d63661b43 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/topology_site_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/topology_site_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Topology GetSiteTopology description: Complete reference of the GetSiteTopology API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/topology_vlan_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/topology_vlan_details_info.py index c8585d26a..555b5b9d8 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/topology_vlan_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/topology_vlan_details_info.py @@ -20,8 +20,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Topology GetVLANDetails description: Complete reference of the GetVLANDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/transit_peer_network.py b/ansible_collections/cisco/dnac/plugins/modules/transit_peer_network.py index 29c9889c1..38125e4d3 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/transit_peer_network.py +++ b/ansible_collections/cisco/dnac/plugins/modules/transit_peer_network.py @@ -49,8 +49,8 @@ options: description: Transit Peer Network Type. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for AddTransitPeerNetwork description: Complete reference of the AddTransitPeerNetwork API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/transit_peer_network_info.py b/ansible_collections/cisco/dnac/plugins/modules/transit_peer_network_info.py index ef9ecac22..75ca07d7a 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/transit_peer_network_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/transit_peer_network_info.py @@ -24,8 +24,8 @@ options: - TransitPeerNetworkName query parameter. Transit or Peer Network Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for GetTransitPeerNetworkInfo description: Complete reference of the GetTransitPeerNetworkInfo API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/user.py b/ansible_collections/cisco/dnac/plugins/modules/user.py index 21769bb83..4567de33d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/user.py +++ b/ansible_collections/cisco/dnac/plugins/modules/user.py @@ -40,8 +40,8 @@ options: description: Username. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for User and Roles AddUserAPI description: Complete reference of the AddUserAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/user_enrichment_details_info.py b/ansible_collections/cisco/dnac/plugins/modules/user_enrichment_details_info.py index 246dd7a83..bcffca746 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/user_enrichment_details_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/user_enrichment_details_info.py @@ -22,8 +22,8 @@ options: description: Additional headers. type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Users GetUserEnrichmentDetails description: Complete reference of the GetUserEnrichmentDetails API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/user_info.py b/ansible_collections/cisco/dnac/plugins/modules/user_info.py index f00e1d66e..d4c20af69 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/user_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/user_info.py @@ -24,8 +24,8 @@ options: - InvokeSource query parameter. The source that invokes this API. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for User and Roles GetUsersAPI description: Complete reference of the GetUsersAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/users_external_servers_info.py b/ansible_collections/cisco/dnac/plugins/modules/users_external_servers_info.py index 536f958c8..0373d2c85 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/users_external_servers_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/users_external_servers_info.py @@ -24,8 +24,8 @@ options: - InvokeSource query parameter. The source that invokes this API. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for User and Roles GetExternalAuthenticationServersAPI description: Complete reference of the GetExternalAuthenticationServersAPI API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_accespoint_configuration.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_accespoint_configuration.py index 94dee6c5d..6a1cf2946 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_accespoint_configuration.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_accespoint_configuration.py @@ -238,8 +238,8 @@ options: type: str type: dict requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless ConfigureAccessPoints description: Complete reference of the ConfigureAccessPoints API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_accesspoint_configuration_summary_info.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_accesspoint_configuration_summary_info.py index 3c2130868..ba43fe052 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_accesspoint_configuration_summary_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_accesspoint_configuration_summary_info.py @@ -24,8 +24,8 @@ options: - Key query parameter. The ethernet MAC address of Access point. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless GetAccessPointConfiguration description: Complete reference of the GetAccessPointConfiguration API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_dynamic_interface.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_dynamic_interface.py index ea48c7970..ed933a268 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_dynamic_interface.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_dynamic_interface.py @@ -27,8 +27,8 @@ options: description: Vlan Id. type: int requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless CreateUpdateDynamicInterface description: Complete reference of the CreateUpdateDynamicInterface API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_dynamic_interface_info.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_dynamic_interface_info.py index d1736fb20..152b1c339 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_dynamic_interface_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_dynamic_interface_info.py @@ -26,8 +26,8 @@ options: will be retrieved. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless GetDynamicInterface description: Complete reference of the GetDynamicInterface API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_enterprise_ssid.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_enterprise_ssid.py index eb8790381..f288aaada 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_enterprise_ssid.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_enterprise_ssid.py @@ -81,8 +81,8 @@ options: description: Traffic Type Enum (voicedata or data ). type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless CreateEnterpriseSSID description: Complete reference of the CreateEnterpriseSSID API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_enterprise_ssid_info.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_enterprise_ssid_info.py index 8abacd832..b277d03bd 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_enterprise_ssid_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_enterprise_ssid_info.py @@ -26,8 +26,8 @@ options: enterprise SSIDs will be retrieved. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless GetEnterpriseSSID description: Complete reference of the GetEnterpriseSSID API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_profile.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_profile.py index 4c696f0d6..7c837cca7 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_profile.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_profile.py @@ -68,8 +68,8 @@ options: description: WirelessProfileName path parameter. Wireless Profile Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless CreateWirelessProfile description: Complete reference of the CreateWirelessProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_profile_info.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_profile_info.py index f88760c14..fb175dedf 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_profile_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_profile_info.py @@ -24,8 +24,8 @@ options: - ProfileName query parameter. Wireless Network Profile Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless GetWirelessProfile description: Complete reference of the GetWirelessProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_access_point.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_access_point.py index f8db0233c..d4651745f 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_access_point.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_access_point.py @@ -47,8 +47,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless APProvision description: Complete reference of the APProvision API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_device_create.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_device_create.py index d626052a7..84622d990 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_device_create.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_device_create.py @@ -55,8 +55,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless Provision description: Complete reference of the Provision API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_device_update.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_device_update.py index 07e983f30..c76487739 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_device_update.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_device_update.py @@ -55,8 +55,8 @@ options: type: list type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless ProvisionUpdate description: Complete reference of the ProvisionUpdate API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_ssid_create_provision.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_ssid_create_provision.py index 5a7322ea9..a0627c125 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_ssid_create_provision.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_ssid_create_provision.py @@ -78,8 +78,8 @@ options: description: SSID Type. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless CreateAndProvisionSSID description: Complete reference of the CreateAndProvisionSSID API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_ssid_delete_reprovision.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_ssid_delete_reprovision.py index fed3cb2ca..8d713ce13 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_ssid_delete_reprovision.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_provision_ssid_delete_reprovision.py @@ -26,8 +26,8 @@ options: description: SsidName path parameter. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless DeleteSSIDAndProvisionItToDevices description: Complete reference of the DeleteSSIDAndProvisionItToDevices API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_psk_override.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_psk_override.py index 0afada7c5..163ea45b5 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_psk_override.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_psk_override.py @@ -34,8 +34,8 @@ options: type: str type: list requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless PSKOverride description: Complete reference of the PSKOverride API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_rf_profile.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_rf_profile.py index 4aa97f651..86c7ad953 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_rf_profile.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_rf_profile.py @@ -130,8 +130,8 @@ options: *non-custom RF profile cannot be deleted. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless CreateOrUpdateRFProfile description: Complete reference of the CreateOrUpdateRFProfile API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_rf_profile_info.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_rf_profile_info.py index 722ddfc40..281f87b6d 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_rf_profile_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_rf_profile_info.py @@ -24,8 +24,8 @@ options: - Rf-profile-name query parameter. RF Profile Name. type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless RetrieveRFProfiles description: Complete reference of the RetrieveRFProfiles API. diff --git a/ansible_collections/cisco/dnac/plugins/modules/wireless_sensor_test_results_info.py b/ansible_collections/cisco/dnac/plugins/modules/wireless_sensor_test_results_info.py index 41d727dd5..f316a4602 100644 --- a/ansible_collections/cisco/dnac/plugins/modules/wireless_sensor_test_results_info.py +++ b/ansible_collections/cisco/dnac/plugins/modules/wireless_sensor_test_results_info.py @@ -36,8 +36,8 @@ options: - TestFailureBy query parameter. Obtain failure statistics group by "area", "building", or "floor". type: str requirements: -- dnacentersdk >= 2.5.5 -- python >= 3.5 +- dnacentersdk >= 2.6.0 +- python >= 3.9 seealso: - name: Cisco DNA Center documentation for Wireless SensorTestResults description: Complete reference of the SensorTestResults API. |