diff options
author | Anil Kumar Muraleedharan <amuraleedhar@lenovo.com> | 2019-02-28 00:45:56 +0530 |
---|---|---|
committer | Nathaniel Case <this.is@nathanielca.se> | 2019-02-27 14:15:56 -0500 |
commit | a78c40322c63fd10c70bd4192645bf763d9eb799 (patch) | |
tree | b37cbd5c69c3e70bba7caf0963fb2f615c06bbad /test/integration/targets/cnos_logging | |
parent | 9936e8154163e43e3eb70c32d88f0ace53bb7d56 (diff) | |
download | ansible-a78c40322c63fd10c70bd4192645bf763d9eb799.tar.gz |
Lenovo cnos logging (#52978)
* Adding the module cnos_logging.py to the module suite from Lenovo
Diffstat (limited to 'test/integration/targets/cnos_logging')
6 files changed, 178 insertions, 0 deletions
diff --git a/test/integration/targets/cnos_logging/aliases b/test/integration/targets/cnos_logging/aliases new file mode 100644 index 0000000000..be010d923f --- /dev/null +++ b/test/integration/targets/cnos_logging/aliases @@ -0,0 +1,2 @@ +# No Lenovo Switch simulator yet, so not enabled +unsupported diff --git a/test/integration/targets/cnos_logging/cnos_logging_sample_hosts b/test/integration/targets/cnos_logging/cnos_logging_sample_hosts new file mode 100644 index 0000000000..6cf095132a --- /dev/null +++ b/test/integration/targets/cnos_logging/cnos_logging_sample_hosts @@ -0,0 +1,14 @@ +# You have to paste this dummy information in /etc/ansible/hosts +# Notes: +# - Comments begin with the '#' character +# - Blank lines are ignored +# - Groups of hosts are delimited by [header] elements +# - You can enter hostnames or ip Addresses +# - A hostname/ip can be a member of multiple groups +# +# In the /etc/ansible/hosts file u have to enter [cnos_portchannel_sample] tag +# Following you should specify IP Addresses details +# Please change <username> and <password> with appropriate value for your switch. + +[cnos_logging_sample] +10.241.107.39 ansible_network_os=cnos ansible_ssh_user=<username> ansible_ssh_pass=<password> diff --git a/test/integration/targets/cnos_logging/defaults/main.yaml b/test/integration/targets/cnos_logging/defaults/main.yaml new file mode 100644 index 0000000000..5f709c5aac --- /dev/null +++ b/test/integration/targets/cnos_logging/defaults/main.yaml @@ -0,0 +1,2 @@ +--- +testcase: "*" diff --git a/test/integration/targets/cnos_logging/tasks/cli.yaml b/test/integration/targets/cnos_logging/tasks/cli.yaml new file mode 100644 index 0000000000..1216a3d0be --- /dev/null +++ b/test/integration/targets/cnos_logging/tasks/cli.yaml @@ -0,0 +1,22 @@ +--- +- name: collect all cli test cases + find: + paths: "{{ role_path }}/tests/cli" + patterns: "{{ testcase }}.yaml" + register: test_cases + delegate_to: localhost + +- name: set test_items + set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}" + +- name: run test cases (connection=network_cli) + include: "{{ test_case_to_run }}" + with_items: "{{ test_items }}" + loop_control: + loop_var: test_case_to_run + +#- name: run test case (connection=local) +# include: "{{ test_case_to_run }} ansible_connection=local" +# with_first_found: "{{ test_items }}" +# loop_control: +# loop_var: test_case_to_run diff --git a/test/integration/targets/cnos_logging/tasks/main.yaml b/test/integration/targets/cnos_logging/tasks/main.yaml new file mode 100644 index 0000000000..415c99d8b1 --- /dev/null +++ b/test/integration/targets/cnos_logging/tasks/main.yaml @@ -0,0 +1,2 @@ +--- +- { include: cli.yaml, tags: ['cli'] } diff --git a/test/integration/targets/cnos_logging/tests/cli/basic.yaml b/test/integration/targets/cnos_logging/tests/cli/basic.yaml new file mode 100644 index 0000000000..b82b2ac368 --- /dev/null +++ b/test/integration/targets/cnos_logging/tests/cli/basic.yaml @@ -0,0 +1,136 @@ +--- +# ensure logging configs are empty +- name: Remove server logging + cnos_logging: &remove_server + dest: server + name: 10.241.107.224 + state: absent + +- name: Remove console + cnos_logging: + dest: console + level: 4 + state: absent + +- name: Remove buffer + cnos_logging: + dest: logfile + size: 8000 + state: absent + +# start tests +- name: Set up server logging + cnos_logging: + dest: server + name: 10.241.107.224 + facility: local7 + state: present + register: result + +- assert: + that: + - 'result.changed == true' + - '"logging server 10.241.107.224" in result.commands' + +- name: Set up server logging again (idempotent) + cnos_logging: + dest: server + name: 10.241.107.224 + state: present + register: result + +- assert: &unchanged + that: + - 'result.changed == true' + +- name: Delete/disable server logging + cnos_logging: *remove_server + register: result + +- assert: + that: + - 'result.changed == true' + - '"no logging server 10.241.107.224" in result.commands' + +- name: Delete/disable server logging (idempotent) + cnos_logging: *remove_server + register: result + +- assert: + that: + - 'result.changed == true' + +- name: Console logging with level errors + cnos_logging: + dest: console + level: 3 + state: present + register: result + +- assert: + that: + - 'result.changed == true' + - '"logging console 3" in result.commands' + +- name: Configure Buffer size + cnos_logging: + dest: logfile + name: testfile + level: 6 + size: 8000 + register: result + +- assert: + that: + - 'result.changed == true' + - '"logging logfile testfile 6 size 8000" in result.commands' + + +- name: Change logging parameters using aggregate + cnos_logging: + aggregate: + - { dest: console, level: 5 } + - { dest: logfile, name: anil, level: 3, size: 9000 } + register: result + +- assert: + that: + - 'result.changed == true' + - '"logging logfile anil 3 size 9000" in result.commands' + - '"logging console 5" in result.commands' + +- name: Set both logging destination and facility + cnos_logging: &set_both + dest: logfile + name: mylog + level: 1 + size: 4096 + state: present + register: result + +- assert: + that: + - 'result.changed == true' + - '"logging logfile mylog 1 size 4096" in result.commands' + +- name: Set both logging destination and facility (idempotent) + cnos_logging: *set_both + register: result + +- assert: + that: + - 'result.changed == false' + +- name: remove logging as collection tearDown + cnos_logging: + aggregate: + - { dest: console, level: 6 } + - { dest: logfile, name: mylog, size: 4096, level: 1 } + state: absent + register: result + +- assert: + that: + - 'result.changed == true' + - '"no logging console" in result.commands' + - '"no logging logfile" in result.commands' |