ansible/test/integration/targets/ansible-inventory/tasks/main.yml
Abhijeet Kasurde 38dd49eb00
ansible-inventory: Handle exception in toml parsing (#74486)
Handle stacktrace raise while parsing inventory in toml format

Fixes: #74404

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2021-05-05 14:12:52 +05:30

107 lines
2.4 KiB
YAML

- name: "No command supplied"
command: ansible-inventory
ignore_errors: true
register: result
- assert:
that:
- result is failed
- '"ERROR! No action selected, at least one of --host, --graph or --list needs to be specified." in result.stderr'
- name: "test option: --list --export"
command: ansible-inventory --list --export
register: result
- assert:
that:
- result is succeeded
- name: "test option: --list --yaml --export"
command: ansible-inventory --list --yaml --export
register: result
- assert:
that:
- result is succeeded
- name: "test option: --list --output"
command: ansible-inventory --list --output junk.txt
register: result
- name: stat output file
stat:
path: junk.txt
register: st
- assert:
that:
- result is succeeded
- st.stat.exists
- name: "test option: --graph"
command: ansible-inventory --graph
register: result
- assert:
that:
- result is succeeded
- name: "test option: --graph --vars"
command: ansible-inventory --graph --vars
register: result
- assert:
that:
- result is succeeded
- name: "test option: --graph with bad pattern"
command: ansible-inventory --graph invalid
ignore_errors: true
register: result
- assert:
that:
- result is failed
- '"ERROR! Pattern must be valid group name when using --graph" in result.stderr'
- name: "test option: --host localhost"
command: ansible-inventory --host localhost
register: result
- assert:
that:
- result is succeeded
- name: "test option: --host with invalid host"
command: ansible-inventory --host invalid
ignore_errors: true
register: result
- assert:
that:
- result is failed
- '"ERROR! Could not match supplied host pattern, ignoring: invalid" in result.stderr'
- name: Install toml package
pip:
name:
- toml
state: present
- name: "test option: --toml with valid group name"
command: ansible-inventory --list --toml -i {{ role_path }}/files/valid_sample.yml
register: result
- assert:
that:
- result is succeeded
- name: "test option: --toml with invalid group name"
command: ansible-inventory --list --toml -i {{ role_path }}/files/invalid_sample.yml
ignore_errors: true
register: result
- assert:
that:
- result is failed
- '"ERROR! The source inventory contains a non-string key" in result.stderr'