diff --git a/test/integration/targets/eos_user/tests/cli/auth.yaml b/test/integration/targets/eos_user/tests/cli/auth.yaml new file mode 100644 index 00000000000..4da4a5dd562 --- /dev/null +++ b/test/integration/targets/eos_user/tests/cli/auth.yaml @@ -0,0 +1,39 @@ +--- +- block: + - name: Create user with password + eos_user: + name: auth_user + privilege: 15 + role: network-operator + state: present + authorize: yes + provider: "{{ cli }}" + configured_password: pass123 + + - name: test login + expect: + command: "ssh auth_user@{{ ansible_ssh_host }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no show version" + responses: + (?i)password: "pass123" + + - name: test login with invalid password (should fail) + expect: + command: "ssh auth_user@{{ ansible_ssh_host }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=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 + eos_user: + name: auth_user + state: absent + provider: "{{ cli }}" + authorize: yes + register: result diff --git a/test/integration/targets/ios_user/tests/cli/auth.yaml b/test/integration/targets/ios_user/tests/cli/auth.yaml new file mode 100644 index 00000000000..6feb5f8c173 --- /dev/null +++ b/test/integration/targets/ios_user/tests/cli/auth.yaml @@ -0,0 +1,39 @@ +--- +- block: + - name: Create user with password + ios_user: + name: auth_user + privilege: 15 + role: network-operator + state: present + authorize: yes + provider: "{{ cli }}" + configured_password: pass123 + + - name: test login + expect: + command: "ssh auth_user@{{ ansible_ssh_host }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no show version" + responses: + (?i)password: "pass123" + + - name: test login with invalid password (should fail) + expect: + command: "ssh auth_user@{{ ansible_ssh_host }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=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: auth_user + state: absent + provider: "{{ cli }}" + authorize: yes + register: result diff --git a/test/integration/targets/iosxr_user/tests/cli/auth.yaml b/test/integration/targets/iosxr_user/tests/cli/auth.yaml new file mode 100644 index 00000000000..b26d6f590f9 --- /dev/null +++ b/test/integration/targets/iosxr_user/tests/cli/auth.yaml @@ -0,0 +1,35 @@ +--- +- block: + - name: Create user with password + iosxr_user: + name: auth_user + state: present + provider: "{{ cli }}" + configured_password: pass123 + + - name: test login + expect: + command: "ssh auth_user@{{ ansible_ssh_host }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no show version" + responses: + (?i)password: "pass123" + + - name: test login with invalid password (should fail) + expect: + command: "ssh auth_user@{{ ansible_ssh_host }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=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 + iosxr_user: + name: auth_user + state: absent + provider: "{{ cli }}" + register: result diff --git a/test/integration/targets/nxos_user/tests/common/auth.yaml b/test/integration/targets/nxos_user/tests/common/auth.yaml new file mode 100644 index 00000000000..84d47529a8d --- /dev/null +++ b/test/integration/targets/nxos_user/tests/common/auth.yaml @@ -0,0 +1,36 @@ +--- +- block: + - name: Create user with password + nxos_user: + name: auth_user + role: network-operator + state: present + provider: "{{ connection }}" + configured_password: pass123 + + - name: test login + expect: + command: "ssh auth_user@{{ ansible_ssh_host }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no show version" + responses: + (?i)password: "pass123" + + - name: test login with invalid password (should fail) + expect: + command: "ssh auth_user@{{ ansible_ssh_host }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=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 + nxos_user: + name: auth_user + state: absent + provider: "{{ connection }}" + register: result diff --git a/test/integration/targets/vyos_user/tests/cli/auth.yaml b/test/integration/targets/vyos_user/tests/cli/auth.yaml new file mode 100644 index 00000000000..69c4d38704e --- /dev/null +++ b/test/integration/targets/vyos_user/tests/cli/auth.yaml @@ -0,0 +1,36 @@ +--- +- block: + - name: Create user with password + vyos_user: + name: auth_user + role: admin + state: present + provider: "{{ cli }}" + configured_password: pass123 + + - name: test login + expect: + command: "ssh auth_user@{{ ansible_ssh_host }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no '/opt/vyatta/sbin/vyatta-cfg-cmd-wrapper show version'" + responses: + (?i)password: "pass123" + + - name: test login with invalid password (should fail) + expect: + command: "ssh auth_user@{{ ansible_ssh_host }} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no '/opt/vyatta/sbin/vyatta-cfg-cmd-wrapper show version'" + responses: + (?i)password: "badpass" + ignore_errors: yes + register: results + + - name: check that attempt failed + assert: + that: + - results.failed + + always: + - name: delete user + vyos_user: + name: auth_user + state: absent + provider: "{{ cli }}" + register: result