mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-05-08 06:12:51 +00:00
ios_user module - implement sshkey option (#38782)
* ios_user module - add sshkey support * ios_user - Add version_added to sshkey option * ios_user - pep8 indentation fixes in unit tests * ios_user - use b64decode method that works on python 2 and 3
This commit is contained in:
committed by
Nathaniel Case
parent
0ca61e9d87
commit
7c318d4e30
@@ -38,3 +38,41 @@
|
||||
|
||||
- name: reset connection
|
||||
meta: reset_connection
|
||||
|
||||
|
||||
- block:
|
||||
- name: Create user with sshkey
|
||||
ios_user:
|
||||
name: ssh_user
|
||||
privilege: 15
|
||||
role: network-operator
|
||||
state: present
|
||||
provider: "{{ cli }}"
|
||||
sshkey: "{{ lookup('file', 'files/test_rsa.pub') }}"
|
||||
|
||||
- name: test sshkey login
|
||||
shell: "ssh ssh_user@{{ ansible_ssh_host }} -p {{ ansible_ssh_port|default(22) }} -o IdentityFile={{ role_path }}/files/test_rsa -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o PubkeyAuthentication=yes show version"
|
||||
|
||||
- name: test login without sshkey (should fail)
|
||||
expect:
|
||||
command: "ssh ssh_user@{{ ansible_ssh_host }} -p {{ ansible_ssh_port|default(22) }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o PubkeyAuthentication=no show version"
|
||||
responses:
|
||||
(?i)password: badpass
|
||||
ignore_errors: yes
|
||||
register: results
|
||||
|
||||
- name: check that attempt failed
|
||||
assert:
|
||||
that:
|
||||
- results.failed
|
||||
|
||||
always:
|
||||
- name: delete user
|
||||
ios_user:
|
||||
name: ssh_user
|
||||
state: absent
|
||||
provider: "{{ cli }}"
|
||||
register: result
|
||||
|
||||
- name: reset connection
|
||||
meta: reset_connection
|
||||
|
||||
@@ -80,5 +80,5 @@
|
||||
that:
|
||||
- 'result.changed == true'
|
||||
- '"no username ansibletest1" in result.commands[0]["command"]'
|
||||
- '"no username ansibletest2" in result.commands[1]["command"]'
|
||||
- '"no username ansibletest3" in result.commands[2]["command"]'
|
||||
- '"no username ansibletest2" in result.commands[4]["command"]'
|
||||
- '"no username ansibletest3" in result.commands[8]["command"]'
|
||||
|
||||
Reference in New Issue
Block a user