|
|
|
---
|
|
|
|
- debug: msg="START connection={{ ansible_connection }} nxos_user parameter test"
|
|
|
|
- debug: msg="Using provider={{ connection.transport }}"
|
|
|
|
when: ansible_connection == "local"
|
|
|
|
|
|
|
|
- set_fact: idem="true"
|
|
|
|
- set_fact: idem="false"
|
|
|
|
when: ((platform is search('N7K')) and (imagetag and (imagetag is version_compare('D1', 'eq'))))
|
|
|
|
|
|
|
|
- block:
|
|
|
|
- name: Create user
|
|
|
|
nxos_user: &configure
|
|
|
|
name: netend
|
|
|
|
configured_password: Hello!23$
|
|
|
|
update_password: on_create
|
|
|
|
roles: network-operator
|
|
|
|
provider: "{{ connection }}"
|
|
|
|
state: present
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert: &true
|
|
|
|
that:
|
|
|
|
- 'result.changed == true'
|
|
|
|
|
|
|
|
- block:
|
|
|
|
- name: conf idempotency
|
|
|
|
nxos_user: *configure
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert: &false
|
|
|
|
that:
|
|
|
|
- 'result.changed == false'
|
|
|
|
when: idem
|
|
|
|
|
|
|
|
- name: Remove user
|
|
|
|
nxos_user: &remove
|
|
|
|
name: netend
|
|
|
|
provider: "{{ connection }}"
|
|
|
|
state: absent
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert: *true
|
|
|
|
|
|
|
|
- name: remove idempotency
|
|
|
|
nxos_user: *remove
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert: *false
|
|
|
|
|
|
|
|
- debug: msg="skipping sshkey test as the key needs to be created on the server first"
|
|
|
|
|
|
|
|
# - name: create a new user
|
|
|
|
# nxos_user: &conf1
|
|
|
|
# name: ansible
|
|
|
|
# sshkey: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
|
|
|
|
# provider: "{{ connection }}"
|
|
|
|
# state: present
|
|
|
|
# register: result
|
|
|
|
#
|
|
|
|
# - assert: *true
|
|
|
|
|
|
|
|
# - block:
|
|
|
|
# - name: user idempotency
|
|
|
|
# nxos_user: *conf1
|
|
|
|
# register: result
|
|
|
|
#
|
|
|
|
# - assert: *false
|
|
|
|
#
|
|
|
|
# when: idem
|
|
|
|
|
|
|
|
- name: Collection of users
|
|
|
|
nxos_user: &coll
|
|
|
|
users:
|
|
|
|
- name: test1
|
|
|
|
- name: test2
|
|
|
|
configured_password: Hello!23$
|
|
|
|
update_password: on_create
|
|
|
|
provider: "{{ connection }}"
|
|
|
|
state: present
|
|
|
|
roles:
|
|
|
|
- network-admin
|
|
|
|
- network-operator
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert: *true
|
|
|
|
|
|
|
|
- block:
|
|
|
|
- name: users idempotency
|
|
|
|
nxos_user: *coll
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert: *false
|
|
|
|
|
|
|
|
when: idem
|
|
|
|
|
|
|
|
- name: tearDown
|
|
|
|
nxos_user: &tear
|
|
|
|
name: ansible
|
|
|
|
purge: yes
|
|
|
|
provider: "{{ connection }}"
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert: *true
|
|
|
|
|
|
|
|
- name: teardown idempotency
|
|
|
|
nxos_user: *tear
|
|
|
|
register: result
|
|
|
|
|
|
|
|
- assert: *false
|
|
|
|
|
|
|
|
always:
|
|
|
|
- name: tearDown
|
|
|
|
nxos_user: *tear
|
|
|
|
register: result
|
|
|
|
ignore_errors: yes
|
|
|
|
|
|
|
|
- debug: msg="END connection={{ ansible_connection }} nxos_user parameter test"
|