diff --git a/test/integration/targets/dnf/tasks/dnf_config.yml b/test/integration/targets/dnf/tasks/dnf_config.yml new file mode 100644 index 00000000000..c9682d7bf30 --- /dev/null +++ b/test/integration/targets/dnf/tasks/dnf_config.yml @@ -0,0 +1,30 @@ +--- +- name: Create a broken dnf config file + copy: + content: '[broken_section\nname=value' + dest: '{{ remote_tmp_dir }}/broken.conf' + register: broken_conf + +- name: Use broken conf file + dnf: + name: bash + state: present + conf_file: '{{ broken_conf.dest }}' + register: dnf_bash_result + ignore_errors: true + +- name: Verify that broken conf raises an error + assert: + that: + - "dnf_bash_result is failed" + - "'Error in configuration file' in dnf_bash_result.msg" + when: ansible_facts['distribution'] == 'Fedora' + +- name: Verify that broken conf raises an error on RHEL + assert: + that: + - "dnf_bash_result is failed" + - "'Parsing file' in dnf_bash_result.msg" + when: + - ansible_facts['distribution'] == 'RedHat' + - ansible_facts['distribution_major_version'] in (9, 10) diff --git a/test/integration/targets/dnf/tasks/main.yml b/test/integration/targets/dnf/tasks/main.yml index e965706bff1..53820e2b0c4 100644 --- a/test/integration/targets/dnf/tasks/main.yml +++ b/test/integration/targets/dnf/tasks/main.yml @@ -43,6 +43,7 @@ - include_tasks: logging.yml - include_tasks: cacheonly.yml - include_tasks: multilib.yml + - include_tasks: dnf_config.yml # Attempting to install a different RHEL release in a tmpdir doesn't work (rhel8 beta) - include_tasks: dnfreleasever.yml