diff --git a/.ansible-lint-ignore b/.ansible-lint-ignore new file mode 100644 index 000000000..1b998f3ec --- /dev/null +++ b/.ansible-lint-ignore @@ -0,0 +1,7 @@ +workflows/docs.yml yaml[truthy] +workflows/docs.yml yaml[new-line-at-end-of-file] +workflows/docs.yml yaml[line-length] +workflows/docs.yml yaml[new-line-at-end-of-file] +workflows/sanity_tests.yml yaml[truthy] +workflows/ansible-lint.yml yaml[new-line-at-end-of-file] +.github/workflows/ansible-lint.yml yaml[new-line-at-end-of-file] diff --git a/.github/workflows/ansible-lint.yml b/.github/workflows/ansible-lint.yml new file mode 100644 index 000000000..95e3e35a0 --- /dev/null +++ b/.github/workflows/ansible-lint.yml @@ -0,0 +1,18 @@ +# .github/workflows/ansible-lint.yml +name: ansible-lint +on: + pull_request: + branches: ["main", "stable", "release/v*"] +jobs: + build: + name: Ansible Lint # Naming the build is important to use it as a status check + runs-on: ubuntu-24.04 + steps: + - uses: actions/checkout@v4 + - name: Run ansible-lint + uses: ansible/ansible-lint@main + with: + args: "" + setup_python: "true" + working_directory: "" + requirements_file: "" diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 4498aadb5..d2724a330 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -29,13 +29,14 @@ jobs: run: make doc - name: commit docs run: | - git checkout gh-pages + git checkout gh-pages || git checkout -b gh-pages rm -rf $(basename ${GITHUB_REF}) mv docs/_build/html $(basename ${GITHUB_REF}) git show origin/main:docs/_gh_include/header.inc > index.html (echo main; dirname v*/index.html | sort --version-sort --reverse) \ | xargs -I@@ \ - -n1 echo '

@@

' >> index.html + -n1 echo '
' \ + '

@@

' >> index.html git show origin/main:docs/_gh_include/footer.inc >> index.html git add $(basename ${GITHUB_REF}) index.html git commit -m "update docs for $(basename ${GITHUB_REF})" || true diff --git a/.github/workflows/sanity_tests.yml b/.github/workflows/sanity_tests.yml index a6d55c4a2..9347bc934 100644 --- a/.github/workflows/sanity_tests.yml +++ b/.github/workflows/sanity_tests.yml @@ -1,13 +1,13 @@ name: CI on: push: - branches: [ main ] + branches: [main] pull_request: schedule: - cron: '0 6 * * *' env: NAMESPACE: cisco - COLLECTION_NAME: meraki + COLLECTION_NAME: meraki jobs: sanity: name: Sanity (Ⓐ${{ matrix.ansible }}) @@ -37,4 +37,4 @@ jobs: 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}} \ No newline at end of file + working-directory: ./ansible_collections/${{env.NAMESPACE}}/${{env.COLLECTION_NAME}} diff --git a/README.md b/README.md index 2ca3ab8f9..e93447b62 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,8 @@ meraki_server Create a playbook `who_am_i.yml` ([example](https://github.com/meraki/dashboard-api-ansible/blob/main/playbooks/who_am_i.yml)): ``` --- -- hosts: meraki_servers +- name: Play Name + hosts: meraki_servers gather_facts: false tasks: - name: Get my administered identities @@ -139,10 +140,10 @@ The modules that were there before, usually with a `meraki` prefix, are maintain ``` - name: Create webhook cisco.meraki.networks_webhooks_http_servers: - meraki_api_key: "{{meraki_api_key}}" + meraki_api_key: "{{ meraki_api_key }}" state: present name: Test_Hook - networkId: "{{network_id}}" + networkId: "{{ network_id }}" payloadTemplate: name: Slack (included) payloadTemplateId: wpt_00001 diff --git a/changelogs/changelog.yaml b/changelogs/changelog.yaml index b55b66afb..1b082df3a 100644 --- a/changelogs/changelog.yaml +++ b/changelogs/changelog.yaml @@ -3,963 +3,963 @@ releases: 2.0.0: changes: breaking_changes: - - meraki_device - Changed tags from string to list - - meraki_device - Removed serial_lldp_cdp parameter - - meraki_device - Removed serial_uplink parameter - - meraki_intrusion_prevention - Rename whitedlisted_rules to allowed_rules - - meraki_mx_l3_firewall - Rule responses are now in a `rules` list - - meraki_mx_l7_firewall - Rename blacklisted_countries to blocked_countries - - meraki_mx_l7_firewall - Rename whitelisted_countries to allowed_countries - - meraki_network - Local and remote status page settings cannot be set during - network creation - - meraki_network - `disableRemoteStatusPage` response is now `remote_status_page_enabled` - - meraki_network - `disable_my_meraki_com` response is now `local_status_page_enabled` - - meraki_network - `disable_my_meraki` has been deprecated - - meraki_network - `enable_my_meraki` is now called `local_status_page_enabled` - - meraki_network - `enable_remote_status_page` is now called `remote_status_page_enabled` - - meraki_network - `enabled` response for VLAN status is now `vlans_enabled` - - meraki_network - `tags` and `type` now return a list - - meraki_snmp - peer_ips is now a list - - meraki_switchport - `access_policy_number` is now an int and not a string - - meraki_switchport - `tags` is now a list and not a string - - meraki_webhook - Querying test status now uses state of query. + - meraki_device - Changed tags from string to list + - meraki_device - Removed serial_lldp_cdp parameter + - meraki_device - Removed serial_uplink parameter + - meraki_intrusion_prevention - Rename whitedlisted_rules to allowed_rules + - meraki_mx_l3_firewall - Rule responses are now in a `rules` list + - meraki_mx_l7_firewall - Rename blacklisted_countries to blocked_countries + - meraki_mx_l7_firewall - Rename whitelisted_countries to allowed_countries + - meraki_network - Local and remote status page settings cannot be set during + network creation + - meraki_network - `disableRemoteStatusPage` response is now `remote_status_page_enabled` + - meraki_network - `disable_my_meraki_com` response is now `local_status_page_enabled` + - meraki_network - `disable_my_meraki` has been deprecated + - meraki_network - `enable_my_meraki` is now called `local_status_page_enabled` + - meraki_network - `enable_remote_status_page` is now called `remote_status_page_enabled` + - meraki_network - `enabled` response for VLAN status is now `vlans_enabled` + - meraki_network - `tags` and `type` now return a list + - meraki_snmp - peer_ips is now a list + - meraki_switchport - `access_policy_number` is now an int and not a string + - meraki_switchport - `tags` is now a list and not a string + - meraki_webhook - Querying test status now uses state of query. bugfixes: - - Remove unnecessary files from the collection package, significantly reduces - package size - - meraki_admin - Fix error when adding network privileges to admin using network - name - - meraki_switch_stack - Fix situation where module may crash due to switch being - in or not in a stack already - - meraki_webhook - Proper response is shown when creating webhook test + - Remove unnecessary files from the collection package, significantly reduces + package size + - meraki_admin - Fix error when adding network privileges to admin using network + name + - meraki_switch_stack - Fix situation where module may crash due to switch being + in or not in a stack already + - meraki_webhook - Proper response is shown when creating webhook test major_changes: - - Rewrite requests method for version 1.0 API and improved readability - - meraki_mr_rf_profile - Configure wireless RF profiles. - - meraki_mr_settings - Configure network settings for wireless. - - meraki_ms_l3_interface - New module - - meraki_ms_ospf - Configure OSPF. + - Rewrite requests method for version 1.0 API and improved readability + - meraki_mr_rf_profile - Configure wireless RF profiles. + - meraki_mr_settings - Configure network settings for wireless. + - meraki_ms_l3_interface - New module + - meraki_ms_ospf - Configure OSPF. minor_changes: - - meraki - Add optional debugging for is_update_required() method. - - meraki_admin - Update endpoints for API v1 - - meraki_alert - Manage network wide alert settings. - - meraki_device - Added query parameter - - meraki_intrusion_prevention - Change documentation to show proper way to clear - rules - - meraki_malware - Update documentation to show how to allow multiple URLs at - once. - - meraki_mx_l2_interface - Configure physical interfaces on MX appliances. - - meraki_mx_uplink - Renamed to meraki_mx_uplink_bandwidth - - meraki_ssid - Add `WPA3 Only` and `WPA3 Transition Mode` - - meraki_switchport - Add support for `access_policy_type` parameter + - meraki - Add optional debugging for is_update_required() method. + - meraki_admin - Update endpoints for API v1 + - meraki_alert - Manage network wide alert settings. + - meraki_device - Added query parameter + - meraki_intrusion_prevention - Change documentation to show proper way to clear + rules + - meraki_malware - Update documentation to show how to allow multiple URLs at + once. + - meraki_mx_l2_interface - Configure physical interfaces on MX appliances. + - meraki_mx_uplink - Renamed to meraki_mx_uplink_bandwidth + - meraki_ssid - Add `WPA3 Only` and `WPA3 Transition Mode` + - meraki_switchport - Add support for `access_policy_type` parameter security_fixes: - - meraki_webhook - diff output may show data for values set to not display + - meraki_webhook - diff output may show data for values set to not display fragments: - - add-build-ignore.yml - - diff_secret_fix.yml - - is_update_debug.yml - - malware_docs.yml - - malware_mx_l2_interface.yml - - meraki_admin.yml - - meraki_alert.yml - - meraki_content_filtering.yml - - meraki_device.yml - - meraki_firewalled_services.yml - - meraki_intrusion_prevention.yml - - meraki_malware.yml - - meraki_management_interface.yml - - meraki_mr_l3_firewall.yml - - meraki_mr_rf_profile.yml - - meraki_mr_settings.yml - - meraki_ms_l3_interface.yml - - meraki_ms_ospf.yml - - meraki_mx_l3_firewall.yml - - meraki_mx_l7_firewall.yml - - meraki_mx_uplink.yml - - meraki_nat.yml - - meraki_network_update.yml - - meraki_site_to_site_vpn.yml - - meraki_snmp.yml - - meraki_ssid.yml - - meraki_static_route.yml - - meraki_switch_stack.yml - - meraki_switch_storm_control.yml - - meraki_switchport.yml - - meraki_syslog.yml - - meraki_vlan.yml - - meraki_webhook.yml - - requests-rewrite.yml - - ssid-tags-fix.yml - - ssid_wpa3.yml - release_date: '2020-08-27' + - add-build-ignore.yml + - diff_secret_fix.yml + - is_update_debug.yml + - malware_docs.yml + - malware_mx_l2_interface.yml + - meraki_admin.yml + - meraki_alert.yml + - meraki_content_filtering.yml + - meraki_device.yml + - meraki_firewalled_services.yml + - meraki_intrusion_prevention.yml + - meraki_malware.yml + - meraki_management_interface.yml + - meraki_mr_l3_firewall.yml + - meraki_mr_rf_profile.yml + - meraki_mr_settings.yml + - meraki_ms_l3_interface.yml + - meraki_ms_ospf.yml + - meraki_mx_l3_firewall.yml + - meraki_mx_l7_firewall.yml + - meraki_mx_uplink.yml + - meraki_nat.yml + - meraki_network_update.yml + - meraki_site_to_site_vpn.yml + - meraki_snmp.yml + - meraki_ssid.yml + - meraki_static_route.yml + - meraki_switch_stack.yml + - meraki_switch_storm_control.yml + - meraki_switchport.yml + - meraki_syslog.yml + - meraki_vlan.yml + - meraki_webhook.yml + - requests-rewrite.yml + - ssid-tags-fix.yml + - ssid_wpa3.yml + release_date: "2020-08-27" 2.1.0: modules: - - description: Manage alerts in the Meraki cloud - name: meraki_alert - namespace: '' - - description: Configure MX layer 2 interfaces - name: meraki_mx_l2_interface - namespace: '' - release_date: '2020-10-16' + - description: Manage alerts in the Meraki cloud + name: meraki_alert + namespace: "" + - description: Configure MX layer 2 interfaces + name: meraki_mx_l2_interface + namespace: "" + release_date: "2020-10-16" 2.1.1: changes: bugfixes: - - meraki_management_interface - Fix crash when modifying a non-MX management - interface. + - meraki_management_interface - Fix crash when modifying a non-MX management + interface. fragments: - - management_ms_fix.yml - release_date: '2020-11-02' + - management_ms_fix.yml + release_date: "2020-11-02" 2.1.2: changes: bugfixes: - - Remove test output as it made the collection, and Ansible, huge. + - Remove test output as it made the collection, and Ansible, huge. fragments: - - size_fix.yml - release_date: '2020-11-04' + - size_fix.yml + release_date: "2020-11-04" 2.1.3: changes: bugfixes: - - meraki_device - Support pagination. This allows for more than 1,000 devices - to be listed at a time. - - meraki_network - Support pagination. This allows for more than 1,000 networks - to be listed at a time. + - meraki_device - Support pagination. This allows for more than 1,000 devices + to be listed at a time. + - meraki_network - Support pagination. This allows for more than 1,000 networks + to be listed at a time. fragments: - - pagination.yml - release_date: '2020-12-16' + - pagination.yml + release_date: "2020-12-16" 2.10.0: changes: minor_changes: - - meraki_network - Add support for `copy_from_network_id`. + - meraki_network - Add support for `copy_from_network_id`. fragments: - - 335-net_copy.yml - - rename_method.yml - release_date: '2022-07-06' + - 335-net_copy.yml + - rename_method.yml + release_date: "2022-07-06" 2.10.1: changes: minor_changes: - - Change shebang in Sublime utils to point to env instead of direct to the path + - Change shebang in Sublime utils to point to env instead of direct to the path fragments: - - changelog-frags.yml - - sublime-utils.yml - release_date: '2022-07-16' + - changelog-frags.yml + - sublime-utils.yml + release_date: "2022-07-16" 2.11.0: changes: minor_changes: - - Add GPLv3 license. Always was GPLv3, but didn't have the file. - - Change shebang in Sublime utils to point to env instead of direct to the path - - meraki_alert - Change type for opbject to alert_type in examples - - meraki_ms_access_policies - New module to create, delete, update Access Policies - in the Switch settings - - meraki_ssid - Add support for `ap_availability_tags`. - - meraki_ssid - Add support for `available_on_all_aps` - - meraki_ssid - Add support for `lan_isolation_enabled`. - - meraki_ssid - Add support for `visible`. + - Add GPLv3 license. Always was GPLv3, but didn't have the file. + - Change shebang in Sublime utils to point to env instead of direct to the path + - meraki_alert - Change type for opbject to alert_type in examples + - meraki_ms_access_policies - New module to create, delete, update Access Policies + in the Switch settings + - meraki_ssid - Add support for `ap_availability_tags`. + - meraki_ssid - Add support for `available_on_all_aps` + - meraki_ssid - Add support for `lan_isolation_enabled`. + - meraki_ssid - Add support for `visible`. fragments: - - add-meraki_ms_access_policy.yml - - alert_examples.yml - - amend_meraki_network.yml - - changelog-frags.yml - - license.yml - - meraki_mr_ssid.yaml - - meraki_mr_ssid_availability_tags.yaml - - meraki_mr_ssid_lan_isolation.yaml - - shebang.yml - - ssid_test_fix.yml - - sublime-utils.yml - release_date: '2022-09-12' + - add-meraki_ms_access_policy.yml + - alert_examples.yml + - amend_meraki_network.yml + - changelog-frags.yml + - license.yml + - meraki_mr_ssid.yaml + - meraki_mr_ssid_availability_tags.yaml + - meraki_mr_ssid_lan_isolation.yaml + - shebang.yml + - ssid_test_fix.yml + - sublime-utils.yml + release_date: "2022-09-12" 2.12.0: changes: bugfixes: - - Update defaults in documentation for new sanity tests - - meraki_device - Fix URL for LLDP and CDP lookups + - Update defaults in documentation for new sanity tests + - meraki_device - Fix URL for LLDP and CDP lookups major_changes: - - meraki_webhook_payload_template - New module + - meraki_webhook_payload_template - New module fragments: - - 2.15-docs.yml - - 2.15-prep.yml - - device_lldp.yml - - fix-meraki-mr-radio-tests.yml - - meraki_ms_switch_pollicy_doc.yml - - meraki_webhook_payload_template.yml - - warnings-.yml - - warnings-meraki_action_batch.yml - - warnings-meraki_admin.yml - - warnings-meraki_alert.yml - - warnings-meraki_config_template.yml - - warnings-meraki_device.yml - - warnings-meraki_management_interface.yml - - warnings-meraki_mr_l3_firewall.yml - - warnings-meraki_mr_radio.yml - - warnings-meraki_mr_rf_profile.yml - release_date: '2022-11-21' + - 2.15-docs.yml + - 2.15-prep.yml + - device_lldp.yml + - fix-meraki-mr-radio-tests.yml + - meraki_ms_switch_pollicy_doc.yml + - meraki_webhook_payload_template.yml + - warnings-.yml + - warnings-meraki_action_batch.yml + - warnings-meraki_admin.yml + - warnings-meraki_alert.yml + - warnings-meraki_config_template.yml + - warnings-meraki_device.yml + - warnings-meraki_management_interface.yml + - warnings-meraki_mr_l3_firewall.yml + - warnings-meraki_mr_radio.yml + - warnings-meraki_mr_rf_profile.yml + release_date: "2022-11-21" 2.13.0: changes: major_changes: - - meraki_mr_l7_firewall - New module + - meraki_mr_l7_firewall - New module fragments: - - meraki_mr_l7_firewall.yml - release_date: '2022-11-21' + - meraki_mr_l7_firewall.yml + release_date: "2022-11-21" 2.14.0: changes: bugfixes: - - Fix checkmode on merak webhook payload template update - - meraki_webhook - First error when updating URL in a webhook + - Fix checkmode on merak webhook payload template update + - meraki_webhook - First error when updating URL in a webhook minor_changes: - - meraki_webhook - Add payload template parameter + - meraki_webhook - Add payload template parameter fragments: - - bugfixes-meraki_webhook_payload_template.yml - - warnings-meraki_mr_settings.yml - - warnings-meraki_ms_access_list.yml - - warnings-meraki_ms_storm_control.yml - - webhook-diff.yml - - webhook-plus-payload-templates.yml - release_date: '2023-01-05' + - bugfixes-meraki_webhook_payload_template.yml + - warnings-meraki_mr_settings.yml + - warnings-meraki_ms_access_list.yml + - warnings-meraki_ms_storm_control.yml + - webhook-diff.yml + - webhook-plus-payload-templates.yml + release_date: "2023-01-05" 2.15.0: changes: bugfixes: - - Resolved issue - - Update pipeline to use newer version of action to detect changed files. - - meraki_alert - Fix situation where specifying emails may crash. - - meraki_mx_site_to_site_vpn - Check mode should no longer apply changes when - enabled. + - Resolved issue + - Update pipeline to use newer version of action to detect changed files. + - meraki_alert - Fix situation where specifying emails may crash. + - meraki_mx_site_to_site_vpn - Check mode should no longer apply changes when + enabled. known_issues: - - meraki_network - Updated documentation for `local_status_page_enabled` and - `remote_status_page_enabled` as these no longer work. + - meraki_network - Updated documentation for `local_status_page_enabled` and + `remote_status_page_enabled` as these no longer work. minor_changes: - - New module - meraki_network_settings - Configure detailed settings of a network. + - New module - meraki_network_settings - Configure detailed settings of a network. fragments: - - 412-meraki_network-settings.yaml - - 412-network-settings.yaml - - 414-alert-emails.yaml - - issue-meraki_mx_content_filtering.yml - - mx-s2s.yaml - - pipeline-changelog.yaml - - warnings-meraki_ms_ospf.yml - - warnings-meraki_ms_stack.yml - - warnings-meraki_ms_switchport.yml - - warnings-meraki_mx_content_filtering.yml - - warnings-meraki_mx_intrusion_prevention.yml - - warnings-meraki_mx_l2_interface.yml - - warnings-meraki_ssid.yml - - workflow-ansible-lint.yml - release_date: '2023-01-24' + - 412-meraki_network-settings.yaml + - 412-network-settings.yaml + - 414-alert-emails.yaml + - issue-meraki_mx_content_filtering.yml + - mx-s2s.yaml + - pipeline-changelog.yaml + - warnings-meraki_ms_ospf.yml + - warnings-meraki_ms_stack.yml + - warnings-meraki_ms_switchport.yml + - warnings-meraki_mx_content_filtering.yml + - warnings-meraki_mx_intrusion_prevention.yml + - warnings-meraki_mx_l2_interface.yml + - warnings-meraki_ssid.yml + - workflow-ansible-lint.yml + release_date: "2023-01-24" 2.15.1: changes: bugfixes: - - Corrects constraints applied to local and remote status page settings to align - with API behaviour (https://github.com/CiscoDevNet/ansible-meraki/issues/437) - - Enables meraki_network query by net_id (https://github.com/CiscoDevNet/ansible-meraki/issues/441) - - Resolved an issue where an empty response from the API triggered an exception - in module meraki_webhook (https://github.com/CiscoDevNet/ansible-meraki/issues/433) - - Resolves issues with meraki_webhook shared_secret defaulting to null; (https://github.com/CiscoDevNet/ansible-meraki/issues/439); - Also adds Test Coverage for shared secret idempotency and resolves test file - lint issues. + - Corrects constraints applied to local and remote status page settings to align + with API behaviour (https://github.com/CiscoDevNet/ansible-meraki/issues/437) + - Enables meraki_network query by net_id (https://github.com/CiscoDevNet/ansible-meraki/issues/441) + - Resolved an issue where an empty response from the API triggered an exception + in module meraki_webhook (https://github.com/CiscoDevNet/ansible-meraki/issues/433) + - Resolves issues with meraki_webhook shared_secret defaulting to null; (https://github.com/CiscoDevNet/ansible-meraki/issues/439); + Also adds Test Coverage for shared secret idempotency and resolves test file + lint issues. fragments: - - 433_Resolve_meraki_webhook_fail_when_none_defined.yml - - Resolve_local_and_remote_status_pages_constraint.yml - - Resolve_meraki_network_query_by_ID_returns_empty_data_object.yml - - Resolve_shared_secret_defaulting_to_null.yml - - warnings-meraki_ms_link_aggregation.yml - release_date: '2023-02-15' + - 433_Resolve_meraki_webhook_fail_when_none_defined.yml + - Resolve_local_and_remote_status_pages_constraint.yml + - Resolve_meraki_network_query_by_ID_returns_empty_data_object.yml + - Resolve_shared_secret_defaulting_to_null.yml + - warnings-meraki_ms_link_aggregation.yml + release_date: "2023-02-15" 2.15.2: changes: bugfixes: - - Resolved the issue with link negotation at meraki_ms_switchport + - Resolved the issue with link negotation at meraki_ms_switchport minor_changes: - - meraki_mx_site_to_site_firewall - Fix updating VPN rules per issue 302. + - meraki_mx_site_to_site_firewall - Fix updating VPN rules per issue 302. fragments: - - 302-firewallorder.yaml - - 445-unused-imports.yml - - ignore-216.yml - - issue-451.yml - - warnings-meraki_mx_l3_firewall.yml - release_date: '2023-07-01' + - 302-firewallorder.yaml + - 445-unused-imports.yml + - ignore-216.yml + - issue-451.yml + - warnings-meraki_mx_l3_firewall.yml + release_date: "2023-07-01" 2.15.3: changes: bugfixes: - - meraki_devices - Fix endpoints due to breaking change in Meraki API v1.33 + - meraki_devices - Fix endpoints due to breaking change in Meraki API v1.33 fragments: - - cicd-3.10.yaml - - device-urls.yaml - - mxs2sfw-sanity.yaml - - organization-sanity.yaml - - snmp-sanity.yaml - - syslog-sanity.yaml - - webhook-sanity.yaml - release_date: '2023-07-16' + - cicd-3.10.yaml + - device-urls.yaml + - mxs2sfw-sanity.yaml + - organization-sanity.yaml + - snmp-sanity.yaml + - syslog-sanity.yaml + - webhook-sanity.yaml + release_date: "2023-07-16" 2.2.0: changes: bugfixes: - - meraki_network - Fix bug where local or remote settings always show changed. + - meraki_network - Fix bug where local or remote settings always show changed. minor_changes: - - meraki_network - Update documentation to show querying of local or remote - settings. - - meraki_ssid - Add Cisco ISE as a splash page option. + - meraki_network - Update documentation to show querying of local or remote + settings. + - meraki_ssid - Add Cisco ISE as a splash page option. fragments: - - network_settings_changed.yml - - ssid_ise.yml - release_date: '2021-02-01' + - network_settings_changed.yml + - ssid_ise.yml + release_date: "2021-02-01" 2.2.1: changes: bugfixes: - - meraki_mx_content_filtering - Fix crash with idempotent condition due to improper - sorting + - meraki_mx_content_filtering - Fix crash with idempotent condition due to improper + sorting fragments: - - 222.yml - release_date: '2021-02-22' + - 222.yml + release_date: "2021-02-22" 2.3.0: changes: bugfixes: - - meraki_ms_switchport - access_policy_types choices are incorrect causing failures. - (https://github.com/CiscoDevNet/ansible-meraki/issues/227). + - meraki_ms_switchport - access_policy_types choices are incorrect causing failures. + (https://github.com/CiscoDevNet/ansible-meraki/issues/227). minor_changes: - - meraki_ms_switchport - Adding additional functionality to support the access_policy_types - "MAC allow list" and "Sticky MAC allow list" port security configuration options. - (https://github.com/CiscoDevNet/ansible-meraki/issues/227). - - meraki_mx_intrusion_prevention - Rename message to rule_message to avoid conflicts - with internal Ansible variables. + - meraki_ms_switchport - Adding additional functionality to support the access_policy_types + "MAC allow list" and "Sticky MAC allow list" port security configuration options. + (https://github.com/CiscoDevNet/ansible-meraki/issues/227). + - meraki_mx_intrusion_prevention - Rename message to rule_message to avoid conflicts + with internal Ansible variables. fragments: - - 228-switchport-module-additions.yml - - msg.yaml - release_date: '2021-05-12' + - 228-switchport-module-additions.yml + - msg.yaml + release_date: "2021-05-12" 2.3.1: changes: bugfixes: - - meraki_ms_switchport - link_negotiation choice for 100 Megabit Auto is incorrect - causing failures. (https://github.com/CiscoDevNet/ansible-meraki/issues/235). + - meraki_ms_switchport - link_negotiation choice for 100 Megabit Auto is incorrect + causing failures. (https://github.com/CiscoDevNet/ansible-meraki/issues/235). fragments: - - CHANGELOG.yml - release_date: '2021-05-19' + - CHANGELOG.yml + release_date: "2021-05-19" 2.4.0: changes: bugfixes: - - Allow a state of absent in voice vlan to allow the value to be nulled out(https://github.com/CiscoDevNet/ansible-meraki/issues/238) + - Allow a state of absent in voice vlan to allow the value to be nulled out(https://github.com/CiscoDevNet/ansible-meraki/issues/238) minor_changes: - - meraki_mx_switchport - Improve documentation for response + - meraki_mx_switchport - Improve documentation for response fragments: - - 0238-vvlan-allow-null.yml - - switchport-docs.yaml - release_date: '2021-06-07' + - 0238-vvlan-allow-null.yml + - switchport-docs.yaml + release_date: "2021-06-07" 2.4.2: changes: bugfixes: - - Fix some flake8 sanity errors as reported by Ansible Galaxy. Should be no - functional change. + - Fix some flake8 sanity errors as reported by Ansible Galaxy. Should be no + functional change. fragments: - - sanity-fixes.yml - release_date: '2021-06-22' + - sanity-fixes.yml + release_date: "2021-06-22" 2.5.0: changes: minor_changes: - - meraki_mr_l3_firewall - Return each MR L3 firewall rule's values in lowercase. - - meraki_mr_ssid - Add support for radius_proxy_enabled SSID setting. - - meraki_mx_l3_firewall - Return each MX L3 firewall rule's values in lowercase. - - meraki_mx_vlan - Fix dhcp_boot_options_enabled parameter + - meraki_mr_l3_firewall - Return each MR L3 firewall rule's values in lowercase. + - meraki_mr_ssid - Add support for radius_proxy_enabled SSID setting. + - meraki_mx_l3_firewall - Return each MX L3 firewall rule's values in lowercase. + - meraki_mx_vlan - Fix dhcp_boot_options_enabled parameter fragments: - - dhcp_boot_options_enabled.yaml - - lowercase-firewall-rule-values.yml - - radius_proxy_enabled.yaml - release_date: '2021-10-14' + - dhcp_boot_options_enabled.yaml + - lowercase-firewall-rule-values.yml + - radius_proxy_enabled.yaml + release_date: "2021-10-14" 2.6.0: changes: bugfixes: - - meraki_mr_ssid - Fix issue with SSID removal idempotency when ID doesn't exist + - meraki_mr_ssid - Fix issue with SSID removal idempotency when ID doesn't exist major_changes: - - meraki_mr_radio - New module + - meraki_mr_radio - New module minor_changes: - - meraki_mx_l7_firewall - Allow passing an empty ruleset to delete all rules - - meraki_utils - Add debugging output for failed socket connections + - meraki_mx_l7_firewall - Allow passing an empty ruleset to delete all rules + - meraki_utils - Add debugging output for failed socket connections fragments: - - delete-ssid-idempotency.yml - - docs-m-reference.yml - - meraki_mr_radio.yml - - mx_l7_firewall_empty_list.yaml - release_date: '2021-12-27' + - delete-ssid-idempotency.yml + - docs-m-reference.yml + - meraki_mr_radio.yml + - mx_l7_firewall_empty_list.yaml + release_date: "2021-12-27" 2.6.1: changes: bugfixes: - - meraki_mr_rf_profile - Fix issue with idempotency and creation of RF Profiles - by name only - - meraki_syslog - Improve reliability for multiple roles or capitalization. + - meraki_mr_rf_profile - Fix issue with idempotency and creation of RF Profiles + by name only + - meraki_syslog - Improve reliability for multiple roles or capitalization. minor_changes: - - meraki_ssid - Add support for enterprise_admin_access and splash_guest_sponsor_domains - with the latter required for creating a sponsor portal. + - meraki_ssid - Add support for enterprise_admin_access and splash_guest_sponsor_domains + with the latter required for creating a sponsor portal. fragments: - - 288-syslog_idempotency.yml - - 290-sponsor.yml - - docs-contributing.yml - - rf-profile-create-idempotency.yml - - sanity_fixes.yaml - release_date: '2022-03-28' + - 288-syslog_idempotency.yml + - 290-sponsor.yml + - docs-contributing.yml + - rf-profile-create-idempotency.yml + - sanity_fixes.yaml + release_date: "2022-03-28" 2.6.2: changes: bugfixes: - - meraki_alert - Updates now properly set default destination webhook - - meraki_syslog - Fix crash due to incorrect dictionary reference + - meraki_alert - Updates now properly set default destination webhook + - meraki_syslog - Fix crash due to incorrect dictionary reference minor_changes: - - Add execution-environment.yml in meta as the base to a Meraki ee - - meraki_network - Add Products to net_type list + - Add execution-environment.yml in meta as the base to a Meraki ee + - meraki_network - Add Products to net_type list fragments: - - 288-fix-dict.yml - - 310-alert-webhook.yml - - ee.yml - - net_type-list.yml - release_date: '2022-05-16' + - 288-fix-dict.yml + - 310-alert-webhook.yml + - ee.yml + - net_type-list.yml + release_date: "2022-05-16" 2.7.0: changes: bugfixes: - - meraki_mx_static_route - Add support for gateway_vlan_id otherwise requests - could error + - meraki_mx_static_route - Add support for gateway_vlan_id otherwise requests + could error minor_changes: - - meraki_mx_network_vlan_settings - New module to enable or disable VLANs on - a network - - meraki_mx_third_party_vpn_peers - New module for managing third party VPM - peers + - meraki_mx_network_vlan_settings - New module to enable or disable VLANs on + a network + - meraki_mx_third_party_vpn_peers - New module for managing third party VPM + peers fragments: - - meraki_mx_network_vlan_settings.yml - - mx_static_route.yaml - - s2s_peers.yaml - release_date: '2022-06-14' + - meraki_mx_network_vlan_settings.yml + - mx_static_route.yaml + - s2s_peers.yaml + release_date: "2022-06-14" 2.8.0: changes: minor_changes: - - meraki_action_batch - New module for CRUD operations on Meraki Action Batches - - meraki_switchport - Add support for flexible stacking + - meraki_action_batch - New module for CRUD operations on Meraki Action Batches + - meraki_switchport - Add support for flexible stacking fragments: - - 327-switchport-flex.yaml - - action_batch.yaml - release_date: '2022-06-24' + - 327-switchport-flex.yaml + - action_batch.yaml + release_date: "2022-06-24" 2.9.0: changes: bugfixes: - - meraki_switchport - Setting VLAN to 0 on trunk port clears the VLAN. + - meraki_switchport - Setting VLAN to 0 on trunk port clears the VLAN. fragments: - - 331-switchport_clear_vlan.yml - release_date: '2022-07-04' + - 331-switchport_clear_vlan.yml + release_date: "2022-07-04" 2.16.0: changes: minor_changes: - - administered_identities_me_info - new plugin. - - devices_appliance_performance_info - new plugin. - - devices_appliance_uplinks_settings_info - new plugin. - - devices_appliance_uplinks_settings - new plugin. - - devices_appliance_vmx_authentication_token - new plugin. - - devices_blink_leds - new plugin. - - devices_camera_analytics_live_info - new plugin. - - devices_camera_custom_analytics_info - new plugin. - - devices_camera_custom_analytics - new plugin. - - devices_camera_generate_snapshot - new plugin. - - devices_camera_quality_and_retention_info - new plugin. - - devices_camera_quality_and_retention - new plugin. - - devices_camera_sense_info - new plugin. - - devices_camera_sense - new plugin. - - devices_camera_video_link_info - new plugin. - - devices_camera_video_settings_info - new plugin. - - devices_camera_video_settings - new plugin. - - devices_camera_wireless_profiles_info - new plugin. - - devices_camera_wireless_profiles - new plugin. - - devices_cellular_gateway_lan_info - new plugin. - - devices_cellular_gateway_lan - new plugin. - - devices_cellular_gateway_port_forwarding_rules_info - new plugin. - - devices_cellular_gateway_port_forwarding_rules - new plugin. - - devices_cellular_sims_info - new plugin. - - devices_cellular_sims - new plugin. - - devices_info - new plugin. - - devices_live_tools_ping_device_info - new plugin. - - devices_live_tools_ping_device - new plugin. - - devices_live_tools_ping_info - new plugin. - - devices_live_tools_ping - new plugin. - - devices_lldp_cdp_info - new plugin. - - devices_management_interface_info - new plugin. - - devices_management_interface - new plugin. - - devices_sensor_relationships_info - new plugin. - - devices_sensor_relationships - new plugin. - - devices_switch_ports_cycle - new plugin. - - devices_switch_ports_info - new plugin. - - devices_switch_ports_statuses_info - new plugin. - - devices_switch_ports - new plugin. - - devices_switch_routing_interfaces_dhcp_info - new plugin. - - devices_switch_routing_interfaces_dhcp - new plugin. - - devices_switch_routing_interfaces_info - new plugin. - - devices_switch_routing_interfaces - new plugin. - - devices_switch_routing_static_routes_info - new plugin. - - devices_switch_routing_static_routes - new plugin. - - devices_switch_warm_spare_info - new plugin. - - devices_switch_warm_spare - new plugin. - - devices_wireless_bluetooth_settings_info - new plugin. - - devices_wireless_bluetooth_settings - new plugin. - - devices_wireless_connection_stats_info - new plugin. - - devices_wireless_latency_stats_info - new plugin. - - devices_wireless_radio_settings_info - new plugin. - - devices_wireless_radio_settings - new plugin. - - devices_wireless_status_info - new plugin. - - devices - new plugin. - - networks_alerts_history_info - new plugin. - - networks_alerts_settings_info - new plugin. - - networks_alerts_settings - new plugin. - - networks_appliance_connectivity_monitoring_destinations_info - new plugin. - - networks_appliance_connectivity_monitoring_destinations - new plugin. - - networks_appliance_content_filtering_categories_info - new plugin. - - networks_appliance_content_filtering_info - new plugin. - - networks_appliance_content_filtering - new plugin. - - networks_appliance_firewall_cellular_firewall_rules_info - new plugin. - - networks_appliance_firewall_cellular_firewall_rules - new plugin. - - networks_appliance_firewall_firewalled_services_info - new plugin. - - networks_appliance_firewall_firewalled_services - new plugin. - - networks_appliance_firewall_inbound_firewall_rules_info - new plugin. - - networks_appliance_firewall_inbound_firewall_rules - new plugin. - - networks_appliance_firewall_l3_firewall_rules_info - new plugin. - - networks_appliance_firewall_l3_firewall_rules - new plugin. - - networks_appliance_firewall_l7_firewall_rules_application_categories_info - new plugin. - - networks_appliance_firewall_l7_firewall_rules_info - new plugin. - - networks_appliance_firewall_l7_firewall_rules - new plugin. - - networks_appliance_firewall_one_to_many_nat_rules_info - new plugin. - - networks_appliance_firewall_one_to_many_nat_rules - new plugin. - - networks_appliance_firewall_one_to_one_nat_rules_info - new plugin. - - networks_appliance_firewall_one_to_one_nat_rules - new plugin. - - networks_appliance_firewall_port_forwarding_rules_info - new plugin. - - networks_appliance_firewall_port_forwarding_rules - new plugin. - - networks_appliance_firewall_settings_info - new plugin. - - networks_appliance_firewall_settings - new plugin. - - networks_appliance_ports_info - new plugin. - - networks_appliance_ports - new plugin. - - networks_appliance_prefixes_delegated_statics_info - new plugin. - - networks_appliance_prefixes_delegated_statics - new plugin. - - networks_appliance_security_intrusion_info - new plugin. - - networks_appliance_security_intrusion - new plugin. - - networks_appliance_security_malware_info - new plugin. - - networks_appliance_security_malware - new plugin. - - networks_appliance_settings_info - new plugin. - - networks_appliance_settings - new plugin. - - networks_appliance_single_lan_info - new plugin. - - networks_appliance_single_lan - new plugin. - - networks_appliance_ssids_info - new plugin. - - networks_appliance_ssids - new plugin. - - networks_appliance_traffic_shaping_custom_performance_classes - new plugin. - - networks_appliance_traffic_shaping_info - new plugin. - - networks_appliance_traffic_shaping_rules_info - new plugin. - - networks_appliance_traffic_shaping_rules - new plugin. - - networks_appliance_traffic_shaping_uplink_bandwidth_info - new plugin. - - networks_appliance_traffic_shaping_uplink_bandwidth - new plugin. - - networks_appliance_traffic_shaping_uplink_selection_info - new plugin. - - networks_appliance_traffic_shaping_uplink_selection - new plugin. - - networks_appliance_traffic_shaping - new plugin. - - networks_appliance_vlans_info - new plugin. - - networks_appliance_vlans_settings_info - new plugin. - - networks_appliance_vlans_settings - new plugin. - - networks_appliance_vlans - new plugin. - - networks_appliance_vpn_bgp_info - new plugin. - - networks_appliance_vpn_bgp - new plugin. - - networks_appliance_vpn_site_to_site_vpn_info - new plugin. - - networks_appliance_vpn_site_to_site_vpn - new plugin. - - networks_appliance_warm_spare_info - new plugin. - - networks_appliance_warm_spare_swap - new plugin. - - networks_appliance_warm_spare - new plugin. - - networks_bind - new plugin. - - networks_bluetooth_clients_info - new plugin. - - networks_camera_quality_retention_profiles_info - new plugin. - - networks_camera_quality_retention_profiles - new plugin. - - networks_camera_wireless_profiles_info - new plugin. - - networks_camera_wireless_profiles - new plugin. - - networks_cellular_gateway_connectivity_monitoring_destinations_info - new plugin. - - networks_cellular_gateway_connectivity_monitoring_destinations - new plugin. - - networks_cellular_gateway_dhcp_info - new plugin. - - networks_cellular_gateway_dhcp - new plugin. - - networks_cellular_gateway_subnet_pool_info - new plugin. - - networks_cellular_gateway_subnet_pool - new plugin. - - networks_cellular_gateway_uplink_info - new plugin. - - networks_cellular_gateway_uplink - new plugin. - - networks_clients_info - new plugin. - - networks_clients_overview_info - new plugin. - - networks_clients_policy_info - new plugin. - - networks_clients_policy - new plugin. - - networks_clients_provision - new plugin. - - networks_clients_splash_authorization_status_info - new plugin. - - networks_clients_splash_authorization_status - new plugin. - - networks_devices_claim_vmx - new plugin. - - networks_devices_claim - new plugin. - - networks_devices_remove - new plugin. - - networks_events_event_types_info - new plugin. - - networks_events_info - new plugin. - - networks_firmware_upgrades_info - new plugin. - - networks_firmware_upgrades_rollbacks - new plugin. - - networks_firmware_upgrades_staged_events_defer - new plugin. - - networks_firmware_upgrades_staged_events_info - new plugin. - - networks_firmware_upgrades_staged_events_rollbacks - new plugin. - - networks_firmware_upgrades_staged_events - new plugin. - - networks_firmware_upgrades_staged_groups_info - new plugin. - - networks_firmware_upgrades_staged_groups - new plugin. - - networks_firmware_upgrades_staged_stages_info - new plugin. - - networks_firmware_upgrades_staged_stages - new plugin. - - networks_firmware_upgrades - new plugin. - - networks_floor_plans_info - new plugin. - - networks_floor_plans - new plugin. - - networks_group_policies_info - new plugin. - - networks_group_policies - new plugin. - - networks_health_alerts_info - new plugin. - - networks_info - new plugin. - - networks_insight_applications_health_by_time_info - new plugin. - - networks_meraki_auth_users_info - new plugin. - - networks_meraki_auth_users - new plugin. - - networks_mqtt_brokers - new plugin. - - networks_netflow_info - new plugin. - - networks_netflow - new plugin. - - networks_pii_pii_keys_info - new plugin. - - networks_pii_requests_delete - new plugin. - - networks_pii_requests_info - new plugin. - - networks_pii_sm_devices_for_key_info - new plugin. - - networks_pii_sm_owners_for_key_info - new plugin. - - networks_policies_by_client_info - new plugin. - - networks_sensor_alerts_current_overview_by_metric_info - new plugin. - - networks_sensor_alerts_overview_by_metric_info - new plugin. - - networks_sensor_alerts_profiles_info - new plugin. - - networks_sensor_alerts_profiles - new plugin. - - networks_sensor_mqtt_brokers_info - new plugin. - - networks_sensor_mqtt_brokers - new plugin. - - networks_sensor_relationships_info - new plugin. - - networks_settings_info - new plugin. - - networks_settings - new plugin. - - networks_sm_bypass_activation_lock_attempts_info - new plugin. - - networks_sm_bypass_activation_lock_attempts - new plugin. - - networks_sm_devices_cellular_usage_history_info - new plugin. - - networks_sm_devices_certs_info - new plugin. - - networks_sm_devices_checkin - new plugin. - - networks_sm_devices_connectivity_info - new plugin. - - networks_sm_devices_desktop_logs_info - new plugin. - - networks_sm_devices_device_command_logs_info - new plugin. - - networks_sm_devices_device_profiles_info - new plugin. - - networks_sm_devices_fields - new plugin. - - networks_sm_devices_info - new plugin. - - networks_sm_devices_lock - new plugin. - - networks_sm_devices_modify_tags - new plugin. - - networks_sm_devices_move - new plugin. - - networks_sm_devices_network_adapters_info - new plugin. - - networks_sm_devices_performance_history_info - new plugin. - - networks_sm_devices_refresh_details - new plugin. - - networks_sm_devices_security_centers_info - new plugin. - - networks_sm_devices_unenroll - new plugin. - - networks_sm_devices_wipe - new plugin. - - networks_sm_devices_wlan_lists_info - new plugin. - - networks_sm_profiles_info - new plugin. - - networks_sm_target_groups_info - new plugin. - - networks_sm_target_groups - new plugin. - - networks_sm_trusted_access_configs_info - new plugin. - - networks_sm_user_access_devices_delete - new plugin. - - networks_sm_user_access_devices_info - new plugin. - - networks_sm_users_device_profiles_info - new plugin. - - networks_sm_users_info - new plugin. - - networks_sm_users_softwares_info - new plugin. - - networks_snmp_info - new plugin. - - networks_snmp - new plugin. - - networks_split - new plugin. - - networks_switch_access_control_lists_info - new plugin. - - networks_switch_access_control_lists - new plugin. - - networks_switch_access_policies_info - new plugin. - - networks_switch_access_policies - new plugin. - - networks_switch_alternate_management_interface_info - new plugin. - - networks_switch_alternate_management_interface - new plugin. - - networks_switch_dhcp_server_policy_arp_inspection_trusted_servers_info - new plugin. - - networks_switch_dhcp_server_policy_arp_inspection_trusted_servers - new plugin. - - networks_switch_dhcp_server_policy_arp_inspection_warnings_by_device_info - new plugin. - - networks_switch_dhcp_server_policy_info - new plugin. - - networks_switch_dhcp_server_policy - new plugin. - - networks_switch_dhcp_v4_servers_seen_info - new plugin. - - networks_switch_dscp_to_cos_mappings_info - new plugin. - - networks_switch_dscp_to_cos_mappings - new plugin. - - networks_switch_link_aggregations_info - new plugin. - - networks_switch_link_aggregations - new plugin. - - networks_switch_mtu_info - new plugin. - - networks_switch_mtu - new plugin. - - networks_switch_port_schedules_info - new plugin. - - networks_switch_port_schedules - new plugin. - - networks_switch_qos_rules_order_info - new plugin. - - networks_switch_qos_rules_order - new plugin. - - networks_switch_routing_multicast_info - new plugin. - - networks_switch_routing_multicast_rendezvous_points_info - new plugin. - - networks_switch_routing_multicast_rendezvous_points - new plugin. - - networks_switch_routing_multicast - new plugin. - - networks_switch_routing_ospf_info - new plugin. - - networks_switch_routing_ospf - new plugin. - - networks_switch_settings_info - new plugin. - - networks_switch_settings - new plugin. - - networks_switch_stacks_add - new plugin. - - networks_switch_stacks_info - new plugin. - - networks_switch_stacks_remove - new plugin. - - networks_switch_stacks_routing_interfaces_dhcp_info - new plugin. - - networks_switch_stacks_routing_interfaces_dhcp - new plugin. - - networks_switch_stacks_routing_interfaces_info - new plugin. - - networks_switch_stacks_routing_interfaces - new plugin. - - networks_switch_stacks_routing_static_routes_info - new plugin. - - networks_switch_stacks_routing_static_routes - new plugin. - - networks_switch_stacks - new plugin. - - networks_switch_storm_control_info - new plugin. - - networks_switch_storm_control - new plugin. - - networks_switch_stp_info - new plugin. - - networks_switch_stp - new plugin. - - networks_syslog_servers_info - new plugin. - - networks_syslog_servers - new plugin. - - networks_topology_link_layer_info - new plugin. - - networks_traffic_analysis_info - new plugin. - - networks_traffic_analysis - new plugin. - - networks_traffic_shaping_application_categories_info - new plugin. - - networks_traffic_shaping_dscp_tagging_options_info - new plugin. - - networks_unbind - new plugin. - - networks_webhooks_http_servers_info - new plugin. - - networks_webhooks_http_servers - new plugin. - - networks_webhooks_payload_templates_info - new plugin. - - networks_webhooks_payload_templates - new plugin. - - networks_webhooks_webhook_tests_info - new plugin. - - networks_wireless_alternate_management_interface_info - new plugin. - - networks_wireless_alternate_management_interface - new plugin. - - networks_wireless_billing_info - new plugin. - - networks_wireless_billing - new plugin. - - networks_wireless_bluetooth_settings_info - new plugin. - - networks_wireless_bluetooth_settings - new plugin. - - networks_wireless_channel_utilization_history_info - new plugin. - - networks_wireless_client_count_history_info - new plugin. - - networks_wireless_clients_connection_stats_info - new plugin. - - networks_wireless_clients_latency_stats_info - new plugin. - - networks_wireless_connection_stats_info - new plugin. - - networks_wireless_data_rate_history_info - new plugin. - - networks_wireless_devices_connection_stats_info - new plugin. - - networks_wireless_failed_connections_info - new plugin. - - networks_wireless_latency_history_info - new plugin. - - networks_wireless_latency_stats_info - new plugin. - - networks_wireless_mesh_statuses_info - new plugin. - - networks_wireless_rf_profiles_info - new plugin. - - networks_wireless_rf_profiles - new plugin. - - networks_wireless_settings_info - new plugin. - - networks_wireless_settings - new plugin. - - networks_wireless_signal_quality_history_info - new plugin. - - networks_wireless_ssids_bonjour_forwarding_info - new plugin. - - networks_wireless_ssids_bonjour_forwarding - new plugin. - - networks_wireless_ssids_device_type_group_policies_info - new plugin. - - networks_wireless_ssids_device_type_group_policies - new plugin. - - networks_wireless_ssids_eap_override_info - new plugin. - - networks_wireless_ssids_eap_override - new plugin. - - networks_wireless_ssids_firewall_l3_firewall_rules_info - new plugin. - - networks_wireless_ssids_firewall_l3_firewall_rules - new plugin. - - networks_wireless_ssids_firewall_l7_firewall_rules_info - new plugin. - - networks_wireless_ssids_firewall_l7_firewall_rules - new plugin. - - networks_wireless_ssids_hotspot20_info - new plugin. - - networks_wireless_ssids_hotspot20 - new plugin. - - networks_wireless_ssids_identity_psks_info - new plugin. - - networks_wireless_ssids_identity_psks - new plugin. - - networks_wireless_ssids_info - new plugin. - - networks_wireless_ssids_schedules_info - new plugin. - - networks_wireless_ssids_schedules - new plugin. - - networks_wireless_ssids_splash_settings_info - new plugin. - - networks_wireless_ssids_splash_settings - new plugin. - - networks_wireless_ssids_traffic_shaping_rules_info - new plugin. - - networks_wireless_ssids_traffic_shaping_rules - new plugin. - - networks_wireless_ssids_vpn_info - new plugin. - - networks_wireless_ssids_vpn - new plugin. - - networks_wireless_ssids - new plugin. - - networks_wireless_usage_history_info - new plugin. - - networks - new plugin. - - networks_appliance_static_routes_info - new plugin. - - networks_appliance_static_routes - new plugin. - - organizations_action_batches_info - new plugin. - - organizations_action_batches - new plugin. - - organizations_adaptive_policy_acls_info - new plugin. - - organizations_adaptive_policy_acls - new plugin. - - organizations_adaptive_policy_groups_info - new plugin. - - organizations_adaptive_policy_groups - new plugin. - - organizations_adaptive_policy_overview_info - new plugin. - - organizations_adaptive_policy_policies_info - new plugin. - - organizations_adaptive_policy_policies - new plugin. - - organizations_adaptive_policy_settings_info - new plugin. - - organizations_adaptive_policy_settings - new plugin. - - organizations_admins_info - new plugin. - - organizations_admins - new plugin. - - organizations_alerts_profiles - new plugin. - - organizations_api_requests_info - new plugin. - - organizations_api_requests_overview_info - new plugin. - - organizations_api_requests_overview_response_codes_by_interval_info - new plugin. - - organizations_appliance_security_intrusion_info - new plugin. - - organizations_appliance_security_intrusion - new plugin. - - organizations_appliance_vpn_third_party_vpnpeers_info - new plugin. - - organizations_appliance_vpn_third_party_vpnpeers - new plugin. - - organizations_appliance_vpn_vpn_firewall_rules_info - new plugin. - - organizations_appliance_vpn_vpn_firewall_rules - new plugin. - - organizations_branding_policies_info - new plugin. - - organizations_branding_policies_priorities_info - new plugin. - - organizations_branding_policies_priorities - new plugin. - - organizations_branding_policies - new plugin. - - organizations_camera_custom_analytics_artifacts_info - new plugin. - - organizations_camera_custom_analytics_artifacts - new plugin. - - organizations_cellular_gateway_uplink_statuses_info - new plugin. - - organizations_claim - new plugin. - - organizations_clients_bandwidth_usage_history_info - new plugin. - - organizations_clients_overview_info - new plugin. - - organizations_clients_search_info - new plugin. - - organizations_clone - new plugin. - - organizations_config_templates_info - new plugin. - - organizations_config_templates_switch_profiles_info - new plugin. - - organizations_config_templates_switch_profiles_ports_info - new plugin. - - organizations_config_templates_switch_profiles_ports - new plugin. - - organizations_config_templates - new plugin. - - organizations_devices_availabilities_info - new plugin. - - organizations_devices_info - new plugin. - - organizations_devices_power_modules_statuses_by_device_info - new plugin. - - organizations_devices_provisioning_statuses_info - new plugin. - - organizations_devices_statuses_info - new plugin. - - organizations_devices_statuses_overview_info - new plugin. - - organizations_devices_uplinks_addresses_by_device_info - new plugin. - - organizations_devices_uplinks_loss_and_latency_info - new plugin. - - organizations_early_access_features_info - new plugin. - - organizations_early_access_features_opt_ins_info - new plugin. - - organizations_early_access_features_opt_ins - new plugin. - - organizations_firmware_upgrades_by_device_info - new plugin. - - organizations_firmware_upgrades_info - new plugin. - - organizations_info - new plugin. - - organizations_insight_applications_info - new plugin. - - organizations_insight_monitored_media_servers_info - new plugin. - - organizations_insight_monitored_media_servers - new plugin. - - organizations_inventory_claim - new plugin. - - organizations_inventory_devices_info - new plugin. - - organizations_inventory_onboarding_cloud_monitoring_export_events - new plugin. - - organizations_inventory_onboarding_cloud_monitoring_imports_info - new plugin. - - organizations_inventory_onboarding_cloud_monitoring_imports - new plugin. - - organizations_inventory_onboarding_cloud_monitoring_networks_info - new plugin. - - organizations_inventory_onboarding_cloud_monitoring_prepare - new plugin. - - organizations_inventory_release - new plugin. - - organizations_licenses_assign_seats - new plugin. - - organizations_licenses_info - new plugin. - - organizations_licenses_move_seats - new plugin. - - organizations_licenses_move - new plugin. - - organizations_licenses_overview_info - new plugin. - - organizations_licenses_renew_seats - new plugin. - - organizations_licenses - new plugin. - - organizations_licensing_coterm_licenses_info - new plugin. - - organizations_licensing_coterm_licenses_move - new plugin. - - organizations_login_security_info - new plugin. - - organizations_login_security - new plugin. - - organizations_networks_combine - new plugin. - - organizations_openapi_spec_info - new plugin. - - organizations_policy_objects_groups_info - new plugin. - - organizations_policy_objects_groups - new plugin. - - organizations_policy_objects_info - new plugin. - - organizations_policy_objects - new plugin. - - organizations_saml_idps_info - new plugin. - - organizations_saml_idps - new plugin. - - organizations_saml_info - new plugin. - - organizations_saml_roles_info - new plugin. - - organizations_saml_roles - new plugin. - - organizations_saml - new plugin. - - organizations_sensor_readings_history_info - new plugin. - - organizations_sensor_readings_latest_info - new plugin. - - organizations_sm_apns_cert_info - new plugin. - - organizations_sm_vpp_accounts_info - new plugin. - - organizations_snmp_info - new plugin. - - organizations_snmp - new plugin. - - organizations_summary_top_appliances_by_utilization_info - new plugin. - - organizations_summary_top_clients_by_usage_info - new plugin. - - organizations_summary_top_clients_manufacturers_by_usage_info - new plugin. - - organizations_summary_top_devices_by_usage_info - new plugin. - - organizations_summary_top_devices_models_by_usage_info - new plugin. - - organizations_summary_top_ssids_by_usage_info - new plugin. - - organizations_summary_top_switches_by_energy_usage_info - new plugin. - - organizations_switch_devices_clone - new plugin. - - organizations_switch_ports_by_switch_info - new plugin. - - organizations_uplinks_statuses_info - new plugin. - - organizations_users - new plugin. - - organizations_webhooks_logs_info - new plugin. - - organizations_wireless_devices_ethernet_statuses_info - new plugin. - - organizations - new plugin. - release_date: '2023-09-05' + - administered_identities_me_info - new plugin. + - devices_appliance_performance_info - new plugin. + - devices_appliance_uplinks_settings_info - new plugin. + - devices_appliance_uplinks_settings - new plugin. + - devices_appliance_vmx_authentication_token - new plugin. + - devices_blink_leds - new plugin. + - devices_camera_analytics_live_info - new plugin. + - devices_camera_custom_analytics_info - new plugin. + - devices_camera_custom_analytics - new plugin. + - devices_camera_generate_snapshot - new plugin. + - devices_camera_quality_and_retention_info - new plugin. + - devices_camera_quality_and_retention - new plugin. + - devices_camera_sense_info - new plugin. + - devices_camera_sense - new plugin. + - devices_camera_video_link_info - new plugin. + - devices_camera_video_settings_info - new plugin. + - devices_camera_video_settings - new plugin. + - devices_camera_wireless_profiles_info - new plugin. + - devices_camera_wireless_profiles - new plugin. + - devices_cellular_gateway_lan_info - new plugin. + - devices_cellular_gateway_lan - new plugin. + - devices_cellular_gateway_port_forwarding_rules_info - new plugin. + - devices_cellular_gateway_port_forwarding_rules - new plugin. + - devices_cellular_sims_info - new plugin. + - devices_cellular_sims - new plugin. + - devices_info - new plugin. + - devices_live_tools_ping_device_info - new plugin. + - devices_live_tools_ping_device - new plugin. + - devices_live_tools_ping_info - new plugin. + - devices_live_tools_ping - new plugin. + - devices_lldp_cdp_info - new plugin. + - devices_management_interface_info - new plugin. + - devices_management_interface - new plugin. + - devices_sensor_relationships_info - new plugin. + - devices_sensor_relationships - new plugin. + - devices_switch_ports_cycle - new plugin. + - devices_switch_ports_info - new plugin. + - devices_switch_ports_statuses_info - new plugin. + - devices_switch_ports - new plugin. + - devices_switch_routing_interfaces_dhcp_info - new plugin. + - devices_switch_routing_interfaces_dhcp - new plugin. + - devices_switch_routing_interfaces_info - new plugin. + - devices_switch_routing_interfaces - new plugin. + - devices_switch_routing_static_routes_info - new plugin. + - devices_switch_routing_static_routes - new plugin. + - devices_switch_warm_spare_info - new plugin. + - devices_switch_warm_spare - new plugin. + - devices_wireless_bluetooth_settings_info - new plugin. + - devices_wireless_bluetooth_settings - new plugin. + - devices_wireless_connection_stats_info - new plugin. + - devices_wireless_latency_stats_info - new plugin. + - devices_wireless_radio_settings_info - new plugin. + - devices_wireless_radio_settings - new plugin. + - devices_wireless_status_info - new plugin. + - devices - new plugin. + - networks_alerts_history_info - new plugin. + - networks_alerts_settings_info - new plugin. + - networks_alerts_settings - new plugin. + - networks_appliance_connectivity_monitoring_destinations_info - new plugin. + - networks_appliance_connectivity_monitoring_destinations - new plugin. + - networks_appliance_content_filtering_categories_info - new plugin. + - networks_appliance_content_filtering_info - new plugin. + - networks_appliance_content_filtering - new plugin. + - networks_appliance_firewall_cellular_firewall_rules_info - new plugin. + - networks_appliance_firewall_cellular_firewall_rules - new plugin. + - networks_appliance_firewall_firewalled_services_info - new plugin. + - networks_appliance_firewall_firewalled_services - new plugin. + - networks_appliance_firewall_inbound_firewall_rules_info - new plugin. + - networks_appliance_firewall_inbound_firewall_rules - new plugin. + - networks_appliance_firewall_l3_firewall_rules_info - new plugin. + - networks_appliance_firewall_l3_firewall_rules - new plugin. + - networks_appliance_firewall_l7_firewall_rules_application_categories_info - new plugin. + - networks_appliance_firewall_l7_firewall_rules_info - new plugin. + - networks_appliance_firewall_l7_firewall_rules - new plugin. + - networks_appliance_firewall_one_to_many_nat_rules_info - new plugin. + - networks_appliance_firewall_one_to_many_nat_rules - new plugin. + - networks_appliance_firewall_one_to_one_nat_rules_info - new plugin. + - networks_appliance_firewall_one_to_one_nat_rules - new plugin. + - networks_appliance_firewall_port_forwarding_rules_info - new plugin. + - networks_appliance_firewall_port_forwarding_rules - new plugin. + - networks_appliance_firewall_settings_info - new plugin. + - networks_appliance_firewall_settings - new plugin. + - networks_appliance_ports_info - new plugin. + - networks_appliance_ports - new plugin. + - networks_appliance_prefixes_delegated_statics_info - new plugin. + - networks_appliance_prefixes_delegated_statics - new plugin. + - networks_appliance_security_intrusion_info - new plugin. + - networks_appliance_security_intrusion - new plugin. + - networks_appliance_security_malware_info - new plugin. + - networks_appliance_security_malware - new plugin. + - networks_appliance_settings_info - new plugin. + - networks_appliance_settings - new plugin. + - networks_appliance_single_lan_info - new plugin. + - networks_appliance_single_lan - new plugin. + - networks_appliance_ssids_info - new plugin. + - networks_appliance_ssids - new plugin. + - networks_appliance_traffic_shaping_custom_performance_classes - new plugin. + - networks_appliance_traffic_shaping_info - new plugin. + - networks_appliance_traffic_shaping_rules_info - new plugin. + - networks_appliance_traffic_shaping_rules - new plugin. + - networks_appliance_traffic_shaping_uplink_bandwidth_info - new plugin. + - networks_appliance_traffic_shaping_uplink_bandwidth - new plugin. + - networks_appliance_traffic_shaping_uplink_selection_info - new plugin. + - networks_appliance_traffic_shaping_uplink_selection - new plugin. + - networks_appliance_traffic_shaping - new plugin. + - networks_appliance_vlans_info - new plugin. + - networks_appliance_vlans_settings_info - new plugin. + - networks_appliance_vlans_settings - new plugin. + - networks_appliance_vlans - new plugin. + - networks_appliance_vpn_bgp_info - new plugin. + - networks_appliance_vpn_bgp - new plugin. + - networks_appliance_vpn_site_to_site_vpn_info - new plugin. + - networks_appliance_vpn_site_to_site_vpn - new plugin. + - networks_appliance_warm_spare_info - new plugin. + - networks_appliance_warm_spare_swap - new plugin. + - networks_appliance_warm_spare - new plugin. + - networks_bind - new plugin. + - networks_bluetooth_clients_info - new plugin. + - networks_camera_quality_retention_profiles_info - new plugin. + - networks_camera_quality_retention_profiles - new plugin. + - networks_camera_wireless_profiles_info - new plugin. + - networks_camera_wireless_profiles - new plugin. + - networks_cellular_gateway_connectivity_monitoring_destinations_info - new plugin. + - networks_cellular_gateway_connectivity_monitoring_destinations - new plugin. + - networks_cellular_gateway_dhcp_info - new plugin. + - networks_cellular_gateway_dhcp - new plugin. + - networks_cellular_gateway_subnet_pool_info - new plugin. + - networks_cellular_gateway_subnet_pool - new plugin. + - networks_cellular_gateway_uplink_info - new plugin. + - networks_cellular_gateway_uplink - new plugin. + - networks_clients_info - new plugin. + - networks_clients_overview_info - new plugin. + - networks_clients_policy_info - new plugin. + - networks_clients_policy - new plugin. + - networks_clients_provision - new plugin. + - networks_clients_splash_authorization_status_info - new plugin. + - networks_clients_splash_authorization_status - new plugin. + - networks_devices_claim_vmx - new plugin. + - networks_devices_claim - new plugin. + - networks_devices_remove - new plugin. + - networks_events_event_types_info - new plugin. + - networks_events_info - new plugin. + - networks_firmware_upgrades_info - new plugin. + - networks_firmware_upgrades_rollbacks - new plugin. + - networks_firmware_upgrades_staged_events_defer - new plugin. + - networks_firmware_upgrades_staged_events_info - new plugin. + - networks_firmware_upgrades_staged_events_rollbacks - new plugin. + - networks_firmware_upgrades_staged_events - new plugin. + - networks_firmware_upgrades_staged_groups_info - new plugin. + - networks_firmware_upgrades_staged_groups - new plugin. + - networks_firmware_upgrades_staged_stages_info - new plugin. + - networks_firmware_upgrades_staged_stages - new plugin. + - networks_firmware_upgrades - new plugin. + - networks_floor_plans_info - new plugin. + - networks_floor_plans - new plugin. + - networks_group_policies_info - new plugin. + - networks_group_policies - new plugin. + - networks_health_alerts_info - new plugin. + - networks_info - new plugin. + - networks_insight_applications_health_by_time_info - new plugin. + - networks_meraki_auth_users_info - new plugin. + - networks_meraki_auth_users - new plugin. + - networks_mqtt_brokers - new plugin. + - networks_netflow_info - new plugin. + - networks_netflow - new plugin. + - networks_pii_pii_keys_info - new plugin. + - networks_pii_requests_delete - new plugin. + - networks_pii_requests_info - new plugin. + - networks_pii_sm_devices_for_key_info - new plugin. + - networks_pii_sm_owners_for_key_info - new plugin. + - networks_policies_by_client_info - new plugin. + - networks_sensor_alerts_current_overview_by_metric_info - new plugin. + - networks_sensor_alerts_overview_by_metric_info - new plugin. + - networks_sensor_alerts_profiles_info - new plugin. + - networks_sensor_alerts_profiles - new plugin. + - networks_sensor_mqtt_brokers_info - new plugin. + - networks_sensor_mqtt_brokers - new plugin. + - networks_sensor_relationships_info - new plugin. + - networks_settings_info - new plugin. + - networks_settings - new plugin. + - networks_sm_bypass_activation_lock_attempts_info - new plugin. + - networks_sm_bypass_activation_lock_attempts - new plugin. + - networks_sm_devices_cellular_usage_history_info - new plugin. + - networks_sm_devices_certs_info - new plugin. + - networks_sm_devices_checkin - new plugin. + - networks_sm_devices_connectivity_info - new plugin. + - networks_sm_devices_desktop_logs_info - new plugin. + - networks_sm_devices_device_command_logs_info - new plugin. + - networks_sm_devices_device_profiles_info - new plugin. + - networks_sm_devices_fields - new plugin. + - networks_sm_devices_info - new plugin. + - networks_sm_devices_lock - new plugin. + - networks_sm_devices_modify_tags - new plugin. + - networks_sm_devices_move - new plugin. + - networks_sm_devices_network_adapters_info - new plugin. + - networks_sm_devices_performance_history_info - new plugin. + - networks_sm_devices_refresh_details - new plugin. + - networks_sm_devices_security_centers_info - new plugin. + - networks_sm_devices_unenroll - new plugin. + - networks_sm_devices_wipe - new plugin. + - networks_sm_devices_wlan_lists_info - new plugin. + - networks_sm_profiles_info - new plugin. + - networks_sm_target_groups_info - new plugin. + - networks_sm_target_groups - new plugin. + - networks_sm_trusted_access_configs_info - new plugin. + - networks_sm_user_access_devices_delete - new plugin. + - networks_sm_user_access_devices_info - new plugin. + - networks_sm_users_device_profiles_info - new plugin. + - networks_sm_users_info - new plugin. + - networks_sm_users_softwares_info - new plugin. + - networks_snmp_info - new plugin. + - networks_snmp - new plugin. + - networks_split - new plugin. + - networks_switch_access_control_lists_info - new plugin. + - networks_switch_access_control_lists - new plugin. + - networks_switch_access_policies_info - new plugin. + - networks_switch_access_policies - new plugin. + - networks_switch_alternate_management_interface_info - new plugin. + - networks_switch_alternate_management_interface - new plugin. + - networks_switch_dhcp_server_policy_arp_inspection_trusted_servers_info - new plugin. + - networks_switch_dhcp_server_policy_arp_inspection_trusted_servers - new plugin. + - networks_switch_dhcp_server_policy_arp_inspection_warnings_by_device_info - new plugin. + - networks_switch_dhcp_server_policy_info - new plugin. + - networks_switch_dhcp_server_policy - new plugin. + - networks_switch_dhcp_v4_servers_seen_info - new plugin. + - networks_switch_dscp_to_cos_mappings_info - new plugin. + - networks_switch_dscp_to_cos_mappings - new plugin. + - networks_switch_link_aggregations_info - new plugin. + - networks_switch_link_aggregations - new plugin. + - networks_switch_mtu_info - new plugin. + - networks_switch_mtu - new plugin. + - networks_switch_port_schedules_info - new plugin. + - networks_switch_port_schedules - new plugin. + - networks_switch_qos_rules_order_info - new plugin. + - networks_switch_qos_rules_order - new plugin. + - networks_switch_routing_multicast_info - new plugin. + - networks_switch_routing_multicast_rendezvous_points_info - new plugin. + - networks_switch_routing_multicast_rendezvous_points - new plugin. + - networks_switch_routing_multicast - new plugin. + - networks_switch_routing_ospf_info - new plugin. + - networks_switch_routing_ospf - new plugin. + - networks_switch_settings_info - new plugin. + - networks_switch_settings - new plugin. + - networks_switch_stacks_add - new plugin. + - networks_switch_stacks_info - new plugin. + - networks_switch_stacks_remove - new plugin. + - networks_switch_stacks_routing_interfaces_dhcp_info - new plugin. + - networks_switch_stacks_routing_interfaces_dhcp - new plugin. + - networks_switch_stacks_routing_interfaces_info - new plugin. + - networks_switch_stacks_routing_interfaces - new plugin. + - networks_switch_stacks_routing_static_routes_info - new plugin. + - networks_switch_stacks_routing_static_routes - new plugin. + - networks_switch_stacks - new plugin. + - networks_switch_storm_control_info - new plugin. + - networks_switch_storm_control - new plugin. + - networks_switch_stp_info - new plugin. + - networks_switch_stp - new plugin. + - networks_syslog_servers_info - new plugin. + - networks_syslog_servers - new plugin. + - networks_topology_link_layer_info - new plugin. + - networks_traffic_analysis_info - new plugin. + - networks_traffic_analysis - new plugin. + - networks_traffic_shaping_application_categories_info - new plugin. + - networks_traffic_shaping_dscp_tagging_options_info - new plugin. + - networks_unbind - new plugin. + - networks_webhooks_http_servers_info - new plugin. + - networks_webhooks_http_servers - new plugin. + - networks_webhooks_payload_templates_info - new plugin. + - networks_webhooks_payload_templates - new plugin. + - networks_webhooks_webhook_tests_info - new plugin. + - networks_wireless_alternate_management_interface_info - new plugin. + - networks_wireless_alternate_management_interface - new plugin. + - networks_wireless_billing_info - new plugin. + - networks_wireless_billing - new plugin. + - networks_wireless_bluetooth_settings_info - new plugin. + - networks_wireless_bluetooth_settings - new plugin. + - networks_wireless_channel_utilization_history_info - new plugin. + - networks_wireless_client_count_history_info - new plugin. + - networks_wireless_clients_connection_stats_info - new plugin. + - networks_wireless_clients_latency_stats_info - new plugin. + - networks_wireless_connection_stats_info - new plugin. + - networks_wireless_data_rate_history_info - new plugin. + - networks_wireless_devices_connection_stats_info - new plugin. + - networks_wireless_failed_connections_info - new plugin. + - networks_wireless_latency_history_info - new plugin. + - networks_wireless_latency_stats_info - new plugin. + - networks_wireless_mesh_statuses_info - new plugin. + - networks_wireless_rf_profiles_info - new plugin. + - networks_wireless_rf_profiles - new plugin. + - networks_wireless_settings_info - new plugin. + - networks_wireless_settings - new plugin. + - networks_wireless_signal_quality_history_info - new plugin. + - networks_wireless_ssids_bonjour_forwarding_info - new plugin. + - networks_wireless_ssids_bonjour_forwarding - new plugin. + - networks_wireless_ssids_device_type_group_policies_info - new plugin. + - networks_wireless_ssids_device_type_group_policies - new plugin. + - networks_wireless_ssids_eap_override_info - new plugin. + - networks_wireless_ssids_eap_override - new plugin. + - networks_wireless_ssids_firewall_l3_firewall_rules_info - new plugin. + - networks_wireless_ssids_firewall_l3_firewall_rules - new plugin. + - networks_wireless_ssids_firewall_l7_firewall_rules_info - new plugin. + - networks_wireless_ssids_firewall_l7_firewall_rules - new plugin. + - networks_wireless_ssids_hotspot20_info - new plugin. + - networks_wireless_ssids_hotspot20 - new plugin. + - networks_wireless_ssids_identity_psks_info - new plugin. + - networks_wireless_ssids_identity_psks - new plugin. + - networks_wireless_ssids_info - new plugin. + - networks_wireless_ssids_schedules_info - new plugin. + - networks_wireless_ssids_schedules - new plugin. + - networks_wireless_ssids_splash_settings_info - new plugin. + - networks_wireless_ssids_splash_settings - new plugin. + - networks_wireless_ssids_traffic_shaping_rules_info - new plugin. + - networks_wireless_ssids_traffic_shaping_rules - new plugin. + - networks_wireless_ssids_vpn_info - new plugin. + - networks_wireless_ssids_vpn - new plugin. + - networks_wireless_ssids - new plugin. + - networks_wireless_usage_history_info - new plugin. + - networks - new plugin. + - networks_appliance_static_routes_info - new plugin. + - networks_appliance_static_routes - new plugin. + - organizations_action_batches_info - new plugin. + - organizations_action_batches - new plugin. + - organizations_adaptive_policy_acls_info - new plugin. + - organizations_adaptive_policy_acls - new plugin. + - organizations_adaptive_policy_groups_info - new plugin. + - organizations_adaptive_policy_groups - new plugin. + - organizations_adaptive_policy_overview_info - new plugin. + - organizations_adaptive_policy_policies_info - new plugin. + - organizations_adaptive_policy_policies - new plugin. + - organizations_adaptive_policy_settings_info - new plugin. + - organizations_adaptive_policy_settings - new plugin. + - organizations_admins_info - new plugin. + - organizations_admins - new plugin. + - organizations_alerts_profiles - new plugin. + - organizations_api_requests_info - new plugin. + - organizations_api_requests_overview_info - new plugin. + - organizations_api_requests_overview_response_codes_by_interval_info - new plugin. + - organizations_appliance_security_intrusion_info - new plugin. + - organizations_appliance_security_intrusion - new plugin. + - organizations_appliance_vpn_third_party_vpnpeers_info - new plugin. + - organizations_appliance_vpn_third_party_vpnpeers - new plugin. + - organizations_appliance_vpn_vpn_firewall_rules_info - new plugin. + - organizations_appliance_vpn_vpn_firewall_rules - new plugin. + - organizations_branding_policies_info - new plugin. + - organizations_branding_policies_priorities_info - new plugin. + - organizations_branding_policies_priorities - new plugin. + - organizations_branding_policies - new plugin. + - organizations_camera_custom_analytics_artifacts_info - new plugin. + - organizations_camera_custom_analytics_artifacts - new plugin. + - organizations_cellular_gateway_uplink_statuses_info - new plugin. + - organizations_claim - new plugin. + - organizations_clients_bandwidth_usage_history_info - new plugin. + - organizations_clients_overview_info - new plugin. + - organizations_clients_search_info - new plugin. + - organizations_clone - new plugin. + - organizations_config_templates_info - new plugin. + - organizations_config_templates_switch_profiles_info - new plugin. + - organizations_config_templates_switch_profiles_ports_info - new plugin. + - organizations_config_templates_switch_profiles_ports - new plugin. + - organizations_config_templates - new plugin. + - organizations_devices_availabilities_info - new plugin. + - organizations_devices_info - new plugin. + - organizations_devices_power_modules_statuses_by_device_info - new plugin. + - organizations_devices_provisioning_statuses_info - new plugin. + - organizations_devices_statuses_info - new plugin. + - organizations_devices_statuses_overview_info - new plugin. + - organizations_devices_uplinks_addresses_by_device_info - new plugin. + - organizations_devices_uplinks_loss_and_latency_info - new plugin. + - organizations_early_access_features_info - new plugin. + - organizations_early_access_features_opt_ins_info - new plugin. + - organizations_early_access_features_opt_ins - new plugin. + - organizations_firmware_upgrades_by_device_info - new plugin. + - organizations_firmware_upgrades_info - new plugin. + - organizations_info - new plugin. + - organizations_insight_applications_info - new plugin. + - organizations_insight_monitored_media_servers_info - new plugin. + - organizations_insight_monitored_media_servers - new plugin. + - organizations_inventory_claim - new plugin. + - organizations_inventory_devices_info - new plugin. + - organizations_inventory_onboarding_cloud_monitoring_export_events - new plugin. + - organizations_inventory_onboarding_cloud_monitoring_imports_info - new plugin. + - organizations_inventory_onboarding_cloud_monitoring_imports - new plugin. + - organizations_inventory_onboarding_cloud_monitoring_networks_info - new plugin. + - organizations_inventory_onboarding_cloud_monitoring_prepare - new plugin. + - organizations_inventory_release - new plugin. + - organizations_licenses_assign_seats - new plugin. + - organizations_licenses_info - new plugin. + - organizations_licenses_move_seats - new plugin. + - organizations_licenses_move - new plugin. + - organizations_licenses_overview_info - new plugin. + - organizations_licenses_renew_seats - new plugin. + - organizations_licenses - new plugin. + - organizations_licensing_coterm_licenses_info - new plugin. + - organizations_licensing_coterm_licenses_move - new plugin. + - organizations_login_security_info - new plugin. + - organizations_login_security - new plugin. + - organizations_networks_combine - new plugin. + - organizations_openapi_spec_info - new plugin. + - organizations_policy_objects_groups_info - new plugin. + - organizations_policy_objects_groups - new plugin. + - organizations_policy_objects_info - new plugin. + - organizations_policy_objects - new plugin. + - organizations_saml_idps_info - new plugin. + - organizations_saml_idps - new plugin. + - organizations_saml_info - new plugin. + - organizations_saml_roles_info - new plugin. + - organizations_saml_roles - new plugin. + - organizations_saml - new plugin. + - organizations_sensor_readings_history_info - new plugin. + - organizations_sensor_readings_latest_info - new plugin. + - organizations_sm_apns_cert_info - new plugin. + - organizations_sm_vpp_accounts_info - new plugin. + - organizations_snmp_info - new plugin. + - organizations_snmp - new plugin. + - organizations_summary_top_appliances_by_utilization_info - new plugin. + - organizations_summary_top_clients_by_usage_info - new plugin. + - organizations_summary_top_clients_manufacturers_by_usage_info - new plugin. + - organizations_summary_top_devices_by_usage_info - new plugin. + - organizations_summary_top_devices_models_by_usage_info - new plugin. + - organizations_summary_top_ssids_by_usage_info - new plugin. + - organizations_summary_top_switches_by_energy_usage_info - new plugin. + - organizations_switch_devices_clone - new plugin. + - organizations_switch_ports_by_switch_info - new plugin. + - organizations_uplinks_statuses_info - new plugin. + - organizations_users - new plugin. + - organizations_webhooks_logs_info - new plugin. + - organizations_wireless_devices_ethernet_statuses_info - new plugin. + - organizations - new plugin. + release_date: "2023-09-05" 2.16.1: changes: bugfixes: - - Updating collection docs link. - release_date: '2023-09-21' + - Updating collection docs link. + release_date: "2023-09-21" 2.16.2: changes: bugfixes: - - Updating documentation, yml fixes - Documentation Broken. - release_date: '2023-09-21' + - Updating documentation, yml fixes - Documentation Broken. + release_date: "2023-09-21" 2.16.3: changes: bugfixes: - - Removing ignores. - release_date: '2023-09-26' + - Removing ignores. + release_date: "2023-09-26" 2.16.4: changes: bugfixes: - - cisco.meraki.networks_devices_claim - got an unexpected keyword argument 'network_id', bug with parameter naming. - release_date: '2023-09-28' + - cisco.meraki.networks_devices_claim - got an unexpected keyword argument 'network_id', bug with parameter naming. + release_date: "2023-09-28" 2.16.5: changes: bugfixes: - - cisco.meraki.organizations_login_security module will not update org api authentication - fixing for look at organizations_login_security. - release_date: '2023-10-10' + - cisco.meraki.organizations_login_security module will not update org api authentication - fixing for look at organizations_login_security. + release_date: "2023-10-10" 2.16.6: changes: bugfixes: - - runtime updated requires_ansible from 2.9.10 to '>=2.14.0'. - release_date: '2023-10-17' + - runtime updated requires_ansible from 2.9.10 to '>=2.14.0'. + release_date: "2023-10-17" 2.16.7: changes: bugfixes: - - Sanity fixes. - release_date: '2023-10-17' + - Sanity fixes. + release_date: "2023-10-17" 2.16.8: changes: bugfixes: - - Returning requires_ansible to 2.9.10 - release_date: '2023-10-17' + - Returning requires_ansible to 2.9.10 + release_date: "2023-10-17" 2.16.10: changes: bugfixes: - - Returning requires_ansible to >=2.14.0 - - Bad naming `networkId` parameter in `networks_devices_remove` and `networks_devices_claim_vmx` - release_date: '2023-10-26' + - Returning requires_ansible to >=2.14.0 + - Bad naming `networkId` parameter in `networks_devices_remove` and `networks_devices_claim_vmx` + release_date: "2023-10-26" 2.16.11: changes: bugfixes: - - Bad naming `networkId` parameter in `networks_appliance_traffic_shaping_custom_performance_classes`. - - Bad naming `networkId` parameter in `networks_appliance_warm_spare_swap`. - - Bad naming `networkId` parameter in `networks_bind`. - - Bad naming `networkId` parameter in `networks_clients_provision`. - - Bad naming `networkId` parameter in `networks_firmware_upgrades_rollbacks`. - - Bad naming `networkId` parameter in `networks_firmware_upgrades_staged_events_rollbacks`. - - Bad naming `networkId` parameter in `networks_mqtt_brokers`. - - Bad naming `networkId` parameter in `networks_pii_requests_delete`. - - Bad naming `networkId` parameter in `networks_sm_devices_checkin`. - - Bad naming `networkId` parameter in `networks_sm_devices_lock`. - - Bad naming `networkId` parameter in `networks_sm_devices_modify_tags`. - - Bad naming `networkId` parameter in `networks_sm_devices_move`. - - Bad naming `networkId` parameter in `networks_sm_devices_refresh_details`. - - Bad naming `networkId` parameter in `networks_sm_devices_unenroll`. - - Bad naming `networkId` parameter in `networks_sm_devices_wipe`. - - Bad naming `networkId` parameter in `networks_sm_user_access_devices_delete`. - - Bad naming `networkId` parameter in `networks_split`. - - Bad naming `networkId` parameter in `networks_switch_stacks_add`. - - Bad naming `networkId` parameter in `networks_switch_stacks_remove`. - - Bad naming `networkId` parameter in `networks_unbind`. - - Bad naming `networkId` parameter in `networks_sm_devices_fields`. - release_date: '2023-10-26' + - Bad naming `networkId` parameter in `networks_appliance_traffic_shaping_custom_performance_classes`. + - Bad naming `networkId` parameter in `networks_appliance_warm_spare_swap`. + - Bad naming `networkId` parameter in `networks_bind`. + - Bad naming `networkId` parameter in `networks_clients_provision`. + - Bad naming `networkId` parameter in `networks_firmware_upgrades_rollbacks`. + - Bad naming `networkId` parameter in `networks_firmware_upgrades_staged_events_rollbacks`. + - Bad naming `networkId` parameter in `networks_mqtt_brokers`. + - Bad naming `networkId` parameter in `networks_pii_requests_delete`. + - Bad naming `networkId` parameter in `networks_sm_devices_checkin`. + - Bad naming `networkId` parameter in `networks_sm_devices_lock`. + - Bad naming `networkId` parameter in `networks_sm_devices_modify_tags`. + - Bad naming `networkId` parameter in `networks_sm_devices_move`. + - Bad naming `networkId` parameter in `networks_sm_devices_refresh_details`. + - Bad naming `networkId` parameter in `networks_sm_devices_unenroll`. + - Bad naming `networkId` parameter in `networks_sm_devices_wipe`. + - Bad naming `networkId` parameter in `networks_sm_user_access_devices_delete`. + - Bad naming `networkId` parameter in `networks_split`. + - Bad naming `networkId` parameter in `networks_switch_stacks_add`. + - Bad naming `networkId` parameter in `networks_switch_stacks_remove`. + - Bad naming `networkId` parameter in `networks_unbind`. + - Bad naming `networkId` parameter in `networks_sm_devices_fields`. + release_date: "2023-10-26" 2.16.12: changes: bugfixes: - - New condition added to Meraki Compare Equality. - - Devices module documentation fixed. - release_date: '2023-10-26' + - New condition added to Meraki Compare Equality. + - Devices module documentation fixed. + release_date: "2023-10-26" 2.16.13: changes: bugfixes: - - Meraki Compare Equality 2 added. - release_date: '2023-10-30' + - Meraki Compare Equality 2 added. + release_date: "2023-10-30" 2.16.14: changes: bugfixes: - - Adding condition to avoid error on exists on devices. - release_date: '2023-11-07' + - Adding condition to avoid error on exists on devices. + release_date: "2023-11-07" 2.16.15: changes: bugfixes: - - Adding `network_clients_info` and `network_client_info`. - - Adding `platform_meraki.rst` to docs. - release_date: '2023-11-14' + - Adding `network_clients_info` and `network_client_info`. + - Adding `platform_meraki.rst` to docs. + release_date: "2023-11-14" 2.16.16: changes: bugfixes: @@ -981,29 +981,29 @@ releases: - Parameter`organization_id` change to `organizationId` organizations_switch_devices_clone. - Parameter`organization_id` change to `organizationId` organizations_users. - Removing logs in meraki.py. - release_date: '2023-11-30' + release_date: "2023-11-30" 2.16.17: changes: bugfixes: - Adding support to ansible.utils >=3.0 - release_date: '2023-12-04' + release_date: "2023-12-04" 2.17.0: changes: minor_changes: - Adding support to ansible.utils ">=2.0.0, <4.00". - release_date: '2023-12-05' + release_date: "2023-12-05" 2.17.1: changes: bugfixes: - Adding build_ignore property to galaxy file. - release_date: '2023-12-07' + release_date: "2023-12-07" 2.17.2: changes: bugfixes: - Adding `smartquotes = False` to `conf.py` and romoving `'` from rst files. - release_date: '2023-12-19' + release_date: "2023-12-19" 2.18.0: changes: minor_changes: @@ -1154,5 +1154,17 @@ releases: 2.20.2: changes: bugfixes: - - runtime updated requires_ansible from 2.14.0 to '>=2.15.0'. - release_date: '2025-01-06' \ No newline at end of file + - runtime updated requires_ansible from 2.14.0 to '>=2.15.0'. + release_date: "2025-01-06" + 2.20.3: + changes: + bugfixes: + - README fixes. + release_date: "2025-01-07" + 2.20.4: + changes: + bugfixes: + - Issue fixes for workflow-ansible-lint. + - Change alias 'message' to 'message_rule' due is a reserved ansible word in meraki_mx_intrusion_prevention module. + - Old playbook tests removed. + release_date: "2025-01-08" diff --git a/changelogs/config.yaml b/changelogs/config.yaml index 49cf1365d..a035b6645 100644 --- a/changelogs/config.yaml +++ b/changelogs/config.yaml @@ -9,21 +9,21 @@ notesdir: fragments prelude_section_name: release_summary prelude_section_title: Release Summary sections: -- - major_changes - - Major Changes -- - minor_changes - - Minor Changes -- - breaking_changes - - Breaking Changes / Porting Guide -- - deprecated_features - - Deprecated Features -- - removed_features - - Removed Features (previously deprecated) -- - security_fixes - - Security Fixes -- - bugfixes - - Bugfixes -- - known_issues - - Known Issues + - - major_changes + - Major Changes + - - minor_changes + - Minor Changes + - - breaking_changes + - Breaking Changes / Porting Guide + - - deprecated_features + - Deprecated Features + - - removed_features + - Removed Features (previously deprecated) + - - security_fixes + - Security Fixes + - - bugfixes + - Bugfixes + - - known_issues + - Known Issues title: Cisco.Meraki -trivial_section_name: trivial \ No newline at end of file +trivial_section_name: trivial diff --git a/docs/platform_meraki.rst b/docs/platform_meraki.rst index 4ec1c37f0..8b15f078d 100644 --- a/docs/platform_meraki.rst +++ b/docs/platform_meraki.rst @@ -44,26 +44,26 @@ For modules that do not have the "meraki" prefix, this is an example that you ca .. code-block:: yaml cisco.meraki.administered_identities_me_info: - meraki_api_key: "{{meraki_api_key}}" - meraki_base_url: "{{meraki_base_url}}" - meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - meraki_certificate_path: "{{meraki_certificate_path}}" - meraki_requests_proxy: "{{meraki_requests_proxy}}" - meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - meraki_maximum_retries: "{{meraki_maximum_retries}}" - meraki_output_log: "{{meraki_output_log}}" - meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - meraki_log_path: "{{meraki_log_path}}" - meraki_print_console: "{{meraki_print_console}}" - meraki_suppress_logging: "{{meraki_suppress_logging}}" - meraki_simulate: "{{meraki_simulate}}" - meraki_be_geo_id: "{{meraki_be_geo_id}}" - meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" + meraki_api_key: "{{ meraki_api_key }}" + meraki_base_url: "{{ meraki_base_url }}" + meraki_single_request_timeout: "{{ meraki_single_request_timeout }}" + meraki_certificate_path: "{{ meraki_certificate_path }}" + meraki_requests_proxy: "{{ meraki_requests_proxy }}" + meraki_wait_on_rate_limit: "{{ meraki_wait_on_rate_limit }}" + meraki_nginx_429_retry_wait_time: "{{ meraki_nginx_429_retry_wait_time }}" + meraki_action_batch_retry_wait_time: "{{ meraki_action_batch_retry_wait_time }}" + meraki_retry_4xx_error: "{{ meraki_retry_4xx_error }}" + meraki_retry_4xx_error_wait_time: "{{ meraki_retry_4xx_error_wait_time }}" + meraki_maximum_retries: "{{ meraki_maximum_retries }}" + meraki_output_log: "{{ meraki_output_log }}" + meraki_log_file_prefix: "{{ meraki_log_file_prefix }}" + meraki_log_path: "{{ meraki_log_path }}" + meraki_print_console: "{{ meraki_print_console }}" + meraki_suppress_logging: "{{ meraki_suppress_logging }}" + meraki_simulate: "{{ meraki_simulate }}" + meraki_be_geo_id: "{{ meraki_be_geo_id }}" + meraki_use_iterator_for_get_pages: "{{ meraki_use_iterator_for_get_pages }}" + meraki_inherit_logging_config: "{{ meraki_inherit_logging_config }}" register: result .. seealso:: diff --git a/galaxy.yml b/galaxy.yml index f4fb08fb3..548fdce9e 100644 --- a/galaxy.yml +++ b/galaxy.yml @@ -1,10 +1,10 @@ --- namespace: cisco name: meraki -version: 2.20.3 +version: 2.20.4 readme: README.md authors: - - Francisco Muñoz + - Francisco Muñoz - Bryan Vargas - William Astorga - Jose Bogarin diff --git a/playbooks/Bulk_change_DNS_from_file.yaml b/playbooks/Bulk_change_DNS_from_file.yaml index 618f5d88d..12122fc49 100644 --- a/playbooks/Bulk_change_DNS_from_file.yaml +++ b/playbooks/Bulk_change_DNS_from_file.yaml @@ -1,18 +1,13 @@ ---- -# Notes: -# The playbook can't make changes if the device is using DHCP for IP assignment, it will just run and report success -# Works by imports the serial numbers of devices to use from a devices.yaml file - -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false vars: - org_id: "XXXXXXX" + org_id: XXXXXXX tasks: - name: Include vars of devices.yaml into the 'devices' variable - include_vars: + ansible.builtin.include_vars: file: devices.yaml name: devices - - name: Change DNS management information cisco.meraki.devices_management_interface: state: present diff --git a/playbooks/Create_a_Network.yaml b/playbooks/Create_a_Network.yaml index 8e78b9215..3f498366d 100644 --- a/playbooks/Create_a_Network.yaml +++ b/playbooks/Create_a_Network.yaml @@ -1,5 +1,5 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create Network @@ -8,8 +8,8 @@ organizationId: "828099381482762270" name: Made With Ansible networks notes: Made_with_anisble - productTypes: + productTypes: - switch - appliance - wireless - timeZone: Australia/Sydney \ No newline at end of file + timeZone: Australia/Sydney diff --git a/playbooks/Get_AP_Serials.yaml b/playbooks/Get_AP_Serials.yaml index 593cdb445..ec935c1d6 100644 --- a/playbooks/Get_AP_Serials.yaml +++ b/playbooks/Get_AP_Serials.yaml @@ -1,7 +1,7 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost vars: - org_id: "XXXXXXXX" + org_id: XXXXXXXX gather_facts: false tasks: - name: Get all organizations _devices @@ -10,12 +10,12 @@ organizationId: "{{ org_id }}" total_pages: -1 register: result - - name: Filter APs with "wireless" productTypes and get Serial Number - set_fact: - filtered_aps: "{{ result.meraki_response | selectattr('productType', 'contains', 'wireless') | map(attribute='serial') | list }}" + ansible.builtin.set_fact: + filtered_aps: + "{{ result.meraki_response | selectattr('productType', 'contains', + 'wireless') | map(attribute='serial') | list }}" register: aps - - name: Show All Devices ansible.builtin.debug: msg: "{{ aps }}" diff --git a/playbooks/Get_All_Devices.yaml b/playbooks/Get_All_Devices.yaml index e9f1ce422..a9e0a4547 100644 --- a/playbooks/Get_All_Devices.yaml +++ b/playbooks/Get_All_Devices.yaml @@ -1,7 +1,7 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost vars: - org_id: "XXXXXXXX" + org_id: XXXXXXXX gather_facts: false tasks: - name: Get all organizations _devices @@ -10,7 +10,6 @@ organizationId: "{{ org_id }}" total_pages: -1 register: org_devices - - name: Show All Devices ansible.builtin.debug: - msg: "{{ org_devices }}" \ No newline at end of file + msg: "{{ org_devices }}" diff --git a/playbooks/Get_IP_MGNT_info.yaml b/playbooks/Get_IP_MGNT_info.yaml index 87e871335..f89f0d56b 100644 --- a/playbooks/Get_IP_MGNT_info.yaml +++ b/playbooks/Get_IP_MGNT_info.yaml @@ -1,12 +1,11 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Query management information cisco.meraki.devices_management_interface_info: serial: Q3XX-XXXX-XXXX register: result - - name: Show Results ansible.builtin.debug: - msg: "{{ result }}" \ No newline at end of file + msg: "{{ result }}" diff --git a/playbooks/Get_IP_MGNT_info_from_file.yaml b/playbooks/Get_IP_MGNT_info_from_file.yaml index 768ae4e24..8b958d487 100644 --- a/playbooks/Get_IP_MGNT_info_from_file.yaml +++ b/playbooks/Get_IP_MGNT_info_from_file.yaml @@ -1,19 +1,16 @@ ---- -# Works by gettting the serial numbers of devices from the devices.yaml file -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Include vars of devices.yaml into the 'devices' variable - include_vars: + ansible.builtin.include_vars: file: devices.yaml name: devices - - name: Query management information cisco.meraki.devices_management_interface_info: serial: "{{ item.value.serial_no }}" register: result loop: "{{ lookup('dict', devices) }}" - - name: Show Results ansible.builtin.debug: - msg: "{{ result }}" \ No newline at end of file + msg: "{{ result }}" diff --git a/playbooks/Set_IP_MGNT_info.yaml b/playbooks/Set_IP_MGNT_info.yaml index 52ee9381b..485b9c69a 100644 --- a/playbooks/Set_IP_MGNT_info.yaml +++ b/playbooks/Set_IP_MGNT_info.yaml @@ -1,5 +1,5 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Change management information @@ -8,9 +8,9 @@ serial: XXXX-XXXX-XXXX wan1: staticDns: - - 192.168.20.2 - - 8.8.8.8 + - 192.168.20.2 + - 8.8.8.8 staticGatewayIp: 192.168.20.1 staticIp: 192.168.20.181 staticSubnetMask: 255.255.255.0 - usingStaticIp: true \ No newline at end of file + usingStaticIp: true diff --git a/playbooks/What_Org.yaml b/playbooks/What_Org.yaml index d1217d293..93cc0b841 100644 --- a/playbooks/What_Org.yaml +++ b/playbooks/What_Org.yaml @@ -1,12 +1,11 @@ ---- -- hosts: meraki_servers +- name: Play Name + hosts: meraki_servers gather_facts: false tasks: - name: Get all Organizations cisco.meraki.organizations_info: meraki_suppress_logging: true register: result - - name: Show current Meraki administrator ansible.builtin.debug: - msg: "{{ result | json_query('meraki_response[*].name') }}" \ No newline at end of file + msg: "{{ result | json_query('meraki_response[*].name') }}" diff --git a/playbooks/Who_Am_I.yaml b/playbooks/Who_Am_I.yaml index abbe8a6cd..39376b55a 100644 --- a/playbooks/Who_Am_I.yaml +++ b/playbooks/Who_Am_I.yaml @@ -1,21 +1,20 @@ ---- -- hosts: meraki_servers +- name: Play Name + hosts: meraki_servers gather_facts: false tasks: - name: Get my administered identities cisco.meraki.administered_identities_me_info: - meraki_suppress_logging: true + meraki_suppress_logging: true register: whoamiresult - - name: Show current Meraki administrator ansible.builtin.debug: - msg: "{{ whoamiresult.meraki_response.name }} - {{whoamiresult.meraki_response.email}}" - + msg: + "{{ whoamiresult.meraki_response.name }} - {{ whoamiresult.meraki_response.email + }}" - name: Get all Organizations cisco.meraki.organizations_info: - meraki_suppress_logging: true + meraki_suppress_logging: true register: orgresults - - name: Show current Meraki administrator ansible.builtin.debug: - msg: "{{ orgresults | json_query('meraki_response[*].name') }}" \ No newline at end of file + msg: "{{ orgresults | json_query('meraki_response[*].name') }}" diff --git a/playbooks/administered_identities_me_api_keys_revoke.yml b/playbooks/administered_identities_me_api_keys_revoke.yml index ef54d30b8..f7a4565f0 100644 --- a/playbooks/administered_identities_me_api_keys_revoke.yml +++ b/playbooks/administered_identities_me_api_keys_revoke.yml @@ -1,32 +1,12 @@ -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false vars: - org_id: "XXXXXXX" + org_id: XXXXXXX tasks: - name: Include vars of devices.yaml into the 'devices' variable - include_vars: + ansible.builtin.include_vars: file: devices.yaml name: devices - name: Create - cisco.meraki.administered_identities_me_api_keys_revoke: - # meraki_api_key: "{{meraki_api_key}}" - # meraki_base_url: "{{meraki_base_url}}" - # meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - # meraki_certificate_path: "{{meraki_certificate_path}}" - # meraki_requests_proxy: "{{meraki_requests_proxy}}" - # meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - # meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - # meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - # meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - # meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - # meraki_maximum_retries: "{{meraki_maximum_retries}}" - # meraki_output_log: "{{meraki_output_log}}" - # meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - # meraki_log_path: "{{meraki_log_path}}" - # meraki_print_console: "{{meraki_print_console}}" - # meraki_suppress_logging: "{{meraki_suppress_logging}}" - # meraki_simulate: "{{meraki_simulate}}" - # meraki_be_geo_id: "{{meraki_be_geo_id}}" - # meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - # meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" - # suffix: string + cisco.meraki.administered_identities_me_api_keys_revoke: null diff --git a/playbooks/administered_identities_me_info.yml b/playbooks/administered_identities_me_info.yml index fb4314112..61301cc96 100644 --- a/playbooks/administered_identities_me_info.yml +++ b/playbooks/administered_identities_me_info.yml @@ -1,28 +1,11 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Get all administered _identities _me cisco.meraki.administered_identities_me_info: - # meraki_api_key: "{{meraki_api_key}}" - # meraki_username: "{{meraki_username}}" - # meraki_password: "{{meraki_password}}" - # meraki_verify: "{{meraki_verify}}" - # meraki_port: "{{meraki_port}}" - # meraki_version: "{{meraki_version}}" - # meraki_debug: "{{meraki_debug}}" - # state: present - # management: - # details: - # - name: MSP ID - # value: '1234567' - # name: Test Ansible - # organizationId: "575334852396583071" - # api: - # enabled: false meraki_suppress_logging: true register: result - - name: Show result ansible.builtin.debug: msg: "{{ result }}" diff --git a/playbooks/administrerd_identities_me_api_keys_generate.yml b/playbooks/administrerd_identities_me_api_keys_generate.yml index 33a10448e..908a51eb9 100644 --- a/playbooks/administrerd_identities_me_api_keys_generate.yml +++ b/playbooks/administrerd_identities_me_api_keys_generate.yml @@ -1,13 +1,13 @@ -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false vars: - org_id: "XXXXXXX" + org_id: XXXXXXX tasks: - name: Include vars of devices.yaml into the 'devices' variable - include_vars: + ansible.builtin.include_vars: file: devices.yaml name: devices - - name: Create cisco.meraki.administered_identities_me_api_keys_generate: meraki_suppress_logging: "false" diff --git a/playbooks/credentials.template b/playbooks/credentials.template index d0c43c90a..1c16820d7 100644 --- a/playbooks/credentials.template +++ b/playbooks/credentials.template @@ -3,20 +3,20 @@ meraki_api_key: "ABCD" meraki_base_url: "https://api.meraki.com/api/v1" meraki_single_request_timeout: "" meraki_certificate_path: "" -meraki_requests_proxy: True +meraki_requests_proxy: true meraki_wait_on_rate_limit: 60 meraki_nginx_429_retry_wait_time: 60 meraki_action_batch_retry_wait_time: 60 -meraki_retry_4xx_error: False +meraki_retry_4xx_error: false meraki_retry_4xx_error_wait_time: 60 meraki_maximum_retries: 2 -meraki_output_log: True +meraki_output_log: true meraki_log_file_prefix: "meraki_api_" meraki_log_path: "" -meraki_print_console: True -meraki_suppress_logging: False -meraki_simulate: False +meraki_print_console: true +meraki_suppress_logging: false +meraki_simulate: false meraki_be_geo_id: "" -meraki_use_iterator_for_get_pages: False -meraki_inherit_logging_config: False \ No newline at end of file +meraki_use_iterator_for_get_pages: false +meraki_inherit_logging_config: false \ No newline at end of file diff --git a/playbooks/credentials.yml b/playbooks/credentials.yml deleted file mode 100644 index d760e8fb2..000000000 --- a/playbooks/credentials.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -meraki_api_key: "ABCD" diff --git a/playbooks/device_blink_leds.yml b/playbooks/device_blink_leds.yml index 1039f3000..deca9c8f3 100644 --- a/playbooks/device_blink_leds.yml +++ b/playbooks/device_blink_leds.yml @@ -1,31 +1,11 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create cisco.meraki.devices_blink_leds: - # meraki_base_url: "{{meraki_base_url}}" - # meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - # meraki_certificate_path: "{{meraki_certificate_path}}" - # meraki_requests_proxy: "{{meraki_requests_proxy}}" - # meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - # meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - # meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - # meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - # meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - # meraki_maximum_retries: "{{meraki_maximum_retries}}" - # meraki_output_log: "{{meraki_output_log}}" - # meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - # meraki_log_path: "{{meraki_log_path}}" - # meraki_print_console: "{{meraki_print_console}}" - # meraki_suppress_logging: "{{meraki_suppress_logging}}" - # meraki_simulate: "{{meraki_simulate}}" - # meraki_be_geo_id: "{{meraki_be_geo_id}}" - # - # meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - # meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" meraki_suppress_logging: true duration: 20 duty: 50 period: 160 - serial: "QBSB-AX45-LY9A" + serial: QBSB-AX45-LY9A diff --git a/playbooks/device_lldp_cdp.yml b/playbooks/device_lldp_cdp.yml index 27174fa50..72b55b555 100644 --- a/playbooks/device_lldp_cdp.yml +++ b/playbooks/device_lldp_cdp.yml @@ -1,16 +1,13 @@ ---- - -- hosts: localhost +- name: Play Name + hosts: localhost vars: sn: Q4AC-YTF3-WQ66 gather_facts: false tasks: - - name: Get device's LLDP and CDP neighbors cisco.meraki.devices_lldp_cdp_info: serial: "{{ sn }}" register: result - - name: Show result ansible.builtin.debug: msg: "{{ result }}" diff --git a/playbooks/device_statuses.yml b/playbooks/device_statuses.yml index 184379110..a1e04d832 100644 --- a/playbooks/device_statuses.yml +++ b/playbooks/device_statuses.yml @@ -1,16 +1,13 @@ ---- - -- hosts: localhost +- name: Play Name + hosts: localhost vars: organization_id: 828099381482762270 gather_facts: false tasks: - - name: Get all organization's devices statuses cisco.meraki.organizations_devices_statuses_info: organizationId: "{{ organization_id }}" register: result - - name: Show result ansible.builtin.debug: msg: "{{ result }}" diff --git a/playbooks/devices.yaml b/playbooks/devices.yaml deleted file mode 100644 index 6938b5d0d..000000000 --- a/playbooks/devices.yaml +++ /dev/null @@ -1,9 +0,0 @@ ---- -device-1: - serial_no: Q3XX-XXXX-XXXX - -device-2: - serial_no: Q3XX-XXXX-XXXX - -device-3: - serial_no: Q3XX-XXXX-XXXX \ No newline at end of file diff --git a/playbooks/devices.yml b/playbooks/devices.yml index 0484243d1..f5f9b70d2 100644 --- a/playbooks/devices.yml +++ b/playbooks/devices.yml @@ -1,19 +1,9 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - # - name: Update by id - # cisco.meraki.devices: - # meraki_suppress_logging: false - # state: present - # # lat: "37.4180951010364" - # # lng: "-122.098531723021" - # # mac: 4c:c8:a1:11:01:0b - # name: My AP 3 - # serial: QBSD-36C3-473D - # # tags: ["testing"] - - name: change name of device + - name: Change name of device cisco.meraki.devices: name: new name 12 serial: QBSC-ALSL-3GXN - state: present \ No newline at end of file + state: present diff --git a/playbooks/devices_info.yml b/playbooks/devices_info.yml index 934f31bfe..4fa7515b0 100644 --- a/playbooks/devices_info.yml +++ b/playbooks/devices_info.yml @@ -1,18 +1,14 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Get Device cisco.meraki.devices_info: meraki_suppress_logging: true organizationId: "828099381482762270" - # serial: QBSD-36C3-473D - # tags: ["recently-added"] - # productTypes: ["appliance"] perPage: 3 total_pages: -1 register: result - - name: Show result ansible.builtin.debug: msg: "{{ result }}" diff --git a/playbooks/devices_live_tools_ping.yml b/playbooks/devices_live_tools_ping.yml index 9276a4cd4..f8f579b16 100644 --- a/playbooks/devices_live_tools_ping.yml +++ b/playbooks/devices_live_tools_ping.yml @@ -1,30 +1,10 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create cisco.meraki.devices_live_tools_ping: meraki_suppress_logging: true - # meraki_base_url: "{{meraki_base_url}}" - # meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - # meraki_certificate_path: "{{meraki_certificate_path}}" - # meraki_requests_proxy: "{{meraki_requests_proxy}}" - # meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - # meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - # meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - # meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - # meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - # meraki_maximum_retries: "{{meraki_maximum_retries}}" - # meraki_output_log: "{{meraki_output_log}}" - # meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - # meraki_log_path: "{{meraki_log_path}}" - # meraki_print_console: "{{meraki_print_console}}" - # meraki_suppress_logging: "{{meraki_suppress_logging}}" - # meraki_simulate: "{{meraki_simulate}}" - # meraki_be_geo_id: "{{meraki_be_geo_id}}" - # - # meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - # meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" state: present count: 2 serial: QBSD-36C3-473D diff --git a/playbooks/devices_switch_routing_interfaces.yml b/playbooks/devices_switch_routing_interfaces.yml index 2163ea214..2cac1052e 100644 --- a/playbooks/devices_switch_routing_interfaces.yml +++ b/playbooks/devices_switch_routing_interfaces.yml @@ -1,27 +1,12 @@ -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - - name: Create - cisco.meraki.devices_switch_routing_interfaces: - meraki_suppress_logging: true - state: present - defaultGateway: 192.168.1.1 - interfaceIp: 192.168.1.2 - # ipv6: - # address: 1:2:3:4::1 - # assignmentMode: static - # gateway: 1:2:3:4::2 - # prefix: 1:2:3:4::/48 - # multicastRouting: disabled - name: L3 interface - # ospfSettings: - # area: '0' - # cost: 1 - # isPassiveEnabled: true - # ospfV3: - # area: '1' - # cost: 2 - # isPassiveEnabled: true - serial: L_828099381482770866 - # subnet: 192.168.1.0/24 - # vlanId: 100 \ No newline at end of file + - name: Create + cisco.meraki.devices_switch_routing_interfaces: + meraki_suppress_logging: true + state: present + defaultGateway: 192.168.1.1 + interfaceIp: 192.168.1.2 + name: L3 interface + serial: L_828099381482770866 diff --git a/playbooks/meraki_api__log__2024-11-06_10-46-04.log b/playbooks/meraki_api__log__2024-11-06_10-46-04.log deleted file mode 100644 index 09e6beed5..000000000 --- a/playbooks/meraki_api__log__2024-11-06_10-46-04.log +++ /dev/null @@ -1,7 +0,0 @@ -2024-11-06 10:46:04 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-11-06 10:46:04 meraki: DEBUG > {'tags': ['organizations', 'configure', 'networks'], 'operation': 'getOrganizationNetworks', 'page': 1} -2024-11-06 10:46:04 meraki: INFO > GET https://api.meraki.com/api/v1/organizations/828099381482762270/networks -2024-11-06 10:46:05 meraki: INFO > organizations, getOrganizationNetworks; page 1 - 200 OK -2024-11-06 10:46:05 meraki: DEBUG > {'tags': ['organizations', 'configure', 'networks'], 'operation': 'createOrganizationNetwork', 'method': 'POST', 'url': '/organizations/828099381482762270/networks', 'json': {'notes': 'Additional description of the network', 'timeZone': 'America/Los_Angeles', 'name': 'New network by Ansible', 'productTypes': ['appliance', 'switch']}} -2024-11-06 10:46:05 meraki: INFO > POST https://api.meraki.com/api/v1/organizations/828099381482762270/networks -2024-11-06 10:46:06 meraki: INFO > organizations, createOrganizationNetwork - 201 Created diff --git a/playbooks/meraki_api__log__2024-11-06_10-46-09.log b/playbooks/meraki_api__log__2024-11-06_10-46-09.log deleted file mode 100644 index 6434de24b..000000000 --- a/playbooks/meraki_api__log__2024-11-06_10-46-09.log +++ /dev/null @@ -1,7 +0,0 @@ -2024-11-06 10:46:09 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-11-06 10:46:09 meraki: DEBUG > {'tags': ['organizations', 'configure', 'networks'], 'operation': 'getOrganizationNetworks', 'page': 1} -2024-11-06 10:46:09 meraki: INFO > GET https://api.meraki.com/api/v1/organizations/828099381482762270/networks -2024-11-06 10:46:10 meraki: INFO > organizations, getOrganizationNetworks; page 1 - 200 OK -2024-11-06 10:46:10 meraki: DEBUG > {'tags': ['networks', 'configure'], 'operation': 'getNetwork', 'method': 'GET', 'url': '/networks/L_828099381482776622', 'params': None} -2024-11-06 10:46:10 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482776622 -2024-11-06 10:46:10 meraki: INFO > networks, getNetwork - 200 OK diff --git a/playbooks/meraki_api__log__2024-11-06_11-08-45.log b/playbooks/meraki_api__log__2024-11-06_11-08-45.log deleted file mode 100644 index db7d7c4c9..000000000 --- a/playbooks/meraki_api__log__2024-11-06_11-08-45.log +++ /dev/null @@ -1,7 +0,0 @@ -2024-11-06 11:08:45 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-11-06 11:08:45 meraki: DEBUG > {'tags': ['organizations', 'configure', 'networks'], 'operation': 'getOrganizationNetworks', 'page': 1} -2024-11-06 11:08:45 meraki: INFO > GET https://api.meraki.com/api/v1/organizations/828099381482762270/networks -2024-11-06 11:08:46 meraki: INFO > organizations, getOrganizationNetworks; page 1 - 200 OK -2024-11-06 11:08:46 meraki: DEBUG > {'tags': ['networks', 'configure'], 'operation': 'getNetwork', 'method': 'GET', 'url': '/networks/L_828099381482776622', 'params': None} -2024-11-06 11:08:46 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482776622 -2024-11-06 11:08:47 meraki: INFO > networks, getNetwork - 200 OK diff --git a/playbooks/meraki_api__log__2024-11-06_11-08-51.log b/playbooks/meraki_api__log__2024-11-06_11-08-51.log deleted file mode 100644 index d67be81c3..000000000 --- a/playbooks/meraki_api__log__2024-11-06_11-08-51.log +++ /dev/null @@ -1,7 +0,0 @@ -2024-11-06 11:08:51 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-11-06 11:08:51 meraki: DEBUG > {'tags': ['organizations', 'configure', 'networks'], 'operation': 'getOrganizationNetworks', 'page': 1} -2024-11-06 11:08:51 meraki: INFO > GET https://api.meraki.com/api/v1/organizations/828099381482762270/networks -2024-11-06 11:08:51 meraki: INFO > organizations, getOrganizationNetworks; page 1 - 200 OK -2024-11-06 11:08:51 meraki: DEBUG > {'tags': ['networks', 'configure'], 'operation': 'getNetwork', 'method': 'GET', 'url': '/networks/L_828099381482776622', 'params': None} -2024-11-06 11:08:51 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482776622 -2024-11-06 11:08:51 meraki: INFO > networks, getNetwork - 200 OK diff --git a/playbooks/meraki_api__log__2024-12-17_13-30-30.log b/playbooks/meraki_api__log__2024-12-17_13-30-30.log deleted file mode 100644 index 900d95dc6..000000000 --- a/playbooks/meraki_api__log__2024-12-17_13-30-30.log +++ /dev/null @@ -1,7 +0,0 @@ -2024-12-17 13:30:30 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-12-17 13:30:30 meraki: DEBUG > {'tags': ['organizations', 'configure', 'networks'], 'operation': 'getOrganizationNetworks', 'page': 1} -2024-12-17 13:30:30 meraki: INFO > GET https://api.meraki.com/api/v1/organizations/828099381482762270/networks -2024-12-17 13:30:31 meraki: INFO > organizations, getOrganizationNetworks; page 1 - 200 OK -2024-12-17 13:30:31 meraki: DEBUG > {'tags': ['networks', 'configure'], 'operation': 'getNetwork', 'method': 'GET', 'url': '/networks/L_828099381482776622', 'params': None} -2024-12-17 13:30:31 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482776622 -2024-12-17 13:30:31 meraki: INFO > networks, getNetwork - 200 OK diff --git a/playbooks/meraki_api__log__2024-12-17_13-30-33.log b/playbooks/meraki_api__log__2024-12-17_13-30-33.log deleted file mode 100644 index c7e0bddc7..000000000 --- a/playbooks/meraki_api__log__2024-12-17_13-30-33.log +++ /dev/null @@ -1,7 +0,0 @@ -2024-12-17 13:30:33 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-12-17 13:30:33 meraki: DEBUG > {'tags': ['organizations', 'configure', 'networks'], 'operation': 'getOrganizationNetworks', 'page': 1} -2024-12-17 13:30:33 meraki: INFO > GET https://api.meraki.com/api/v1/organizations/828099381482762270/networks -2024-12-17 13:30:34 meraki: INFO > organizations, getOrganizationNetworks; page 1 - 200 OK -2024-12-17 13:30:34 meraki: DEBUG > {'tags': ['networks', 'configure'], 'operation': 'getNetwork', 'method': 'GET', 'url': '/networks/L_828099381482776622', 'params': None} -2024-12-17 13:30:34 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482776622 -2024-12-17 13:30:35 meraki: INFO > networks, getNetwork - 200 OK diff --git a/playbooks/meraki_api__log__2024-12-17_13-36-53.log b/playbooks/meraki_api__log__2024-12-17_13-36-53.log deleted file mode 100644 index 1ada9a014..000000000 --- a/playbooks/meraki_api__log__2024-12-17_13-36-53.log +++ /dev/null @@ -1,7 +0,0 @@ -2024-12-17 13:36:53 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-12-17 13:36:53 meraki: DEBUG > {'tags': ['appliance', 'configure', 'ssids'], 'operation': 'getNetworkApplianceSsid', 'method': 'GET', 'url': '/networks/L_828099381482771185/appliance/ssids/1234', 'params': None} -2024-12-17 13:36:53 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482771185/appliance/ssids/1234 -2024-12-17 13:36:54 meraki: ERROR > appliance, getNetworkApplianceSsid - 404 Not Found, {'errors': ['SSID not found']} -2024-12-17 13:36:54 meraki: DEBUG > {'tags': ['appliance', 'configure', 'ssids'], 'operation': 'getNetworkApplianceSsids', 'method': 'GET', 'url': '/networks/L_828099381482771185/appliance/ssids', 'params': None} -2024-12-17 13:36:54 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482771185/appliance/ssids -2024-12-17 13:36:55 meraki: INFO > appliance, getNetworkApplianceSsids - 200 OK diff --git a/playbooks/meraki_api__log__2024-12-17_14-17-58.log b/playbooks/meraki_api__log__2024-12-17_14-17-58.log deleted file mode 100644 index e72e6773e..000000000 --- a/playbooks/meraki_api__log__2024-12-17_14-17-58.log +++ /dev/null @@ -1,7 +0,0 @@ -2024-12-17 14:17:58 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-12-17 14:17:58 meraki: DEBUG > {'tags': ['organizations', 'configure', 'networks'], 'operation': 'getOrganizationNetworks', 'page': 1} -2024-12-17 14:17:58 meraki: INFO > GET https://api.meraki.com/api/v1/organizations/828099381482762270/networks -2024-12-17 14:17:59 meraki: INFO > organizations, getOrganizationNetworks; page 1 - 200 OK -2024-12-17 14:17:59 meraki: DEBUG > {'tags': ['networks', 'configure'], 'operation': 'getNetwork', 'method': 'GET', 'url': '/networks/L_828099381482776622', 'params': None} -2024-12-17 14:17:59 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482776622 -2024-12-17 14:17:59 meraki: INFO > networks, getNetwork - 200 OK diff --git a/playbooks/meraki_api__log__2024-12-17_14-18-00.log b/playbooks/meraki_api__log__2024-12-17_14-18-00.log deleted file mode 100644 index f7c12da01..000000000 --- a/playbooks/meraki_api__log__2024-12-17_14-18-00.log +++ /dev/null @@ -1,7 +0,0 @@ -2024-12-17 14:18:00 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-12-17 14:18:00 meraki: DEBUG > {'tags': ['organizations', 'configure', 'networks'], 'operation': 'getOrganizationNetworks', 'page': 1} -2024-12-17 14:18:00 meraki: INFO > GET https://api.meraki.com/api/v1/organizations/828099381482762270/networks -2024-12-17 14:18:01 meraki: INFO > organizations, getOrganizationNetworks; page 1 - 200 OK -2024-12-17 14:18:01 meraki: DEBUG > {'tags': ['networks', 'configure'], 'operation': 'getNetwork', 'method': 'GET', 'url': '/networks/L_828099381482776622', 'params': None} -2024-12-17 14:18:01 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482776622 -2024-12-17 14:18:02 meraki: INFO > networks, getNetwork - 200 OK diff --git a/playbooks/meraki_api__log__2024-12-17_14-32-05.log b/playbooks/meraki_api__log__2024-12-17_14-32-05.log deleted file mode 100644 index 02d3e058b..000000000 --- a/playbooks/meraki_api__log__2024-12-17_14-32-05.log +++ /dev/null @@ -1 +0,0 @@ -2024-12-17 14:32:05 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} diff --git a/playbooks/meraki_api__log__2024-12-17_14-36-09.log b/playbooks/meraki_api__log__2024-12-17_14-36-09.log deleted file mode 100644 index c0df0c50a..000000000 --- a/playbooks/meraki_api__log__2024-12-17_14-36-09.log +++ /dev/null @@ -1,4 +0,0 @@ -2024-12-17 14:36:09 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-12-17 14:36:09 meraki: DEBUG > {'tags': ['networks', 'monitor', 'clients'], 'operation': 'getNetworkClients', 'page': 1} -2024-12-17 14:36:09 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482771185/clients -2024-12-17 14:36:10 meraki: INFO > networks, getNetworkClients; page 1 - 200 OK diff --git a/playbooks/meraki_api__log__2024-12-17_14-36-11.log b/playbooks/meraki_api__log__2024-12-17_14-36-11.log deleted file mode 100644 index d3c214720..000000000 --- a/playbooks/meraki_api__log__2024-12-17_14-36-11.log +++ /dev/null @@ -1,4 +0,0 @@ -2024-12-17 14:36:11 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-12-17 14:36:11 meraki: DEBUG > {'tags': ['networks', 'monitor', 'clients'], 'operation': 'getNetworkClients', 'page': 1} -2024-12-17 14:36:11 meraki: INFO > GET https://api.meraki.com/api/v1/networks/L_828099381482771185/clients -2024-12-17 14:36:12 meraki: INFO > networks, getNetworkClients; page 1 - 200 OK diff --git a/playbooks/meraki_api__log__2024-12-18_13-22-50.log b/playbooks/meraki_api__log__2024-12-18_13-22-50.log deleted file mode 100644 index f02c6bc27..000000000 --- a/playbooks/meraki_api__log__2024-12-18_13-22-50.log +++ /dev/null @@ -1,4 +0,0 @@ -2024-12-18 13:22:50 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.51.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-12-18 13:22:50 meraki: DEBUG > {'tags': ['administered', 'configure', 'identities', 'me', 'api', 'keys'], 'operation': 'generateAdministeredIdentitiesMeApiKeys', 'method': 'POST', 'url': '/administered/identities/me/api/keys/generate', 'json': None} -2024-12-18 13:22:50 meraki: INFO > POST https://api.meraki.com/api/v1/administered/identities/me/api/keys/generate -2024-12-18 13:22:51 meraki: INFO > administered, generateAdministeredIdentitiesMeApiKeys - 202 Accepted diff --git a/playbooks/meraki_api__log__2024-12-18_13-25-06.log b/playbooks/meraki_api__log__2024-12-18_13-25-06.log deleted file mode 100644 index 0c6095669..000000000 --- a/playbooks/meraki_api__log__2024-12-18_13-25-06.log +++ /dev/null @@ -1,4 +0,0 @@ -2024-12-18 13:25:06 meraki: INFO > Meraki dashboard API session initialized with these parameters: {'version': '1.53.0', 'api_key': '************************************08cf', 'base_url': 'https://api.meraki.com/api/v1', 'single_request_timeout': 60, 'certificate_path': '', 'requests_proxy': '', 'wait_on_rate_limit': True, 'nginx_429_retry_wait_time': 60, 'action_batch_retry_wait_time': 60, 'network_delete_retry_wait_time': 240, 'retry_4xx_error': False, 'retry_4xx_error_wait_time': 60, 'maximum_retries': 2, 'simulate': False, 'be_geo_id': None, 'caller': 'MerakiAnsibleCollection/1.0.0 Cisco', 'use_iterator_for_get_pages': False} -2024-12-18 13:25:06 meraki: DEBUG > {'tags': ['administered', 'configure', 'identities', 'me', 'api', 'keys'], 'operation': 'generateAdministeredIdentitiesMeApiKeys', 'method': 'POST', 'url': '/administered/identities/me/api/keys/generate', 'json': None} -2024-12-18 13:25:06 meraki: INFO > POST https://api.meraki.com/api/v1/administered/identities/me/api/keys/generate -2024-12-18 13:25:07 meraki: ERROR > administered, generateAdministeredIdentitiesMeApiKeys - 400 Bad Request, {'errors': ['Identity has already reached maximum quota of two API keys']} diff --git a/playbooks/ms_playbook.yml b/playbooks/ms_playbook.yml index c9f2d333b..23710ee5c 100644 --- a/playbooks/ms_playbook.yml +++ b/playbooks/ms_playbook.yml @@ -1,66 +1,57 @@ ---- - -- hosts: localhost +- name: Play Name + hosts: localhost vars: - network_id: L_828099381482770866 # Site-2 + network_id: L_828099381482770866 serial_number: QBSB-D5ZD-9CXT gather_facts: false tasks: - - - name: Update STP settings - cisco.meraki.networks_switch_stp: - networkId: "{{ network_id }}" - rstpEnabled: true - stpBridgePriority: - - stpPriority: 4096 - switches: - - "{{ serial_number }}" - - - name: Update switch settings - cisco.meraki.networks_switch_settings: - networkId: "{{ network_id }}" - useCombinedPower: true - vlan: 1 - - - name: Update storm-control settings - cisco.meraki.networks_switch_storm_control: - networkId: "{{ network_id }}" - broadcastThreshold: 30 - multicastThreshold: 30 - unknownUnicastThreshold: 30 - - - name: Update MTU settings - cisco.meraki.networks_switch_mtu: - networkId: "{{ network_id }}" - defaultMtuSize: 9578 - - - name: Createa a routing interface - cisco.meraki.devices_switch_routing_interfaces: - defaultGateway: 192.168.1.1 - interfaceIp: 192.168.1.2 - name: L3 interface - serial: "{{ serial_number }}" - subnet: 192.168.1.0/24 - vlanId: 123 - - - name: Create a static route - cisco.meraki.devices_switch_routing_static_routes: - serial: "{{ serial_number }}" - name: My route - nextHopIp: 192.168.1.100 - subnet: 1.2.3.0/24 - - - name: Create a static route - cisco.meraki.devices_switch_routing_static_routes: - serial: "{{ serial_number }}" - name: My route - nextHopIp: 192.168.1.100 - subnet: 1.2.3.0/24 - - - name: Port cycle - cisco.meraki.devices_switch_ports_cycle: - serial: "{{ serial_number }}" - ports: - - 1 - - "4-5" - - "25-48" + - name: Update STP settings + cisco.meraki.networks_switch_stp: + networkId: "{{ network_id }}" + rstpEnabled: true + stpBridgePriority: + - stpPriority: 4096 + switches: + - "{{ serial_number }}" + - name: Update switch settings + cisco.meraki.networks_switch_settings: + networkId: "{{ network_id }}" + useCombinedPower: true + vlan: 1 + - name: Update storm-control settings + cisco.meraki.networks_switch_storm_control: + networkId: "{{ network_id }}" + broadcastThreshold: 30 + multicastThreshold: 30 + unknownUnicastThreshold: 30 + - name: Update MTU settings + cisco.meraki.networks_switch_mtu: + networkId: "{{ network_id }}" + defaultMtuSize: 9578 + - name: Createa a routing interface + cisco.meraki.devices_switch_routing_interfaces: + defaultGateway: 192.168.1.1 + interfaceIp: 192.168.1.2 + name: L3 interface + serial: "{{ serial_number }}" + subnet: 192.168.1.0/24 + vlanId: 123 + - name: Create a static route + cisco.meraki.devices_switch_routing_static_routes: + serial: "{{ serial_number }}" + name: My route + nextHopIp: 192.168.1.100 + subnet: 1.2.3.0/24 + - name: Create a static route + cisco.meraki.devices_switch_routing_static_routes: + serial: "{{ serial_number }}" + name: My route + nextHopIp: 192.168.1.100 + subnet: 1.2.3.0/24 + - name: Port cycle + cisco.meraki.devices_switch_ports_cycle: + serial: "{{ serial_number }}" + ports: + - 1 + - 4-5 + - 25-48 diff --git a/playbooks/mv_playbook.yml b/playbooks/mv_playbook.yml index 78d8c07ba..a5920b0d5 100644 --- a/playbooks/mv_playbook.yml +++ b/playbooks/mv_playbook.yml @@ -1,63 +1,50 @@ ---- - -- hosts: localhost +- name: Play Name + hosts: localhost vars: serial_number: QBSD-8VXX-6QXX - network_id: L_828099381482770866 # Site-2 + network_id: L_828099381482770866 gather_facts: false tasks: - - - name: Update Camera name - cisco.meraki.devices: - serial: "{{ serial_number }}" - name: My Camera - - - name: Update Camera video settings - cisco.meraki.devices_camera_video_settings: - serial: "{{ serial_number }}" - externalRtspEnabled: true - - - name: Create a primary wireless profile - cisco.meraki.networks_camera_wireless_profiles: - networkId: "{{ network_id }}" - name: wireless profile A - ssid: - name: cameras ssid - authMode: psk - encryptionMode: wpa - psk: SuperSecretPreSharedKey - register: primary_profile - - - name: Create a secondary wireless profile - cisco.meraki.networks_camera_wireless_profiles: - networkId: "{{ network_id }}" - name: wireless profile B - ssid: - name: cameras ssid 2 - authMode: psk - encryptionMode: wpa - psk: SuperSecretPreSharedKey - register: secondary_profile - - - name: Associate the camera with the wireless profile - cisco.meraki.devices_camera_wireless_profiles: - serial: "{{ serial_number }}" - ids: - primary: "{{ primary_profile['meraki_response']['id'] }}" - secondary: "{{ secondary_profile['meraki_response']['id'] }}" - - - name: Update quality and retention settings - cisco.meraki.devices_camera_quality_and_retention: - serial: "{{ serial_number }}" - audioRecordingEnabled: true - motionBasedRetentionEnabled: true - motionDetectorVersion: 2 - quality: High - resolution: 1920x1080 - restrictedBandwidthModeEnabled: false - - # - name: Generate a snapshop - # cisco.meraki.devices_camera_generate_snapshot: - # serial: "{{ serial_number }}" - # fullframe: false - # timestamp: '2023-08-08T15:18:08Z' \ No newline at end of file + - name: Update Camera name + cisco.meraki.devices: + serial: "{{ serial_number }}" + name: My Camera + - name: Update Camera video settings + cisco.meraki.devices_camera_video_settings: + serial: "{{ serial_number }}" + externalRtspEnabled: true + - name: Create a primary wireless profile + cisco.meraki.networks_camera_wireless_profiles: + networkId: "{{ network_id }}" + name: wireless profile A + ssid: + name: cameras ssid + authMode: psk + encryptionMode: wpa + psk: SuperSecretPreSharedKey + register: primary_profile + - name: Create a secondary wireless profile + cisco.meraki.networks_camera_wireless_profiles: + networkId: "{{ network_id }}" + name: wireless profile B + ssid: + name: cameras ssid 2 + authMode: psk + encryptionMode: wpa + psk: SuperSecretPreSharedKey + register: secondary_profile + - name: Associate the camera with the wireless profile + cisco.meraki.devices_camera_wireless_profiles: + serial: "{{ serial_number }}" + ids: + primary: "{{ primary_profile['meraki_response']['id'] }}" + secondary: "{{ secondary_profile['meraki_response']['id'] }}" + - name: Update quality and retention settings + cisco.meraki.devices_camera_quality_and_retention: + serial: "{{ serial_number }}" + audioRecordingEnabled: true + motionBasedRetentionEnabled: true + motionDetectorVersion: 2 + quality: High + resolution: 1920x1080 + restrictedBandwidthModeEnabled: false diff --git a/playbooks/mx_deployment.yml b/playbooks/mx_deployment.yml index 13942f3c8..20339983e 100644 --- a/playbooks/mx_deployment.yml +++ b/playbooks/mx_deployment.yml @@ -1,69 +1,57 @@ ---- - -- hosts: localhost +- name: Play Name + hosts: localhost vars: - network_id: "L_828099381482771185" # Branch-1234 + network_id: L_828099381482771185 gather_facts: false tasks: - name: Get all networks _appliance _vlans cisco.meraki.networks_appliance_vlans_info: - networkId: "{{network_id}}" + networkId: "{{ network_id }}" register: result - - # - name: Enable Vlans on the MX - # cisco.meraki.networks_appliance_vlans_settings: - # state: present - # networkId: "{{network_id}}" - # vlansEnabled: true - - name: Update appliance Vlans cisco.meraki.networks_appliance_vlans: state: present applianceIp: 192.168.1.2 cidr: 192.168.1.0/24 - id: '1234' + id: "1234" name: My VLAN - networkId: "{{network_id}}" + networkId: "{{ network_id }}" subnet: 192.168.1.0/24 - - name: Update appliance SSID cisco.meraki.networks_appliance_ssids: - meraki_suppress_logging: false - state: present - authMode: 8021x-radius - defaultVlanId: 10 - enabled: true - name: My SSID - networkId: "{{network_id}}" - number: 1234 - radiusServers: - - host: 1.2.3.4 - port: 1000 - secret: secret - visible: true - wpaEncryptionMode: WPA2 only - + meraki_suppress_logging: false + state: present + authMode: 8021x-radius + defaultVlanId: 10 + enabled: true + name: My SSID + networkId: "{{ network_id }}" + number: 1234 + radiusServers: + - host: 1.2.3.4 + port: 1000 + secret: secret + visible: true + wpaEncryptionMode: WPA2 only - name: Update appliance traffic shaping cisco.meraki.networks_appliance_traffic_shaping: state: present globalBandwidthLimits: limitDown: 5120 limitUp: 2048 - networkId: "{{network_id}}" - + networkId: "{{ network_id }}" - name: Update appliance ports cisco.meraki.networks_appliance_ports: - allowedVlans: "all" + allowedVlans: all enabled: true - networkId: "{{network_id}}" + networkId: "{{ network_id }}" portId: "4" - type: "trunk" + type: trunk vlan: 10 state: present - - name: Create FW outbound L3 rules cisco.meraki.networks_appliance_firewall_l3_firewall_rules: - networkId: "{{network_id}}" + networkId: "{{ network_id }}" state: present rules: - comment: Block internetbadguys.com @@ -73,35 +61,31 @@ protocol: any srcCidr: any syslogEnabled: false - - name: Create FW inbound L3 rules cisco.meraki.networks_appliance_firewall_inbound_firewall_rules: - networkId: "{{network_id}}" + networkId: "{{ network_id }}" rules: - - comment: Allow HTTP traffic to VLAN 1234 with HTTP servers. - destCidr: VLAN(1234).* - destPort: '80' - policy: allow - protocol: tcp - srcCidr: Any - srcPort: Any - syslogEnabled: false - + - comment: Allow HTTP traffic to VLAN 1234 with HTTP servers. + destCidr: VLAN(1234).* + destPort: "80" + policy: allow + protocol: tcp + srcCidr: Any + srcPort: Any + syslogEnabled: false - name: Create FW L7 rules cisco.meraki.networks_appliance_firewall_l7_firewall_rules: - networkId: "{{network_id}}" + networkId: "{{ network_id }}" rules: - - policy: deny - type: applicationCategory - value: - name: Sports - id: meraki:layer7/category/5 - + - policy: deny + type: applicationCategory + value: + name: Sports + id: meraki:layer7/category/5 - name: Get all networks _appliance _firewall l3firewallrules cisco.meraki.networks_appliance_firewall_l3_firewall_rules_info: - networkId: "{{network_id}}" + networkId: "{{ network_id }}" register: result - - name: Show result ansible.builtin.debug: msg: "{{ result }}" diff --git a/playbooks/network_devices_claim.yml b/playbooks/network_devices_claim.yml index 757a0a20d..eac378d53 100644 --- a/playbooks/network_devices_claim.yml +++ b/playbooks/network_devices_claim.yml @@ -1,11 +1,12 @@ -- hosts: localhost +- name: Play Name + hosts: localhost vars: - network_id: "L_828099381482771185" # Branch-1234 + network_id: L_828099381482771185 gather_facts: false tasks: - name: Create cisco.meraki.networks_devices_claim: meraki_output_log: true - networkId: "{{network_id}}" + networkId: "{{ network_id }}" serials: - - QBSD-WABS-BH7V \ No newline at end of file + - QBSD-WABS-BH7V diff --git a/playbooks/networks.yml b/playbooks/networks.yml index 8cf0077f8..5aa47c928 100644 --- a/playbooks/networks.yml +++ b/playbooks/networks.yml @@ -1,68 +1,17 @@ ---- -# - hosts: localhost -# gather_facts: false -# tasks: -# - name: Get all networks -# cisco.meraki.networks_info: -# # configTemplateId: string -# # isBoundToConfigTemplate: True -# # tags: [] -# # tagsFilterType: string -# # perPage: 0 -# # startingAfter: string -# # endingBefore: string -# organizationId: "828099381482762270" -# register: result -# - name: Get all networks2 -# cisco.meraki.networks_clients_info: -# # configTemplateId: string -# # isBoundToConfigTemplate: True -# # tags: [] -# # tagsFilterType: string -# # perPage: 0 -# # startingAfter: string -# # endingBefore: string -# # organizationId: "828099381482762270" -# networkId: "{{item.id}}" -# loop: "{{result.meraki_response}}" -# register: result2 - -# - name: Show result -# ansible.builtin.debug: -# msg: "{{ result2 }}" - - - # - name: Create - # cisco.meraki.networks: - # meraki_suppress_logging: true - # state: present - # # copyFromNetworkId: N_24329156 - # name: Site 1 - # notes: Additional description of the network 212 - # organizationId: "828099381482762270" - # productTypes: - # - camera - # - switch - # - wireless - # tags: - # - tag1 - # - tag3 - # timeZone: America/Los_Angeles - -- hosts: localhost +- name: Play Name + hosts: localhost vars: - org_id: 828099381482762270 + org_id: 828099381482762270 gather_facts: false tasks: - - - name: Createa a new network - cisco.meraki.networks: - meraki_suppress_logging: false - state: present - name: New network by Ansible - notes: Additional description of the network - organizationId: "{{ org_id }}" - productTypes: - - appliance - - switch - timeZone: America/Los_Angeles \ No newline at end of file + - name: Createa a new network + cisco.meraki.networks: + meraki_suppress_logging: false + state: present + name: New network by Ansible + notes: Additional description of the network + organizationId: "{{ org_id }}" + productTypes: + - appliance + - switch + timeZone: America/Los_Angeles diff --git a/playbooks/networks_appliance_vlans.yml b/playbooks/networks_appliance_vlans.yml index 2b45e3d65..297d0a7f0 100644 --- a/playbooks/networks_appliance_vlans.yml +++ b/playbooks/networks_appliance_vlans.yml @@ -1,5 +1,5 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create @@ -8,22 +8,22 @@ state: present applianceIp: 192.168.1.2 cidr: 192.168.1.0/24 - groupPolicyId: '101' - id: '1234' + groupPolicyId: "101" + id: "1234" ipv6: enabled: true prefixAssignments: - - autonomous: false - origin: - interfaces: - - wan0 - type: internet - staticApplianceIp6: 2001:db8:3c4d:15::1 - staticPrefix: 2001:db8:3c4d:15::/64 + - autonomous: false + origin: + interfaces: + - wan0 + type: internet + staticApplianceIp6: 2001:db8:3c4d:15::1 + staticPrefix: 2001:db8:3c4d:15::/64 mandatoryDhcp: enabled: true mask: 28 name: My VLAN networkId: L_828099381482770865 subnet: 192.168.1.0/24 - templateVlanType: same \ No newline at end of file + templateVlanType: same diff --git a/playbooks/networks_devices_remove.yml b/playbooks/networks_devices_remove.yml index 5fef8d71a..6db13b2ee 100644 --- a/playbooks/networks_devices_remove.yml +++ b/playbooks/networks_devices_remove.yml @@ -1,9 +1,10 @@ -- hosts: localhost +- name: Play Name + hosts: localhost vars: - network_id: "L_828099381482771185" # Branch-1234 + network_id: L_828099381482771185 gather_facts: false tasks: - name: Create cisco.meraki.networks_devices_remove: networkId: L_828099381482771185 - serial: QBSD-WABS-BH7V \ No newline at end of file + serial: QBSD-WABS-BH7V diff --git a/playbooks/networks_wireless_ssids_identityPsks.yml b/playbooks/networks_wireless_ssids_identityPsks.yml index 014aa7a8c..739ea304b 100644 --- a/playbooks/networks_wireless_ssids_identityPsks.yml +++ b/playbooks/networks_wireless_ssids_identityPsks.yml @@ -1,15 +1,13 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create cisco.meraki.networks_wireless_ssids_identity_psks: meraki_suppress_logging: true state: present - expiresAt: '2018-02-11T00:00:00.090209Z' - groupPolicyId: '101' - # identityPskId: '1284392014819' + expiresAt: "2018-02-11T00:00:00.090209Z" + groupPolicyId: "101" name: Sample Identity PSK networkId: L_828099381482771185 number: 1 - # passphrase: secrethguygyu diff --git a/playbooks/old_collection_test.yml b/playbooks/old_collection_test.yml deleted file mode 100644 index aa72eea43..000000000 --- a/playbooks/old_collection_test.yml +++ /dev/null @@ -1,40 +0,0 @@ -- name: Configure Switchports with async API - hosts: localhost - connection: local - vars: - sn: Q3EA-239B-ZQV7 - auth_key: - org_name: Test Ansible - switchports: - - name: WAN Trunk1 - type: trunk - allowedVlans: "1,2,19,20,50" - - collections: - - cisco.meraki - tasks: - - - name: Configure switchports - meraki_ms_switchport: - auth_key: "{{ auth_key }}" - org_name: "{{ org_name }}" - serial: "{{ sn }}" - number: "{{ ansible_loop.index }}" - name: "{{ item.name }}" - type: "{{ item.type }}" - enabled: "{{ item.enabled | default(omit) }}" - vlan: "{{ item.vlan | default(omit) }}" - allowed_vlans: "{{ omit if item.allowedVlans is undefined else item.allowedVlans.split(',')}}" - voice_vlan: "{{ item.voiceVlan | default(omit) }}" - access_policy_type: "{{ item.accessPolicyType | default(omit) }}" - access_policy_number: "{{ item.accessPolicyNumber | default(omit) }}" - state: present - loop: "{{ switchports }}" - loop_control: - extended: yes - label: "{{ item.name }}" - pause: 0.3 - register: async_results - # async: 120 - # poll: 0 - tags: [always] \ No newline at end of file diff --git a/playbooks/organization.yml b/playbooks/organization.yml index dddda64ed..714c7423b 100644 --- a/playbooks/organization.yml +++ b/playbooks/organization.yml @@ -1,21 +1,15 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create cisco.meraki.organizations: meraki_suppress_logging: true - # meraki_username: "{{meraki_username}}" - # meraki_password: "{{meraki_password}}" - # meraki_verify: "{{meraki_verify}}" - # meraki_port: "{{meraki_port}}" - # meraki_version: "{{meraki_version}}" - # meraki_debug: "{{meraki_debug}}" state: present management: details: - - name: MSP ID - value: '1234567' + - name: MSP ID + value: "1234567" name: Test Ansible api: - enabled: True + enabled: true diff --git a/playbooks/organization_info.yml b/playbooks/organization_info.yml index 79a1cbcb9..ee4157d42 100644 --- a/playbooks/organization_info.yml +++ b/playbooks/organization_info.yml @@ -1,20 +1,12 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Get all Organizations cisco.meraki.organizations_info: meraki_suppress_logging: false - # meraki_username: "{{meraki_username}}" - # meraki_password: "{{meraki_password}}" - # meraki_verify: "{{meraki_verify}}" - # meraki_port: "{{meraki_port}}" - # meraki_version: "{{meraki_version}}" - # meraki_debug: "{{meraki_debug}}" - # headers: "{{my_headers | from_json}}" organizationId: "828099381482762766" register: result - - name: Show result ansible.builtin.debug: msg: "{{ result }}" diff --git a/playbooks/organization_summary.yml b/playbooks/organization_summary.yml index 94893b68a..047558be8 100644 --- a/playbooks/organization_summary.yml +++ b/playbooks/organization_summary.yml @@ -1,70 +1,55 @@ ---- - -- hosts: localhost +- name: Play Name + hosts: localhost vars: org_id: "828099381482762270" gather_facts: false tasks: - - - name: Get all organizations summary top appliances by utilization - cisco.meraki.organizations_summary_top_appliances_by_utilization_info: - organizationId: "{{ org_id }}" - register: result - - - name: Show result - ansible.builtin.debug: - msg: "{{ result }}" - - - name: Get all organizations summary top clients by usage - cisco.meraki.organizations_summary_top_clients_by_usage_info: - organizationId: "{{ org_id }}" - register: result - - - name: Show result - ansible.builtin.debug: - msg: "{{ result }}" - - - name: Get all organizations summary top clients by manufacturers - cisco.meraki.organizations_summary_top_clients_manufacturers_by_usage_info: - organizationId: "{{ org_id }}" - register: result - - - name: Show result - ansible.builtin.debug: - msg: "{{ result }}" - - - name: Get all organizations summary top devices by usage - cisco.meraki.organizations_summary_top_devices_by_usage_info: - organizationId: "{{ org_id }}" - register: result - - - name: Show result - ansible.builtin.debug: - msg: "{{ result }}" - - - name: Get all organizations summary top devices by models - cisco.meraki.organizations_summary_top_devices_models_by_usage_info: - organizationId: "{{ org_id }}" - register: result - - - name: Show result - ansible.builtin.debug: - msg: "{{ result }}" - - - name: Get all organizations summary top SSIDs by usage - cisco.meraki.organizations_summary_top_ssids_by_usage_info: - organizationId: "{{ org_id }}" - register: result - - - name: Show result - ansible.builtin.debug: - msg: "{{ result }}" - - - name: Get all organizations summary top switches by energy usage - cisco.meraki.organizations_summary_top_switches_by_energy_usage_info: - organizationId: "{{ org_id }}" - register: result - - - name: Show result - ansible.builtin.debug: - msg: "{{ result }}" + - name: Get all organizations summary top appliances by utilization + cisco.meraki.organizations_summary_top_appliances_by_utilization_info: + organizationId: "{{ org_id }}" + register: result + - name: Show result + ansible.builtin.debug: + msg: "{{ result }}" + - name: Get all organizations summary top clients by usage + cisco.meraki.organizations_summary_top_clients_by_usage_info: + organizationId: "{{ org_id }}" + register: result + - name: Show result + ansible.builtin.debug: + msg: "{{ result }}" + - name: Get all organizations summary top clients by manufacturers + cisco.meraki.organizations_summary_top_clients_manufacturers_by_usage_info: + organizationId: "{{ org_id }}" + register: result + - name: Show result + ansible.builtin.debug: + msg: "{{ result }}" + - name: Get all organizations summary top devices by usage + cisco.meraki.organizations_summary_top_devices_by_usage_info: + organizationId: "{{ org_id }}" + register: result + - name: Show result + ansible.builtin.debug: + msg: "{{ result }}" + - name: Get all organizations summary top devices by models + cisco.meraki.organizations_summary_top_devices_models_by_usage_info: + organizationId: "{{ org_id }}" + register: result + - name: Show result + ansible.builtin.debug: + msg: "{{ result }}" + - name: Get all organizations summary top SSIDs by usage + cisco.meraki.organizations_summary_top_ssids_by_usage_info: + organizationId: "{{ org_id }}" + register: result + - name: Show result + ansible.builtin.debug: + msg: "{{ result }}" + - name: Get all organizations summary top switches by energy usage + cisco.meraki.organizations_summary_top_switches_by_energy_usage_info: + organizationId: "{{ org_id }}" + register: result + - name: Show result + ansible.builtin.debug: + msg: "{{ result }}" diff --git a/playbooks/organizations_adaptivePolicy_acls.yml b/playbooks/organizations_adaptivePolicy_acls.yml index e76e33c1d..ae98ac10f 100644 --- a/playbooks/organizations_adaptivePolicy_acls.yml +++ b/playbooks/organizations_adaptivePolicy_acls.yml @@ -1,5 +1,5 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create @@ -11,7 +11,7 @@ name: Block sensitive web traffic organizationId: "828099381482762270" rules: - - dstPort: 22-30 - policy: deny - protocol: tcp - srcPort: 1,33 + - dstPort: 22-30 + policy: deny + protocol: tcp + srcPort: 1,33 diff --git a/playbooks/organizations_adaptive_policy_groups.yml b/playbooks/organizations_adaptive_policy_groups.yml index 39abc8dbb..3851dfbed 100644 --- a/playbooks/organizations_adaptive_policy_groups.yml +++ b/playbooks/organizations_adaptive_policy_groups.yml @@ -1,17 +1,11 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create cisco.meraki.organizations_adaptive_policy_groups: meraki_suppress_logging: true state: present - # description: Group of XYZ Corp Employees - # isDefaultGroup: false name: Employee Group organizationId: "828099381482762270" - # policyObjects: - # - id: '2345' - # name: Example Policy Object - # requiredIpMappings: [] - sgt: 10005 \ No newline at end of file + sgt: 10005 diff --git a/playbooks/organizations_admin copy.yml b/playbooks/organizations_admin copy.yml index 3a720877e..0b71279ff 100644 --- a/playbooks/organizations_admin copy.yml +++ b/playbooks/organizations_admin copy.yml @@ -1,5 +1,5 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost vars_files: - credentials.yml gather_facts: false @@ -15,14 +15,8 @@ lng: 8 center: lat: 7 - lng: 1 + lng: 1 floorPlanId: string imageContents: Q2lzY28gTWVyYWtp.png name: Test networkId: L_828099381482770942 - # topLeftCorner: - # lat: 0 - # lng: 0 - # topRightCorner: - # lat: 0 - # lng: 0 \ No newline at end of file diff --git a/playbooks/organizations_admin.yml b/playbooks/organizations_admin.yml index 110620ce0..7a745b840 100644 --- a/playbooks/organizations_admin.yml +++ b/playbooks/organizations_admin.yml @@ -1,11 +1,10 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create cisco.meraki.organizations_admins: meraki_suppress_logging: true - # state: present name: DevNet Admin 345 email: devnetmerakiadmin23@yopmail.com @@ -14,19 +13,3 @@ networks: [] tags: [] organizationId: "828099381482762270" - - # - name: Create - # cisco.meraki.organizations_admins: - # meraki_host: "{{meraki_host}}" - # state: present - # authenticationMethod: Email - # email: miles@meraki.com - # name: Miles Meraki - # networks: - # - access: full - # id: N_24329156 - # orgAccess: none - # organizationId: string - # tags: - # - access: read-only - # tag: west \ No newline at end of file diff --git a/playbooks/organizations_admin_info.yml b/playbooks/organizations_admin_info.yml index aa4b46896..87dee4af7 100644 --- a/playbooks/organizations_admin_info.yml +++ b/playbooks/organizations_admin_info.yml @@ -1,5 +1,5 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Get all Organizations Admins @@ -7,7 +7,6 @@ meraki_suppress_logging: true organizationId: "828099381482762270" register: result - - name: Show result ansible.builtin.debug: msg: "{{ result }}" diff --git a/playbooks/organizations_camera_custom_analytics_artifacts.yml b/playbooks/organizations_camera_custom_analytics_artifacts.yml index 8a4b063f5..4ff09eadb 100644 --- a/playbooks/organizations_camera_custom_analytics_artifacts.yml +++ b/playbooks/organizations_camera_custom_analytics_artifacts.yml @@ -1,5 +1,5 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create @@ -9,10 +9,3 @@ name: Test Ansible 2 organizationId: "828099381482762270" artifactId: "828099381482750058" - # - name: Delete - # cisco.meraki.organizations_camera_custom_analytics_artifacts: - # meraki_api_key: "{{meraki_api_key}}" - # state: absent - # name: Test Ansible - # organizationId: "828099381482762270" - # artifactId: "828099381482750043" diff --git a/playbooks/organizations_clients_search_info.yml b/playbooks/organizations_clients_search_info.yml index b4e566166..cc549f389 100644 --- a/playbooks/organizations_clients_search_info.yml +++ b/playbooks/organizations_clients_search_info.yml @@ -1,14 +1,12 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Get all organizations _clients _search cisco.meraki.organizations_clients_search_info: meraki_suppress_logging: true - mac: "4c:c8:a1:01:01:c2" + mac: 4c:c8:a1:01:01:c2 perPage: 3 total_pages: -1 - # startingAfter: string - # endingBefore: string organizationId: "828099381482762270" - register: result \ No newline at end of file + register: result diff --git a/playbooks/organizations_config_templates.yml b/playbooks/organizations_config_templates.yml index 775145b10..b9dd69f7e 100644 --- a/playbooks/organizations_config_templates.yml +++ b/playbooks/organizations_config_templates.yml @@ -1,30 +1,11 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create cisco.meraki.organizations_config_templates: meraki_suppress_logging: true state: present - name: "My config template" + name: My config template organizationId: "828099381482762270" - timeZone: "America/Los_Angeles" - - # - name: Update by id - # cisco.meraki.organizations_config_templates: - # meraki_suppress_logging: true - # state: present - # configTemplateId: string - # name: My config template - # organizationId: "828099381482762270" - # timeZone: America/Los_Angeles - - # - name: Delete by id - # cisco.meraki.organizations_config_templates: - # meraki_suppress_logging: true - # - # meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - # meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" - # state: absent - # configTemplateId: "L_828099381482770921" - # organizationId: "828099381482762270" + timeZone: America/Los_Angeles diff --git a/playbooks/organizations_config_templates_info.yml b/playbooks/organizations_config_templates_info.yml index e0dbe1ce8..a33896f89 100644 --- a/playbooks/organizations_config_templates_info.yml +++ b/playbooks/organizations_config_templates_info.yml @@ -1,9 +1,9 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Get all organizations _configtemplates cisco.meraki.organizations_config_templates_info: meraki_suppress_logging: true organizationId: "828099381482762270" - register: result \ No newline at end of file + register: result diff --git a/playbooks/organizations_devices_info.yml b/playbooks/organizations_devices_info.yml index c5da1af5c..18b4deea0 100644 --- a/playbooks/organizations_devices_info.yml +++ b/playbooks/organizations_devices_info.yml @@ -1,5 +1,5 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Get all organizations _devices @@ -7,21 +7,7 @@ meraki_suppress_logging: true perPage: 3 total_pages: -1 - # startingAfter: string - # endingBefore: string - # configurationUpdatedAfter: string - # networkIds: [] - # productTypes: [] - # tags: [] - # tagsFilterType: string - # name: string - # mac: string - # serial: string - # model: string - # macs: [] - # serials: [] - # sensorMetrics: [] - # sensorAlertProfileIds: [] - models: ["MV12N"] + models: + - MV12N organizationId: "828099381482762270" - register: result \ No newline at end of file + register: result diff --git a/playbooks/organizations_login_security.yml b/playbooks/organizations_login_security.yml index 4b211dc8d..2474f63b5 100644 --- a/playbooks/organizations_login_security.yml +++ b/playbooks/organizations_login_security.yml @@ -1,25 +1,21 @@ -- hosts: localhost +- name: Play Name + hosts: localhost vars: - vars: - org_id: 828099381482762270 # API TEST + org_id: 828099381482762270 gather_facts: false tasks: - - - name: Get security login settings - cisco.meraki.organizations_login_security_info: - organizationId: "{{ org_id }}" - register: - result - - - name: Show result - ansible.builtin.debug: - msg: "{{ result }}" - - - name: Update security login settings - cisco.meraki.organizations_login_security: - meraki_suppress_logging: false - organizationId: "{{ org_id }}" - state: present - accountLockoutAttempts: 3 - enforceIdleTimeout: true - enforceTwoFactorAuth: true \ No newline at end of file + - name: Get security login settings + cisco.meraki.organizations_login_security_info: + organizationId: "{{ org_id }}" + register: result + - name: Show result + ansible.builtin.debug: + msg: "{{ result }}" + - name: Update security login settings + cisco.meraki.organizations_login_security: + meraki_suppress_logging: false + organizationId: "{{ org_id }}" + state: present + accountLockoutAttempts: 3 + enforceIdleTimeout: true + enforceTwoFactorAuth: true diff --git a/playbooks/organizations_saml_idps.yml b/playbooks/organizations_saml_idps.yml index d56cfc090..94407c8ae 100644 --- a/playbooks/organizations_saml_idps.yml +++ b/playbooks/organizations_saml_idps.yml @@ -1,5 +1,5 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - name: Create diff --git a/playbooks/switch_port_config.yml b/playbooks/switch_port_config.yml index 00c43be09..486440e8a 100644 --- a/playbooks/switch_port_config.yml +++ b/playbooks/switch_port_config.yml @@ -1,11 +1,11 @@ ---- -- hosts: localhost +- name: Play Name + hosts: localhost gather_facts: false tasks: - - name: update ports + - name: Update ports cisco.meraki.devices_switch_ports: meraki_suppress_logging: true state: present - serial: "QBSB-D8ED-9NXT" + serial: QBSB-D8ED-9NXT vlan: 10 - portId: 1 \ No newline at end of file + portId: 1 diff --git a/playbooks/test.yml b/playbooks/test.yml index 3fafbf2b5..54b4569e7 100644 --- a/playbooks/test.yml +++ b/playbooks/test.yml @@ -1,265 +1,16 @@ ---- - -- hosts: localhost +- name: Play Name + hosts: localhost vars: - network_id: "L_828099381482771185" # Branch-1234 + network_id: L_828099381482771185 org_id: "828099381482762270" gather_facts: false tasks: - - # - name: Get all networks _appliance _ports - # cisco.meraki.networks_appliance_ports_info: - # networkId: L_828099381482771185 - # register: result - # - name: update port - # cisco.meraki.devices_switch_ports: - # meraki_suppress_logging: false - # serial: QBSB-BNH2-KDXJ - # portId: 3 - # vlan: 50 - # # type: access - # state: present - # poeEnabled: false - # - name: Update appliance Vlans - # cisco.meraki.networks_appliance_vlans: - # state: present - # applianceIp: 192.168.1.2 - # cidr: 192.168.1.0/24 - # id: '1234' - # name: My VLAN - # networkId: "{{network_id}}" - # subnet: 192.168.1.0/24 - - # - name: Get all networks _appliance _ssids - # cisco.meraki.networks_appliance_ssids_info: - # networkId: "{{network_id}}" - # register: result - - # - name: Show result - # ansible.builtin.debug: - # msg: "{{ result }}" - - # - name: Update appliance SSID - # cisco.meraki.networks_appliance_ssids: - # state: present - # authMode: 8021x-radius - # defaultVlanId: 10 - # enabled: true - # name: My SSID - # networkId: "{{network_id}}" - # number: 1 - # radiusServers: - # - host: 1.2.3.4 - # port: 1000 - # secret: secret - # visible: true - # wpaEncryptionMode: WPA2 only - - -# ################################################################ - - # - name: Update appliance traffic sharping - # cisco.meraki.networks_appliance_traffic_shaping: - # state: present - # globalBandwidthLimits: - # limitDown: 5120 - # limitUp: 2048 - # networkId: "{{network_id}}" - - # - name: Enable Vlans on the MX - # cisco.meraki.networks_appliance_vlans_settings: - # state: present - # networkId: "{{network_id}}" - # vlansEnabled: true - - # - name: Update appliance ports - # cisco.meraki.networks_appliance_ports: - # accessPolicy: "open" - # allowedVlans: "all" - # enabled: true - # networkId: "{{network_id}}" - # portId: "2" - # type: "trunk" - # vlan: 10 - # state: present - # - name: Get all networks - # cisco.meraki.networks_info: - # organizationId: "{{org_id}}" - # total_pages: -1 - # direction: next - # register: result - - # - name: Show result - # ansible.builtin.debug: - # msg: "{{ result.meraki_response[0].id }}" - - # - name: Bind a template from a network - # meraki_config_template: - # auth_key: "{{ meraki_api_key }}" - # state: present - # org_id: "{{ org_name }}" - # net_id: "{{ off_network.results.0.meraki_response.id }}" - # config_template: "{{ item.value.template_name }}" - # delegate_to: localhost - # loop: "{{ lookup('dict', devices) }}" - - - # - name: Create - # cisco.meraki.organizations_config_templates: - # # meraki_api_key: "{{meraki_api_key}}" - # state: present - # name: My config template - # organizationId: "{{ org_id }}" - # register: result - - # - name: Create - # cisco.meraki.networks_bind: - # autoBind: false - # configTemplateId: "{{result.meraki_response.id}}" - # networkId: "{{network_id}}" - - - # - name: change name of device - # cisco.meraki.devices: - # name: new name 4 - # serial: QBSB-D5ZD-9CXT - # # organizationId: "{{org_id}}" - # state: present - # meraki_suppress_logging: false - - # - name: onboard order - # cisco.meraki.organizations_inventory_claim: - # # meraki_api_key: "{{ meraki_api }}" - # # meraki_simulate: "{{ testpolicy }}" - # organizationId: "{{ org_id }}" - # orders: "1" - - - # - name: Enable Vlans on the MX - # cisco.meraki.networks_appliance_vlans_settings: - # state: present - # networkId: "{{network_id}}" - # vlansEnabled: true - - # - name: Create appliance Vlan 100 - # cisco.meraki.networks_appliance_vlans: - # state: present - # applianceIp: 192.168.1.2 - # cidr: 192.168.1.0/24 - # id: '100' - # name: My VLAN - # networkId: "{{network_id}}" - # subnet: 192.168.1.0/24 - - # - name: Create appliance Vlan 200 - # cisco.meraki.networks_appliance_vlans: - # state: present - # applianceIp: 192.168.2.2 - # cidr: 192.168.2.0/24 - # id: '200' - # name: My VLAN - # networkId: "{{network_id}}" - # subnet: 192.168.2.0/24 - - # - name: Create appliance Vlan 300 - # cisco.meraki.networks_appliance_vlans: - # state: present - # applianceIp: 192.168.3.2 - # cidr: 192.168.3.0/24 - # id: '300' - # name: My VLAN - # networkId: "{{network_id}}" - # subnet: 192.168.3.0/24 - - - # - name: Enable Vlans on the MX - # cisco.meraki.networks_appliance_vlans_settings: - # state: present - # networkId: "{{network_id}}" - # vlansEnabled: true - - # - name: Create appliance Vlan 100 - # cisco.meraki.networks_appliance_vlans: - # state: present - # meraki_suppress_logging: false - # applianceIp: 10.1.0.2 - # cidr: 10.1.0.0/17 - # id: '100' - # name: My VLAN - # networkId: "{{network_id}}" - # subnet: 10.1.0.0/17 - - # - name: Create appliance Vlan 200 - # cisco.meraki.networks_appliance_vlans: - # state: present - # meraki_suppress_logging: false - # applianceIp: 172.200.0.2 - # cidr: 172.200.0.0/20 - # id: '200' - # name: My VLAN - # networkId: "{{network_id}}" - # subnet: 172.200.0.0/20 - - # - name: Create appliance Vlan 300 - # cisco.meraki.networks_appliance_vlans: - # state: present - # meraki_suppress_logging: false - # applianceIp: 172.16.0.2 - # cidr: 172.16.0.0/24 - # id: 300 - # name: My VLAN 2 - # networkId: "{{network_id}}" - # subnet: 172.16.0.0/24 - - - # - name: Get all organizations _appliance _vpn _thirdpartyvpnpeers - # cisco.meraki.organizations_appliance_vpn_third_party_vpnpeers_info: - # meraki_suppress_logging: false - # organizationId: "828099381482762270" - # register: result - - # - name: Show result - # ansible.builtin.debug: - # msg: "{{ result }}" - - - # - name: Get all networks _appliance _trafficshaping _customperformanceclasses - # cisco.meraki.networks_appliance_traffic_shaping_custom_performance_classes_info: - # networkId: L_828099381482771185 - # register: result - - # - name: Show result - # ansible.builtin.debug: - # msg: "{{ result }}" - - # - name: Create - # cisco.meraki.networks_switch_stacks: - # state: present - # meraki_suppress_logging: false - # name: A cool stack - # networkId: "{{network_id}}" - # serials: - # - QBSB-BNH2-KDXJ - - - name: Get all networks _clients - cisco.meraki.networks_clients_info: - # t0: string - meraki_suppress_logging: false - timespan: 1 - perPage: 3 - # startingAfter: string - # endingBefore: string - # statuses: [] - # ip: string - # ip6: string - # ip6Local: string - # mac: string - # os: string - # pskGroup: string - # description: string - # vlan: string - # recentDeviceConnections: [] - networkId: L_828099381482771185 - total_pages: -1 - direction: next - register: result \ No newline at end of file + - name: Get all networks _clients + cisco.meraki.networks_clients_info: + meraki_suppress_logging: false + timespan: 1 + perPage: 3 + networkId: L_828099381482771185 + total_pages: -1 + direction: next + register: result diff --git a/playbooks/who_am_i.yml b/playbooks/who_am_i.yml index c6f5acb30..347fc5d00 100644 --- a/playbooks/who_am_i.yml +++ b/playbooks/who_am_i.yml @@ -1,11 +1,10 @@ ---- -- hosts: meraki_servers +- name: Play Name + hosts: meraki_servers gather_facts: false tasks: - name: Get my administered identities - cisco.meraki.administered_identities_me_info: + cisco.meraki.administered_identities_me_info: null register: result - - name: Show result ansible.builtin.debug: msg: "{{ result }}" diff --git a/playbooks/wifi_deploy_one.yml b/playbooks/wifi_deploy_one.yml index 4047c9085..fd99bcc7e 100644 --- a/playbooks/wifi_deploy_one.yml +++ b/playbooks/wifi_deploy_one.yml @@ -1,18 +1,16 @@ ---- - -- hosts: localhost +- name: Play Name + hosts: localhost vars: org_id: "828099381482762270" - corp_name: "ACME" - network_id: "L_828099381482770865" + corp_name: ACME + network_id: L_828099381482770865 gather_facts: false tasks: - - name: Create corporate SSID cisco.meraki.networks_wireless_ssids: meraki_suppress_logging: true state: present enabled: true - name: "{{corp_name}}" + name: "{{ corp_name }}" networkId: "{{ network_id }}" number: "1" diff --git a/playbooks/wifi_deployment.yml b/playbooks/wifi_deployment.yml index 80314a1c1..6cb6c1f02 100644 --- a/playbooks/wifi_deployment.yml +++ b/playbooks/wifi_deployment.yml @@ -1,53 +1,45 @@ ---- -# This playbook will create 3 WiFi networks across all networks in a given Meraki organization: -# 1. Corporate (802.1x) on vlan 100 -# 2. Mobile (WPA-PSK) on vlan 200 -# 3. Guests (Portal) on vlan 300 - -- hosts: localhost +- name: Play Name + hosts: localhost vars_files: - credentials.yml vars: org_id: "828099381482762270" - corp_name: "Umbrella Corp" + corp_name: Umbrella Corp gather_facts: false tasks: - - name: Get Organization Networks cisco.meraki.networks_info: organizationId: "{{ org_id }}" register: result - - name: Filter networks with "wireless" productTypes - set_fact: - filtered_networks: "{{ result.meraki_response | selectattr('productTypes', 'contains', 'wireless') | list }}" - + ansible.builtin.set_fact: + filtered_networks: + "{{ result.meraki_response | selectattr('productTypes', + 'contains', 'wireless') | list }}" - name: Create corporate SSID cisco.meraki.networks_wireless_ssids: state: present enabled: true - name: "{{corp_name}}" + name: "{{ corp_name }}" networkId: "{{ item.id }}" number: 1 ipAssignmentMode: Bridge mode defaultVlanId: 100 useVlanTagging: true - authMode: "8021x-radius" - radiusServers: - - one: - host: "1.2.3.4" + authMode: 8021x-radius + radiusServers: + - one: null + host: 1.2.3.4 port: 1812 secret: SuperSecretPassword - loop: "{{ filtered_networks }}" loop_control: label: "{{ item.id }}" - - name: Create Mobile/PSK SSID cisco.meraki.networks_wireless_ssids: state: present enabled: true - name: "{{corp_name}}-legacy" + name: "{{ corp_name }}-legacy" networkId: "{{ item.id }}" number: 2 ipAssignmentMode: Bridge mode @@ -56,24 +48,21 @@ authMode: psk encryptionMode: wpa psk: SuperSecretPreSharedKey - loop: "{{ filtered_networks }}" loop_control: label: "{{ item.id }}" - - name: Create Guest SSID cisco.meraki.networks_wireless_ssids: state: present enabled: true - name: "{{corp_name}}-Guests" + name: "{{ corp_name }}-Guests" networkId: "{{ item.id }}" number: 3 ipAssignmentMode: Bridge mode defaultVlanId: 300 useVlanTagging: true - authMode: "open" + authMode: open splashPage: Click-through splash page - loop: "{{ filtered_networks }}" loop_control: label: "{{ item.id }}" diff --git a/plugins/doc_fragments/meraki.py b/plugins/doc_fragments/meraki.py index d6d456f19..38178f2f5 100644 --- a/plugins/doc_fragments/meraki.py +++ b/plugins/doc_fragments/meraki.py @@ -22,7 +22,7 @@ class ModuleDocFragment(object): description: - Authentication key provided by the dashboard. Required if environmental variable C(MERAKI_KEY) is not set. type: str - required: yes + required: true host: description: - Hostname for Meraki dashboard. @@ -33,13 +33,13 @@ class ModuleDocFragment(object): description: - If C(no), it will not use a proxy, even if one is defined in an environment variable on the target hosts. type: bool - default: False + default: false use_https: description: - If C(no), it will use HTTP. Otherwise it will use HTTPS. - Only useful for internal Meraki developers. type: bool - default: yes + default: true output_format: description: - Instructs module whether response keys should be snake case (ex. C(net_id)) or camel case (ex. C(netId)). @@ -61,7 +61,7 @@ class ModuleDocFragment(object): description: - Whether to validate HTTP certificates. type: bool - default: yes + default: true org_name: description: - Name of organization. diff --git a/plugins/modules/administered_identities_me_api_keys_generate.py b/plugins/modules/administered_identities_me_api_keys_generate.py index 80132fea3..35b8e3da3 100644 --- a/plugins/modules/administered_identities_me_api_keys_generate.py +++ b/plugins/modules/administered_identities_me_api_keys_generate.py @@ -5,59 +5,58 @@ # GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt) DOCUMENTATION = r""" ---- -module: administered_identities_me_api_keys_generate -short_description: Resource module for administered _identities _me _api _keys _generate +author: Francisco Munoz (@fmunoz) description: -- Manage operation create of the resource administered _identities _me _api _keys _generate. -- > - Generates an API key for an identity. For users who have access to more than one organization, the change will - take up to five minutes to propagate. If one of the organizations is currently under maintenance, the change may - not propagate fully until after the maintenance has been completed. -version_added: '2.20.0' + - Manage operation create of the resource administered _identities _me _api _keys + _generate. + - 'Generates an API key for an identity. For users who have access to more than + one organization, the change will take up to five minutes to propagate. If one + of the organizations is currently under maintenance, the change may not propagate + fully until after the maintenance has been completed. + + ' extends_documentation_fragment: - cisco.meraki.module -author: Francisco Munoz (@fmunoz) +module: administered_identities_me_api_keys_generate +notes: + - SDK Method used are administered.Administered.generate_administered_identities_me_api_keys, + - Paths used are post /administered/identities/me/api/keys/generate, options: {} requirements: -- meraki >= 2.4.9 -- python >= 3.5 + - meraki >= 2.4.9 + - python >= 3.5 seealso: -- name: Cisco Meraki documentation for administered generateAdministeredIdentitiesMeApiKeys - description: Complete reference of the generateAdministeredIdentitiesMeApiKeys API. - link: https://developer.cisco.com/meraki/api-v1/#!generate-administered-identities-me-api-keys -notes: - - SDK Method used are - administered.Administered.generate_administered_identities_me_api_keys, - - - Paths used are - post /administered/identities/me/api/keys/generate, + - description: Complete reference of the generateAdministeredIdentitiesMeApiKeys + API. + link: https://developer.cisco.com/meraki/api-v1/#!generate-administered-identities-me-api-keys + name: Cisco Meraki documentation for administered generateAdministeredIdentitiesMeApiKeys +short_description: Resource module for administered _identities _me _api _keys _generate +version_added: 2.20.0 """ EXAMPLES = r""" - name: Create cisco.meraki.administered_identities_me_api_keys_generate: - meraki_api_key: "{{meraki_api_key}}" - meraki_base_url: "{{meraki_base_url}}" - meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - meraki_certificate_path: "{{meraki_certificate_path}}" - meraki_requests_proxy: "{{meraki_requests_proxy}}" - meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - meraki_maximum_retries: "{{meraki_maximum_retries}}" - meraki_output_log: "{{meraki_output_log}}" - meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - meraki_log_path: "{{meraki_log_path}}" - meraki_print_console: "{{meraki_print_console}}" - meraki_suppress_logging: "{{meraki_suppress_logging}}" - meraki_simulate: "{{meraki_simulate}}" - meraki_be_geo_id: "{{meraki_be_geo_id}}" - meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" - + meraki_api_key: '{{ meraki_api_key }}' + meraki_base_url: '{{ meraki_base_url }}' + meraki_single_request_timeout: '{{ meraki_single_request_timeout }}' + meraki_certificate_path: '{{ meraki_certificate_path }}' + meraki_requests_proxy: '{{ meraki_requests_proxy }}' + meraki_wait_on_rate_limit: '{{ meraki_wait_on_rate_limit }}' + meraki_nginx_429_retry_wait_time: '{{ meraki_nginx_429_retry_wait_time }}' + meraki_action_batch_retry_wait_time: '{{ meraki_action_batch_retry_wait_time }}' + meraki_retry_4xx_error: '{{ meraki_retry_4xx_error }}' + meraki_retry_4xx_error_wait_time: '{{ meraki_retry_4xx_error_wait_time }}' + meraki_maximum_retries: '{{ meraki_maximum_retries }}' + meraki_output_log: '{{ meraki_output_log }}' + meraki_log_file_prefix: '{{ meraki_log_file_prefix }}' + meraki_log_path: '{{ meraki_log_path }}' + meraki_print_console: '{{ meraki_print_console }}' + meraki_suppress_logging: '{{ meraki_suppress_logging }}' + meraki_simulate: '{{ meraki_simulate }}' + meraki_be_geo_id: '{{ meraki_be_geo_id }}' + meraki_use_iterator_for_get_pages: '{{ meraki_use_iterator_for_get_pages }}' + meraki_inherit_logging_config: '{{ meraki_inherit_logging_config }}' """ RETURN = r""" meraki_response: diff --git a/plugins/modules/administered_identities_me_api_keys_info.py b/plugins/modules/administered_identities_me_api_keys_info.py index 6c4fc2f2c..e1dad46bb 100644 --- a/plugins/modules/administered_identities_me_api_keys_info.py +++ b/plugins/modules/administered_identities_me_api_keys_info.py @@ -5,60 +5,56 @@ # GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt) DOCUMENTATION = r""" ---- -module: administered_identities_me_api_keys_info -short_description: Information module for administered _identities _me _api _keys +author: Francisco Munoz (@fmunoz) description: -- Get all administered _identities _me _api _keys. -- List the non-sensitive metadata associated with the API keys that belong to the user. -version_added: '2.20.0' + - Get all administered _identities _me _api _keys. + - List the non-sensitive metadata associated with the API keys that belong to the + user. extends_documentation_fragment: - cisco.meraki.module_info -author: Francisco Munoz (@fmunoz) +module: administered_identities_me_api_keys_info +notes: + - SDK Method used are administered.Administered.get_administered_identities_me_api_keys, + - Paths used are get /administered/identities/me/api/keys, options: headers: description: Additional headers. type: dict requirements: -- meraki >= 2.4.9 -- python >= 3.5 + - meraki >= 2.4.9 + - python >= 3.5 seealso: -- name: Cisco Meraki documentation for administered getAdministeredIdentitiesMeApiKeys - description: Complete reference of the getAdministeredIdentitiesMeApiKeys API. - link: https://developer.cisco.com/meraki/api-v1/#!get-administered-identities-me-api-keys -notes: - - SDK Method used are - administered.Administered.get_administered_identities_me_api_keys, - - - Paths used are - get /administered/identities/me/api/keys, + - description: Complete reference of the getAdministeredIdentitiesMeApiKeys API. + link: https://developer.cisco.com/meraki/api-v1/#!get-administered-identities-me-api-keys + name: Cisco Meraki documentation for administered getAdministeredIdentitiesMeApiKeys +short_description: Information module for administered _identities _me _api _keys +version_added: 2.20.0 """ EXAMPLES = r""" - name: Get all administered _identities _me _api _keys cisco.meraki.administered_identities_me_api_keys_info: - meraki_api_key: "{{meraki_api_key}}" - meraki_base_url: "{{meraki_base_url}}" - meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - meraki_certificate_path: "{{meraki_certificate_path}}" - meraki_requests_proxy: "{{meraki_requests_proxy}}" - meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - meraki_maximum_retries: "{{meraki_maximum_retries}}" - meraki_output_log: "{{meraki_output_log}}" - meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - meraki_log_path: "{{meraki_log_path}}" - meraki_print_console: "{{meraki_print_console}}" - meraki_suppress_logging: "{{meraki_suppress_logging}}" - meraki_simulate: "{{meraki_simulate}}" - meraki_be_geo_id: "{{meraki_be_geo_id}}" - meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" + meraki_api_key: '{{ meraki_api_key }}' + meraki_base_url: '{{ meraki_base_url }}' + meraki_single_request_timeout: '{{ meraki_single_request_timeout }}' + meraki_certificate_path: '{{ meraki_certificate_path }}' + meraki_requests_proxy: '{{ meraki_requests_proxy }}' + meraki_wait_on_rate_limit: '{{ meraki_wait_on_rate_limit }}' + meraki_nginx_429_retry_wait_time: '{{ meraki_nginx_429_retry_wait_time }}' + meraki_action_batch_retry_wait_time: '{{ meraki_action_batch_retry_wait_time }}' + meraki_retry_4xx_error: '{{ meraki_retry_4xx_error }}' + meraki_retry_4xx_error_wait_time: '{{ meraki_retry_4xx_error_wait_time }}' + meraki_maximum_retries: '{{ meraki_maximum_retries }}' + meraki_output_log: '{{ meraki_output_log }}' + meraki_log_file_prefix: '{{ meraki_log_file_prefix }}' + meraki_log_path: '{{ meraki_log_path }}' + meraki_print_console: '{{ meraki_print_console }}' + meraki_suppress_logging: '{{ meraki_suppress_logging }}' + meraki_simulate: '{{ meraki_simulate }}' + meraki_be_geo_id: '{{ meraki_be_geo_id }}' + meraki_use_iterator_for_get_pages: '{{ meraki_use_iterator_for_get_pages }}' + meraki_inherit_logging_config: '{{ meraki_inherit_logging_config }}' register: result - """ RETURN = r""" meraki_response: diff --git a/plugins/modules/administered_identities_me_api_keys_revoke.py b/plugins/modules/administered_identities_me_api_keys_revoke.py index 586add3ed..bbd01012a 100644 --- a/plugins/modules/administered_identities_me_api_keys_revoke.py +++ b/plugins/modules/administered_identities_me_api_keys_revoke.py @@ -5,63 +5,61 @@ # GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt) DOCUMENTATION = r""" ---- -module: administered_identities_me_api_keys_revoke -short_description: Resource module for administered _identities _me _api _keys _revoke +author: Francisco Munoz (@fmunoz) description: -- Manage operation create of the resource administered _identities _me _api _keys _revoke. -- > - Revokes an identity's API key, using the last four characters of the key. For users who have access to more than - one organization, the change will take up to five minutes to propagate. If one of the organizations is currently - under maintenance, the change may not propagate fully until after the maintenance has been completed. -version_added: '2.20.0' + - Manage operation create of the resource administered _identities _me _api _keys + _revoke. + - 'Revokes an identity''s API key, using the last four characters of the key. For + users who have access to more than one organization, the change will take up to + five minutes to propagate. If one of the organizations is currently under maintenance, + the change may not propagate fully until after the maintenance has been completed. + + ' extends_documentation_fragment: - cisco.meraki.module -author: Francisco Munoz (@fmunoz) +module: administered_identities_me_api_keys_revoke +notes: + - SDK Method used are administered.Administered.revoke_administered_identities_me_api_keys, + - Paths used are post /administered/identities/me/api/keys/{suffix}/revoke, options: suffix: description: Suffix path parameter. type: str requirements: -- meraki >= 2.4.9 -- python >= 3.5 + - meraki >= 2.4.9 + - python >= 3.5 seealso: -- name: Cisco Meraki documentation for administered revokeAdministeredIdentitiesMeApiKeys - description: Complete reference of the revokeAdministeredIdentitiesMeApiKeys API. - link: https://developer.cisco.com/meraki/api-v1/#!revoke-administered-identities-me-api-keys -notes: - - SDK Method used are - administered.Administered.revoke_administered_identities_me_api_keys, - - - Paths used are - post /administered/identities/me/api/keys/{suffix}/revoke, + - description: Complete reference of the revokeAdministeredIdentitiesMeApiKeys API. + link: https://developer.cisco.com/meraki/api-v1/#!revoke-administered-identities-me-api-keys + name: Cisco Meraki documentation for administered revokeAdministeredIdentitiesMeApiKeys +short_description: Resource module for administered _identities _me _api _keys _revoke +version_added: 2.20.0 """ EXAMPLES = r""" - name: Create cisco.meraki.administered_identities_me_api_keys_revoke: - meraki_api_key: "{{meraki_api_key}}" - meraki_base_url: "{{meraki_base_url}}" - meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - meraki_certificate_path: "{{meraki_certificate_path}}" - meraki_requests_proxy: "{{meraki_requests_proxy}}" - meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - meraki_maximum_retries: "{{meraki_maximum_retries}}" - meraki_output_log: "{{meraki_output_log}}" - meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - meraki_log_path: "{{meraki_log_path}}" - meraki_print_console: "{{meraki_print_console}}" - meraki_suppress_logging: "{{meraki_suppress_logging}}" - meraki_simulate: "{{meraki_simulate}}" - meraki_be_geo_id: "{{meraki_be_geo_id}}" - meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" + meraki_api_key: '{{ meraki_api_key }}' + meraki_base_url: '{{ meraki_base_url }}' + meraki_single_request_timeout: '{{ meraki_single_request_timeout }}' + meraki_certificate_path: '{{ meraki_certificate_path }}' + meraki_requests_proxy: '{{ meraki_requests_proxy }}' + meraki_wait_on_rate_limit: '{{ meraki_wait_on_rate_limit }}' + meraki_nginx_429_retry_wait_time: '{{ meraki_nginx_429_retry_wait_time }}' + meraki_action_batch_retry_wait_time: '{{ meraki_action_batch_retry_wait_time }}' + meraki_retry_4xx_error: '{{ meraki_retry_4xx_error }}' + meraki_retry_4xx_error_wait_time: '{{ meraki_retry_4xx_error_wait_time }}' + meraki_maximum_retries: '{{ meraki_maximum_retries }}' + meraki_output_log: '{{ meraki_output_log }}' + meraki_log_file_prefix: '{{ meraki_log_file_prefix }}' + meraki_log_path: '{{ meraki_log_path }}' + meraki_print_console: '{{ meraki_print_console }}' + meraki_suppress_logging: '{{ meraki_suppress_logging }}' + meraki_simulate: '{{ meraki_simulate }}' + meraki_be_geo_id: '{{ meraki_be_geo_id }}' + meraki_use_iterator_for_get_pages: '{{ meraki_use_iterator_for_get_pages }}' + meraki_inherit_logging_config: '{{ meraki_inherit_logging_config }}' suffix: string - """ RETURN = r""" meraki_response: diff --git a/plugins/modules/administered_identities_me_info.py b/plugins/modules/administered_identities_me_info.py index 7f833e0d8..df54d69e8 100644 --- a/plugins/modules/administered_identities_me_info.py +++ b/plugins/modules/administered_identities_me_info.py @@ -5,60 +5,55 @@ # GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt) DOCUMENTATION = r""" ---- -module: administered_identities_me_info -short_description: Information module for administered _identities _me +author: Francisco Munoz (@fmunoz) description: -- Get all administered _identities _me. -- Returns the identity of the current user. -version_added: '2.16.0' + - Get all administered _identities _me. + - Returns the identity of the current user. extends_documentation_fragment: - cisco.meraki.module_info -author: Francisco Munoz (@fmunoz) +module: administered_identities_me_info +notes: + - SDK Method used are administered.Administered.get_administered_identities_me, + - Paths used are get /administered/identities/me, options: headers: description: Additional headers. type: dict requirements: -- meraki >= 2.4.9 -- python >= 3.5 + - meraki >= 2.4.9 + - python >= 3.5 seealso: -- name: Cisco Meraki documentation for administered getAdministeredIdentitiesMe - description: Complete reference of the getAdministeredIdentitiesMe API. - link: https://developer.cisco.com/meraki/api-v1/#!get-administered-identities-me -notes: - - SDK Method used are - administered.Administered.get_administered_identities_me, - - - Paths used are - get /administered/identities/me, + - description: Complete reference of the getAdministeredIdentitiesMe API. + link: https://developer.cisco.com/meraki/api-v1/#!get-administered-identities-me + name: Cisco Meraki documentation for administered getAdministeredIdentitiesMe +short_description: Information module for administered _identities _me +version_added: 2.16.0 """ EXAMPLES = r""" - name: Get all administered _identities _me cisco.meraki.administered_identities_me_info: - meraki_api_key: "{{meraki_api_key}}" - meraki_base_url: "{{meraki_base_url}}" - meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - meraki_certificate_path: "{{meraki_certificate_path}}" - meraki_requests_proxy: "{{meraki_requests_proxy}}" - meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - meraki_maximum_retries: "{{meraki_maximum_retries}}" - meraki_output_log: "{{meraki_output_log}}" - meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - meraki_log_path: "{{meraki_log_path}}" - meraki_print_console: "{{meraki_print_console}}" - meraki_suppress_logging: "{{meraki_suppress_logging}}" - meraki_simulate: "{{meraki_simulate}}" - meraki_be_geo_id: "{{meraki_be_geo_id}}" - meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" + meraki_api_key: '{{ meraki_api_key }}' + meraki_base_url: '{{ meraki_base_url }}' + meraki_single_request_timeout: '{{ meraki_single_request_timeout }}' + meraki_certificate_path: '{{ meraki_certificate_path }}' + meraki_requests_proxy: '{{ meraki_requests_proxy }}' + meraki_wait_on_rate_limit: '{{ meraki_wait_on_rate_limit }}' + meraki_nginx_429_retry_wait_time: '{{ meraki_nginx_429_retry_wait_time }}' + meraki_action_batch_retry_wait_time: '{{ meraki_action_batch_retry_wait_time }}' + meraki_retry_4xx_error: '{{ meraki_retry_4xx_error }}' + meraki_retry_4xx_error_wait_time: '{{ meraki_retry_4xx_error_wait_time }}' + meraki_maximum_retries: '{{ meraki_maximum_retries }}' + meraki_output_log: '{{ meraki_output_log }}' + meraki_log_file_prefix: '{{ meraki_log_file_prefix }}' + meraki_log_path: '{{ meraki_log_path }}' + meraki_print_console: '{{ meraki_print_console }}' + meraki_suppress_logging: '{{ meraki_suppress_logging }}' + meraki_simulate: '{{ meraki_simulate }}' + meraki_be_geo_id: '{{ meraki_be_geo_id }}' + meraki_use_iterator_for_get_pages: '{{ meraki_use_iterator_for_get_pages }}' + meraki_inherit_logging_config: '{{ meraki_inherit_logging_config }}' register: result - """ RETURN = r""" meraki_response: diff --git a/plugins/modules/administered_licensing_subscription_entitlements_info.py b/plugins/modules/administered_licensing_subscription_entitlements_info.py index 64b91eae9..6c7fc3d35 100644 --- a/plugins/modules/administered_licensing_subscription_entitlements_info.py +++ b/plugins/modules/administered_licensing_subscription_entitlements_info.py @@ -5,66 +5,62 @@ # GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt) DOCUMENTATION = r""" ---- -module: administered_licensing_subscription_entitlements_info -short_description: Information module for administered _licensing _subscription _entitlements +author: Francisco Munoz (@fmunoz) description: -- Get all administered _licensing _subscription _entitlements. -- Retrieve the list of purchasable entitlements. -version_added: '2.18.0' + - Get all administered _licensing _subscription _entitlements. + - Retrieve the list of purchasable entitlements. extends_documentation_fragment: - cisco.meraki.module_info -author: Francisco Munoz (@fmunoz) +module: administered_licensing_subscription_entitlements_info +notes: + - SDK Method used are licensing.Licensing.get_administered_licensing_subscription_entitlements, + - Paths used are get /administered/licensing/subscription/entitlements, options: headers: description: Additional headers. type: dict skus: description: - - Skus query parameter. Filter to entitlements with the specified SKUs. + - Skus query parameter. Filter to entitlements with the specified SKUs. elements: str type: list requirements: -- meraki >= 2.4.9 -- python >= 3.5 + - meraki >= 2.4.9 + - python >= 3.5 seealso: -- name: Cisco Meraki documentation for licensing getAdministeredLicensingSubscriptionEntitlements - description: Complete reference of the getAdministeredLicensingSubscriptionEntitlements API. - link: https://developer.cisco.com/meraki/api-v1/#!get-administered-licensing-subscription-entitlements -notes: - - SDK Method used are - licensing.Licensing.get_administered_licensing_subscription_entitlements, - - - Paths used are - get /administered/licensing/subscription/entitlements, + - description: Complete reference of the getAdministeredLicensingSubscriptionEntitlements + API. + link: https://developer.cisco.com/meraki/api-v1/#!get-administered-licensing-subscription-entitlements + name: Cisco Meraki documentation for licensing getAdministeredLicensingSubscriptionEntitlements +short_description: Information module for administered _licensing _subscription _entitlements +version_added: 2.18.0 """ EXAMPLES = r""" - name: Get all administered _licensing _subscription _entitlements cisco.meraki.administered_licensing_subscription_entitlements_info: - meraki_api_key: "{{meraki_api_key}}" - meraki_base_url: "{{meraki_base_url}}" - meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - meraki_certificate_path: "{{meraki_certificate_path}}" - meraki_requests_proxy: "{{meraki_requests_proxy}}" - meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - meraki_maximum_retries: "{{meraki_maximum_retries}}" - meraki_output_log: "{{meraki_output_log}}" - meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - meraki_log_path: "{{meraki_log_path}}" - meraki_print_console: "{{meraki_print_console}}" - meraki_suppress_logging: "{{meraki_suppress_logging}}" - meraki_simulate: "{{meraki_simulate}}" - meraki_be_geo_id: "{{meraki_be_geo_id}}" - meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" + meraki_api_key: '{{ meraki_api_key }}' + meraki_base_url: '{{ meraki_base_url }}' + meraki_single_request_timeout: '{{ meraki_single_request_timeout }}' + meraki_certificate_path: '{{ meraki_certificate_path }}' + meraki_requests_proxy: '{{ meraki_requests_proxy }}' + meraki_wait_on_rate_limit: '{{ meraki_wait_on_rate_limit }}' + meraki_nginx_429_retry_wait_time: '{{ meraki_nginx_429_retry_wait_time }}' + meraki_action_batch_retry_wait_time: '{{ meraki_action_batch_retry_wait_time }}' + meraki_retry_4xx_error: '{{ meraki_retry_4xx_error }}' + meraki_retry_4xx_error_wait_time: '{{ meraki_retry_4xx_error_wait_time }}' + meraki_maximum_retries: '{{ meraki_maximum_retries }}' + meraki_output_log: '{{ meraki_output_log }}' + meraki_log_file_prefix: '{{ meraki_log_file_prefix }}' + meraki_log_path: '{{ meraki_log_path }}' + meraki_print_console: '{{ meraki_print_console }}' + meraki_suppress_logging: '{{ meraki_suppress_logging }}' + meraki_simulate: '{{ meraki_simulate }}' + meraki_be_geo_id: '{{ meraki_be_geo_id }}' + meraki_use_iterator_for_get_pages: '{{ meraki_use_iterator_for_get_pages }}' + meraki_inherit_logging_config: '{{ meraki_inherit_logging_config }}' skus: [] register: result - """ RETURN = r""" meraki_response: diff --git a/plugins/modules/administered_licensing_subscription_subscriptions_bind.py b/plugins/modules/administered_licensing_subscription_subscriptions_bind.py index 7ab09dfcf..a65261ef7 100644 --- a/plugins/modules/administered_licensing_subscription_subscriptions_bind.py +++ b/plugins/modules/administered_licensing_subscription_subscriptions_bind.py @@ -5,16 +5,17 @@ # GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt) DOCUMENTATION = r""" ---- -module: administered_licensing_subscription_subscriptions_bind -short_description: Resource module for administered _licensing _subscription _subscriptions _bind +author: Francisco Munoz (@fmunoz) description: -- Manage operation create of the resource administered _licensing _subscription _subscriptions _bind. -- Bind networks to a subscription. -version_added: '2.18.0' + - Manage operation create of the resource administered _licensing _subscription + _subscriptions _bind. + - Bind networks to a subscription. extends_documentation_fragment: - cisco.meraki.module -author: Francisco Munoz (@fmunoz) +module: administered_licensing_subscription_subscriptions_bind +notes: + - SDK Method used are licensing.Licensing.bind_administered_licensing_subscription_subscription, + - Paths used are post /administered/licensing/subscription/subscriptions/{subscriptionId}/bind, options: networkIds: description: List of network ids to bind to the subscription. @@ -24,49 +25,46 @@ description: SubscriptionId path parameter. Subscription ID. type: str requirements: -- meraki >= 2.4.9 -- python >= 3.5 + - meraki >= 2.4.9 + - python >= 3.5 seealso: -- name: Cisco Meraki documentation for licensing bindAdministeredLicensingSubscriptionSubscription - description: Complete reference of the bindAdministeredLicensingSubscriptionSubscription API. - link: https://developer.cisco.com/meraki/api-v1/#!bind-administered-licensing-subscription-subscription -notes: - - SDK Method used are - licensing.Licensing.bind_administered_licensing_subscription_subscription, - - - Paths used are - post /administered/licensing/subscription/subscriptions/{subscriptionId}/bind, + - description: Complete reference of the bindAdministeredLicensingSubscriptionSubscription + API. + link: https://developer.cisco.com/meraki/api-v1/#!bind-administered-licensing-subscription-subscription + name: Cisco Meraki documentation for licensing bindAdministeredLicensingSubscriptionSubscription +short_description: Resource module for administered _licensing _subscription _subscriptions + _bind +version_added: 2.18.0 """ EXAMPLES = r""" - name: Create cisco.meraki.administered_licensing_subscription_subscriptions_bind: - meraki_api_key: "{{meraki_api_key}}" - meraki_base_url: "{{meraki_base_url}}" - meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - meraki_certificate_path: "{{meraki_certificate_path}}" - meraki_requests_proxy: "{{meraki_requests_proxy}}" - meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - meraki_maximum_retries: "{{meraki_maximum_retries}}" - meraki_output_log: "{{meraki_output_log}}" - meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - meraki_log_path: "{{meraki_log_path}}" - meraki_print_console: "{{meraki_print_console}}" - meraki_suppress_logging: "{{meraki_suppress_logging}}" - meraki_simulate: "{{meraki_simulate}}" - meraki_be_geo_id: "{{meraki_be_geo_id}}" - meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" + meraki_api_key: '{{ meraki_api_key }}' + meraki_base_url: '{{ meraki_base_url }}' + meraki_single_request_timeout: '{{ meraki_single_request_timeout }}' + meraki_certificate_path: '{{ meraki_certificate_path }}' + meraki_requests_proxy: '{{ meraki_requests_proxy }}' + meraki_wait_on_rate_limit: '{{ meraki_wait_on_rate_limit }}' + meraki_nginx_429_retry_wait_time: '{{ meraki_nginx_429_retry_wait_time }}' + meraki_action_batch_retry_wait_time: '{{ meraki_action_batch_retry_wait_time }}' + meraki_retry_4xx_error: '{{ meraki_retry_4xx_error }}' + meraki_retry_4xx_error_wait_time: '{{ meraki_retry_4xx_error_wait_time }}' + meraki_maximum_retries: '{{ meraki_maximum_retries }}' + meraki_output_log: '{{ meraki_output_log }}' + meraki_log_file_prefix: '{{ meraki_log_file_prefix }}' + meraki_log_path: '{{ meraki_log_path }}' + meraki_print_console: '{{ meraki_print_console }}' + meraki_suppress_logging: '{{ meraki_suppress_logging }}' + meraki_simulate: '{{ meraki_simulate }}' + meraki_be_geo_id: '{{ meraki_be_geo_id }}' + meraki_use_iterator_for_get_pages: '{{ meraki_use_iterator_for_get_pages }}' + meraki_inherit_logging_config: '{{ meraki_inherit_logging_config }}' networkIds: - - L_1234 - - N_5678 + - L_1234 + - N_5678 subscriptionId: string validate: true - """ RETURN = r""" meraki_response: diff --git a/plugins/modules/administered_licensing_subscription_subscriptions_claim.py b/plugins/modules/administered_licensing_subscription_subscriptions_claim.py index 2875a09a1..dd01cf2ce 100644 --- a/plugins/modules/administered_licensing_subscription_subscriptions_claim.py +++ b/plugins/modules/administered_licensing_subscription_subscriptions_claim.py @@ -5,16 +5,17 @@ # GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt) DOCUMENTATION = r""" ---- -module: administered_licensing_subscription_subscriptions_claim -short_description: Resource module for administered _licensing _subscription _subscriptions _claim +author: Francisco Munoz (@fmunoz) description: -- Manage operation create of the resource administered _licensing _subscription _subscriptions _claim. -- Claim a subscription into an organization. -version_added: '2.18.0' + - Manage operation create of the resource administered _licensing _subscription + _subscriptions _claim. + - Claim a subscription into an organization. extends_documentation_fragment: - cisco.meraki.module -author: Francisco Munoz (@fmunoz) +module: administered_licensing_subscription_subscriptions_claim +notes: + - SDK Method used are licensing.Licensing.claim_administered_licensing_subscription_subscriptions, + - Paths used are post /administered/licensing/subscription/subscriptions/claim, options: claimKey: description: The subscription's claim key. @@ -29,49 +30,46 @@ description: The id of the organization claiming the subscription. type: str requirements: -- meraki >= 2.4.9 -- python >= 3.5 + - meraki >= 2.4.9 + - python >= 3.5 seealso: -- name: Cisco Meraki documentation for licensing claimAdministeredLicensingSubscriptionSubscriptions - description: Complete reference of the claimAdministeredLicensingSubscriptionSubscriptions API. - link: https://developer.cisco.com/meraki/api-v1/#!claim-administered-licensing-subscription-subscriptions -notes: - - SDK Method used are - licensing.Licensing.claim_administered_licensing_subscription_subscriptions, - - - Paths used are - post /administered/licensing/subscription/subscriptions/claim, + - description: Complete reference of the claimAdministeredLicensingSubscriptionSubscriptions + API. + link: https://developer.cisco.com/meraki/api-v1/#!claim-administered-licensing-subscription-subscriptions + name: Cisco Meraki documentation for licensing claimAdministeredLicensingSubscriptionSubscriptions +short_description: Resource module for administered _licensing _subscription _subscriptions + _claim +version_added: 2.18.0 """ EXAMPLES = r""" - name: Create cisco.meraki.administered_licensing_subscription_subscriptions_claim: - meraki_api_key: "{{meraki_api_key}}" - meraki_base_url: "{{meraki_base_url}}" - meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - meraki_certificate_path: "{{meraki_certificate_path}}" - meraki_requests_proxy: "{{meraki_requests_proxy}}" - meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - meraki_maximum_retries: "{{meraki_maximum_retries}}" - meraki_output_log: "{{meraki_output_log}}" - meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - meraki_log_path: "{{meraki_log_path}}" - meraki_print_console: "{{meraki_print_console}}" - meraki_suppress_logging: "{{meraki_suppress_logging}}" - meraki_simulate: "{{meraki_simulate}}" - meraki_be_geo_id: "{{meraki_be_geo_id}}" - meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" + meraki_api_key: '{{ meraki_api_key }}' + meraki_base_url: '{{ meraki_base_url }}' + meraki_single_request_timeout: '{{ meraki_single_request_timeout }}' + meraki_certificate_path: '{{ meraki_certificate_path }}' + meraki_requests_proxy: '{{ meraki_requests_proxy }}' + meraki_wait_on_rate_limit: '{{ meraki_wait_on_rate_limit }}' + meraki_nginx_429_retry_wait_time: '{{ meraki_nginx_429_retry_wait_time }}' + meraki_action_batch_retry_wait_time: '{{ meraki_action_batch_retry_wait_time }}' + meraki_retry_4xx_error: '{{ meraki_retry_4xx_error }}' + meraki_retry_4xx_error_wait_time: '{{ meraki_retry_4xx_error_wait_time }}' + meraki_maximum_retries: '{{ meraki_maximum_retries }}' + meraki_output_log: '{{ meraki_output_log }}' + meraki_log_file_prefix: '{{ meraki_log_file_prefix }}' + meraki_log_path: '{{ meraki_log_path }}' + meraki_print_console: '{{ meraki_print_console }}' + meraki_suppress_logging: '{{ meraki_suppress_logging }}' + meraki_simulate: '{{ meraki_simulate }}' + meraki_be_geo_id: '{{ meraki_be_geo_id }}' + meraki_use_iterator_for_get_pages: '{{ meraki_use_iterator_for_get_pages }}' + meraki_inherit_logging_config: '{{ meraki_inherit_logging_config }}' claimKey: S2345-6789A-BCDEF-GHJKM description: Subscription for all main offices name: Corporate subscription organizationId: '12345678910' validate: true - """ RETURN = r""" meraki_response: diff --git a/plugins/modules/administered_licensing_subscription_subscriptions_claim_key_validate.py b/plugins/modules/administered_licensing_subscription_subscriptions_claim_key_validate.py index 259da8b75..7714949bc 100644 --- a/plugins/modules/administered_licensing_subscription_subscriptions_claim_key_validate.py +++ b/plugins/modules/administered_licensing_subscription_subscriptions_claim_key_validate.py @@ -5,60 +5,58 @@ # GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt) DOCUMENTATION = r""" ---- -module: administered_licensing_subscription_subscriptions_claim_key_validate -short_description: Resource module for administered _licensing _subscription _subscriptions _claim _key _validate +author: Francisco Munoz (@fmunoz) description: -- Manage operation create of the resource administered _licensing _subscription _subscriptions _claim _key _validate. -- Find a subscription by claim key. Returns 400 if the key has already been claimed. -version_added: '2.18.0' + - Manage operation create of the resource administered _licensing _subscription + _subscriptions _claim _key _validate. + - Find a subscription by claim key. Returns 400 if the key has already been claimed. extends_documentation_fragment: - cisco.meraki.module -author: Francisco Munoz (@fmunoz) +module: administered_licensing_subscription_subscriptions_claim_key_validate +notes: + - SDK Method used are licensing.Licensing.validate_administered_licensing_subscription_subscriptions_claim_key, + - Paths used are post /administered/licensing/subscription/subscriptions/claimKey/validate, options: claimKey: description: The subscription's claim key. type: str requirements: -- meraki >= 2.4.9 -- python >= 3.5 + - meraki >= 2.4.9 + - python >= 3.5 seealso: -- name: Cisco Meraki documentation for licensing validateAdministeredLicensingSubscriptionSubscriptionsClaimKey - description: Complete reference of the validateAdministeredLicensingSubscriptionSubscriptionsClaimKey API. - link: https://developer.cisco.com/meraki/api-v1/#!validate-administered-licensing-subscription-subscriptions-claim-key -notes: - - SDK Method used are - licensing.Licensing.validate_administered_licensing_subscription_subscriptions_claim_key, - - - Paths used are - post /administered/licensing/subscription/subscriptions/claimKey/validate, + - description: Complete reference of the validateAdministeredLicensingSubscriptionSubscriptionsClaimKey + API. + link: https://developer.cisco.com/meraki/api-v1/#!validate-administered-licensing-subscription-subscriptions-claim-key + name: Cisco Meraki documentation for licensing validateAdministeredLicensingSubscriptionSubscriptionsClaimKey +short_description: Resource module for administered _licensing _subscription _subscriptions + _claim _key _validate +version_added: 2.18.0 """ EXAMPLES = r""" - name: Create cisco.meraki.administered_licensing_subscription_subscriptions_claim_key_validate: - meraki_api_key: "{{meraki_api_key}}" - meraki_base_url: "{{meraki_base_url}}" - meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - meraki_certificate_path: "{{meraki_certificate_path}}" - meraki_requests_proxy: "{{meraki_requests_proxy}}" - meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - meraki_maximum_retries: "{{meraki_maximum_retries}}" - meraki_output_log: "{{meraki_output_log}}" - meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - meraki_log_path: "{{meraki_log_path}}" - meraki_print_console: "{{meraki_print_console}}" - meraki_suppress_logging: "{{meraki_suppress_logging}}" - meraki_simulate: "{{meraki_simulate}}" - meraki_be_geo_id: "{{meraki_be_geo_id}}" - meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" + meraki_api_key: '{{ meraki_api_key }}' + meraki_base_url: '{{ meraki_base_url }}' + meraki_single_request_timeout: '{{ meraki_single_request_timeout }}' + meraki_certificate_path: '{{ meraki_certificate_path }}' + meraki_requests_proxy: '{{ meraki_requests_proxy }}' + meraki_wait_on_rate_limit: '{{ meraki_wait_on_rate_limit }}' + meraki_nginx_429_retry_wait_time: '{{ meraki_nginx_429_retry_wait_time }}' + meraki_action_batch_retry_wait_time: '{{ meraki_action_batch_retry_wait_time }}' + meraki_retry_4xx_error: '{{ meraki_retry_4xx_error }}' + meraki_retry_4xx_error_wait_time: '{{ meraki_retry_4xx_error_wait_time }}' + meraki_maximum_retries: '{{ meraki_maximum_retries }}' + meraki_output_log: '{{ meraki_output_log }}' + meraki_log_file_prefix: '{{ meraki_log_file_prefix }}' + meraki_log_path: '{{ meraki_log_path }}' + meraki_print_console: '{{ meraki_print_console }}' + meraki_suppress_logging: '{{ meraki_suppress_logging }}' + meraki_simulate: '{{ meraki_simulate }}' + meraki_be_geo_id: '{{ meraki_be_geo_id }}' + meraki_use_iterator_for_get_pages: '{{ meraki_use_iterator_for_get_pages }}' + meraki_inherit_logging_config: '{{ meraki_inherit_logging_config }}' claimKey: S2345-6789A-BCDEF-GHJKM - """ RETURN = r""" meraki_response: diff --git a/plugins/modules/administered_licensing_subscription_subscriptions_compliance_statuses_info.py b/plugins/modules/administered_licensing_subscription_subscriptions_compliance_statuses_info.py index 08c0dfca8..b4dfddede 100644 --- a/plugins/modules/administered_licensing_subscription_subscriptions_compliance_statuses_info.py +++ b/plugins/modules/administered_licensing_subscription_subscriptions_compliance_statuses_info.py @@ -5,72 +5,70 @@ # GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt) DOCUMENTATION = r""" ---- -module: administered_licensing_subscription_subscriptions_compliance_statuses_info -short_description: Information module for administered _licensing _subscription _subscriptions _compliance _statuses +author: Francisco Munoz (@fmunoz) description: -- Get all administered _licensing _subscription _subscriptions _compliance _statuses. -- Get compliance status for requested subscriptions. -version_added: '2.18.0' + - Get all administered _licensing _subscription _subscriptions _compliance _statuses. + - Get compliance status for requested subscriptions. extends_documentation_fragment: - cisco.meraki.module_info -author: Francisco Munoz (@fmunoz) +module: administered_licensing_subscription_subscriptions_compliance_statuses_info +notes: + - SDK Method used are licensing.Licensing.get_administered_licensing_subscription_subscriptions_compliance_statuses, + - Paths used are get /administered/licensing/subscription/subscriptions/compliance/statuses, options: headers: description: Additional headers. type: dict organizationIds: description: - - OrganizationIds query parameter. Organizations to get subscription compliance information for. + - OrganizationIds query parameter. Organizations to get subscription compliance + information for. elements: str type: list subscriptionIds: description: - - SubscriptionIds query parameter. Subscription ids. + - SubscriptionIds query parameter. Subscription ids. elements: str type: list requirements: -- meraki >= 2.4.9 -- python >= 3.5 + - meraki >= 2.4.9 + - python >= 3.5 seealso: -- name: Cisco Meraki documentation for licensing getAdministeredLicensingSubscriptionSubscriptionsComplianceStatuses - description: Complete reference of the getAdministeredLicensingSubscriptionSubscriptionsComplianceStatuses API. - link: https://developer.cisco.com/meraki/api-v1/#!get-administered-licensing-subscription-subscriptions-compliance-statuses -notes: - - SDK Method used are - licensing.Licensing.get_administered_licensing_subscription_subscriptions_compliance_statuses, - - - Paths used are - get /administered/licensing/subscription/subscriptions/compliance/statuses, + - description: Complete reference of the getAdministeredLicensingSubscriptionSubscriptionsComplianceStatuses + API. + link: https://developer.cisco.com/meraki/api-v1/#!get-administered-licensing-subscription-subscriptions-compliance-statuses + name: Cisco Meraki documentation for licensing getAdministeredLicensingSubscriptionSubscriptionsComplianceStatuses +short_description: Information module for administered _licensing _subscription _subscriptions + _compliance _statuses +version_added: 2.18.0 """ EXAMPLES = r""" - name: Get all administered _licensing _subscription _subscriptions _compliance _statuses cisco.meraki.administered_licensing_subscription_subscriptions_compliance_statuses_info: - meraki_api_key: "{{meraki_api_key}}" - meraki_base_url: "{{meraki_base_url}}" - meraki_single_request_timeout: "{{meraki_single_request_timeout}}" - meraki_certificate_path: "{{meraki_certificate_path}}" - meraki_requests_proxy: "{{meraki_requests_proxy}}" - meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}" - meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}" - meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}" - meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}" - meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}" - meraki_maximum_retries: "{{meraki_maximum_retries}}" - meraki_output_log: "{{meraki_output_log}}" - meraki_log_file_prefix: "{{meraki_log_file_prefix}}" - meraki_log_path: "{{meraki_log_path}}" - meraki_print_console: "{{meraki_print_console}}" - meraki_suppress_logging: "{{meraki_suppress_logging}}" - meraki_simulate: "{{meraki_simulate}}" - meraki_be_geo_id: "{{meraki_be_geo_id}}" - meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}" - meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}" + meraki_api_key: '{{ meraki_api_key }}' + meraki_base_url: '{{ meraki_base_url }}' + meraki_single_request_timeout: '{{ meraki_single_request_timeout }}' + meraki_certificate_path: '{{ meraki_certificate_path }}' + meraki_requests_proxy: '{{ meraki_requests_proxy }}' + meraki_wait_on_rate_limit: '{{ meraki_wait_on_rate_limit }}' + meraki_nginx_429_retry_wait_time: '{{ meraki_nginx_429_retry_wait_time }}' + meraki_action_batch_retry_wait_time: '{{ meraki_action_batch_retry_wait_time }}' + meraki_retry_4xx_error: '{{ meraki_retry_4xx_error }}' + meraki_retry_4xx_error_wait_time: '{{ meraki_retry_4xx_error_wait_time }}' + meraki_maximum_retries: '{{ meraki_maximum_retries }}' + meraki_output_log: '{{ meraki_output_log }}' + meraki_log_file_prefix: '{{ meraki_log_file_prefix }}' + meraki_log_path: '{{ meraki_log_path }}' + meraki_print_console: '{{ meraki_print_console }}' + meraki_suppress_logging: '{{ meraki_suppress_logging }}' + meraki_simulate: '{{ meraki_simulate }}' + meraki_be_geo_id: '{{ meraki_be_geo_id }}' + meraki_use_iterator_for_get_pages: '{{ meraki_use_iterator_for_get_pages }}' + meraki_inherit_logging_config: '{{ meraki_inherit_logging_config }}' organizationIds: [] subscriptionIds: [] register: result - """ RETURN = r""" meraki_response: diff --git a/plugins/modules/administered_licensing_subscription_subscriptions_info.py b/plugins/modules/administered_licensing_subscription_subscriptions_info.py index 2641206c9..f831de63e 100644 --- a/plugins/modules/administered_licensing_subscription_subscriptions_info.py +++ b/plugins/modules/administered_licensing_subscription_subscriptions_info.py @@ -5,113 +5,124 @@ # GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt) DOCUMENTATION = r""" ---- -module: administered_licensing_subscription_subscriptions_info -short_description: Information module for administered _licensing _subscription _subscriptions +author: Francisco Munoz (@fmunoz) description: -- Get all administered _licensing _subscription _subscriptions. -- List available subscriptions. -version_added: '2.18.0' + - Get all administered _licensing _subscription _subscriptions. + - List available subscriptions. extends_documentation_fragment: - cisco.meraki.module_info - cisco.meraki.module_info_pagination -author: Francisco Munoz (@fmunoz) +module: administered_licensing_subscription_subscriptions_info +notes: + - SDK Method used are licensing.Licensing.get_administered_licensing_subscription_subscriptions, + - Paths used are get /administered/licensing/subscription/subscriptions, options: - headers: - description: Additional headers. - type: dict - perPage: - description: - - PerPage query parameter. The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000. - type: int - startingAfter: + endDate: description: - - > - StartingAfter query parameter. A token used by the server to indicate the start of the page. Often this is a - timestamp or an ID but it is not limited to those. This parameter should not be defined by client - applications. The link for the first, last, prev, or next page in the HTTP Link header should define it. + - 'EndDate query parameter. Filter subscriptions by end date, ISO 8601 format. + To filter with a range of dates, use ''endDate