92a95368fe
* Logging size may not show up in config * This is much simpler * Avoid repetition in tests * Both options of buffered are optional
144 lines
3.1 KiB
YAML
144 lines
3.1 KiB
YAML
---
|
|
# ensure logging configs are empty
|
|
- name: Remove host logging
|
|
ios_logging: &remove_host
|
|
dest: host
|
|
name: 172.16.0.1
|
|
state: absent
|
|
provider: "{{ cli }}"
|
|
|
|
- name: Remove console
|
|
ios_logging:
|
|
dest: console
|
|
level: warnings
|
|
state: absent
|
|
provider: "{{ cli }}"
|
|
|
|
- name: Remove buffer
|
|
ios_logging:
|
|
dest: buffered
|
|
size: 8000
|
|
provider: "{{ cli }}"
|
|
state: absent
|
|
|
|
# start tests
|
|
- name: Set up host logging
|
|
ios_logging:
|
|
dest: host
|
|
name: 172.16.0.1
|
|
facility: local7
|
|
state: present
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- 'result.changed == true'
|
|
- '"logging host 172.16.0.1" in result.commands'
|
|
- '"logging facility local7" in result.commands'
|
|
|
|
- name: Set up host logging again (idempotent)
|
|
ios_logging:
|
|
dest: host
|
|
name: 172.16.0.1
|
|
state: present
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- assert: &unchanged
|
|
that:
|
|
- 'result.changed == false'
|
|
|
|
- name: Delete/disable host logging
|
|
ios_logging: *remove_host
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- 'result.changed == true'
|
|
- '"no logging host 172.16.0.1" in result.commands'
|
|
|
|
- name: Delete/disable host logging (idempotent)
|
|
ios_logging: *remove_host
|
|
register: result
|
|
|
|
- assert: *unchanged
|
|
|
|
- name: Console logging with level warnings
|
|
ios_logging:
|
|
dest: console
|
|
level: warnings
|
|
state: present
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- 'result.changed == true'
|
|
- '"logging console warnings" in result.commands'
|
|
|
|
- name: Configure Buffer size
|
|
ios_logging:
|
|
dest: buffered
|
|
size: 8000
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- 'result.changed == true'
|
|
- '"logging buffered 8000" in result.commands'
|
|
|
|
|
|
- name: Change logging parameters using aggregate
|
|
ios_logging:
|
|
aggregate:
|
|
- { dest: console, level: notifications }
|
|
- { dest: buffered, size: 9000 }
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- 'result.changed == true'
|
|
- '"logging buffered 9000" in result.commands'
|
|
- '"logging console notifications" in result.commands'
|
|
|
|
- name: Set both logging destination and facility
|
|
ios_logging: &set_both
|
|
dest: buffered
|
|
facility: uucp
|
|
level: alerts
|
|
size: 4096
|
|
state: present
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- 'result.changed == true'
|
|
- '"logging buffered 4096 alerts" in result.commands'
|
|
- '"logging facility uucp" in result.commands'
|
|
|
|
- name: Set both logging destination and facility (idempotent)
|
|
ios_logging: *set_both
|
|
register: result
|
|
|
|
- assert: *unchanged
|
|
|
|
- name: remove logging as collection tearDown
|
|
ios_logging:
|
|
aggregate:
|
|
- { dest: console, level: notifications }
|
|
- { dest: buffered, size: 4096, level: alerts }
|
|
- { facility: uucp }
|
|
state: absent
|
|
provider: "{{ cli }}"
|
|
register: result
|
|
|
|
- assert:
|
|
that:
|
|
- 'result.changed == true'
|
|
- '"no logging console" in result.commands'
|
|
- '"no logging buffered" in result.commands'
|
|
- '"no logging facility uucp" in result.commands'
|