mirror of https://github.com/ansible/ansible.git
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.7 KiB
YAML
67 lines
1.7 KiB
YAML
2 years ago
|
- name: Ensure no toml packages are installed
|
||
|
pip:
|
||
|
name:
|
||
|
- tomli
|
||
|
- tomli-w
|
||
|
- toml
|
||
|
state: absent
|
||
|
|
||
|
- name: Install toml package
|
||
|
pip:
|
||
|
name: '{{ toml_package|difference(["tomllib"]) }}'
|
||
|
state: present
|
||
|
|
||
|
- name: test toml parsing
|
||
|
command: ansible-inventory --list --toml -i {{ role_path }}/files/valid_sample.toml
|
||
|
register: toml_in
|
||
|
|
||
|
- assert:
|
||
|
that:
|
||
|
- >
|
||
|
'foo = "bar"' in toml_in.stdout
|
||
|
|
||
|
- 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" in result.stderr
|
||
|
|
||
|
- block:
|
||
|
- name: "test toml output with unicode characters"
|
||
|
command: ansible-inventory --list --toml -i {{ role_path }}/files/unicode.yml
|
||
|
register: result
|
||
|
|
||
|
- assert:
|
||
|
that:
|
||
|
- result is succeeded
|
||
|
- result.stdout is contains('příbor')
|
||
|
|
||
|
- block:
|
||
|
- name: "test toml output file with unicode characters"
|
||
|
command: ansible-inventory --list --toml --output unicode_inventory.toml -i {{ role_path }}/files/unicode.yml
|
||
|
|
||
|
- set_fact:
|
||
|
toml_inventory_file: "{{ lookup('file', 'unicode_inventory.toml') | string }}"
|
||
|
|
||
|
- assert:
|
||
|
that:
|
||
|
- toml_inventory_file is contains('příbor')
|
||
|
always:
|
||
|
- file:
|
||
|
name: unicode_inventory.toml
|
||
|
state: absent
|
||
|
when: ansible_python.version.major|int == 3
|