e3993bd01b
* Enforcing NXAPI default HTTP behavior (#41817) * nxos_nxapi http default behavior * Use nxos_nxapi module in prepare_nxos_tests * Refactor nxos_nxapi configure test to use yaml block * Extend nxos_nxapi https & http test cases * Removed NXOS internal release naming * Resolved ansibot sanity errors * Fix typo in prepare_nxos_tests * Address PR comments * Shippable indicates this is no longer needed * Add port change logic and testing (cherry picked from commitdb7300904d
) * add changelog Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> * Add get_capabilities in nxapi module_utils (#42688) Signed-off-by: Trishna Guha <trishnaguha17@gmail.com> (cherry picked from commitd5e9653c96
)
153 lines
4.4 KiB
YAML
153 lines
4.4 KiB
YAML
---
|
|
- debug: msg="START cli/configure.yaml"
|
|
|
|
- set_fact: nxapi_sandbox_option="yes"
|
|
when: platform is search('N7K')
|
|
|
|
- name: Setup - put NXAPI in stopped state
|
|
nxos_nxapi:
|
|
state: absent
|
|
provider: "{{ cli }}"
|
|
|
|
- block:
|
|
- name: Configure NXAPI HTTPS
|
|
nxos_nxapi: &configure_https
|
|
enable_http: no
|
|
enable_sandbox: "{{nxapi_sandbox_option|default(omit)}}"
|
|
enable_https: yes
|
|
https_port: 9443
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- nxos_command:
|
|
commands:
|
|
- show nxapi | json
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/n7k/assert_changes_https.yaml
|
|
when: platform is match('N7K')
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/n5k/assert_changes_https.yaml
|
|
when: platform is match('N5K')
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/default/assert_changes_https.yaml
|
|
when: not ( platform is search('N7K')) and not (platform is search('N5K')) and not (platform is search('N35'))
|
|
|
|
- name: Configure NXAPI HTTPS again
|
|
nxos_nxapi: *configure_https
|
|
register: result
|
|
|
|
- name: Assert configuration is idempotent
|
|
assert: &assert_false
|
|
that:
|
|
- result.changed == false
|
|
|
|
|
|
- name: Configure NXAPI HTTPS & HTTP
|
|
nxos_nxapi: &configure_https_http
|
|
enable_http: yes
|
|
enable_sandbox: "{{nxapi_sandbox_option|default(omit)}}"
|
|
enable_https: yes
|
|
https_port: 9443
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- nxos_command:
|
|
commands:
|
|
- show nxapi | json
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/n7k/assert_changes_https_http.yaml
|
|
when: platform is match('N7K')
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/n5k/assert_changes_https_http.yaml
|
|
when: platform is match('N5K')
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/default/assert_changes_https_http.yaml
|
|
when: not ( platform is search('N7K')) and not (platform is search('N5K')) and not (platform is search('N35'))
|
|
|
|
- name: Configure NXAPI HTTPS & HTTP again
|
|
nxos_nxapi: *configure_https_http
|
|
register: result
|
|
|
|
- name: Assert configuration is idempotent
|
|
assert: *assert_false
|
|
|
|
- name: Configure different NXAPI HTTPS & HTTP ports
|
|
nxos_nxapi: &configure_https_http_ports
|
|
enable_http: yes
|
|
enable_sandbox: "{{nxapi_sandbox_option|default(omit)}}"
|
|
enable_https: yes
|
|
http_port: 99
|
|
https_port: 500
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- nxos_command:
|
|
commands:
|
|
- show nxapi | json
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/n7k/assert_changes_https_http_ports.yaml
|
|
when: platform is match('N7K')
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/n5k/assert_changes_https_http_ports.yaml
|
|
when: platform is match('N5K')
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/default/assert_changes_https_http_ports.yaml
|
|
when: not ( platform is search('N7K')) and not (platform is search('N5K')) and not (platform is search('N35'))
|
|
|
|
- name: Configure different NXAPI HTTPS & HTTP ports again
|
|
nxos_nxapi: *configure_https_http_ports
|
|
register: result
|
|
|
|
- name: Assert configuration is idempotent
|
|
assert: *assert_false
|
|
|
|
- name: Configure NXAPI HTTP
|
|
nxos_nxapi: &configure_http
|
|
enable_http: yes
|
|
enable_sandbox: "{{nxapi_sandbox_option|default(omit)}}"
|
|
enable_https: no
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- nxos_command:
|
|
commands:
|
|
- show nxapi | json
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/n7k/assert_changes_http.yaml
|
|
when: platform is match('N7K')
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/n5k/assert_changes_http.yaml
|
|
when: platform is match('N5K')
|
|
|
|
- include: targets/nxos_nxapi/tasks/platform/default/assert_changes_http.yaml
|
|
when: not ( platform is search('N7K')) and not (platform is search('N5K')) and not (platform is search('N35'))
|
|
|
|
- name: Configure NXAPI HTTP again
|
|
nxos_nxapi: *configure_http
|
|
register: result
|
|
|
|
- name: Assert configuration is idempotent
|
|
assert: *assert_false
|
|
|
|
always:
|
|
- name: Cleanup - Disable NXAPI
|
|
nxos_nxapi:
|
|
state: absent
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- name: Cleanup - Re-enable NXAPI
|
|
nxos_nxapi:
|
|
state: present
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- debug: msg="END cli/configure.yaml"
|