dig: Fix evaluation of boolean parameters (#5129) (#5137)

* Add lookup_dig tests

* Fix boolean evaluation

* Add changelog fragment

* Apply review changes

* Add license

(cherry picked from commit 3c2d7eb193)

Co-authored-by: Michal Hybner <76526074+mu1f407@users.noreply.github.com>
This commit is contained in:
patchback[bot] 2022-08-20 14:49:33 +02:00 committed by GitHub
commit 2e11c2dfa4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 55 additions and 2 deletions

View file

@ -0,0 +1,6 @@
# Copyright (c) Ansible Project
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
shippable/posix/group1
skip/python2.6 # lookups are controller only, and we no longer support Python 2.6 on the controller

View file

@ -0,0 +1,7 @@
---
# Copyright (c) Ansible Project
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
dependencies:
- setup_remote_constraints

View file

@ -0,0 +1,37 @@
---
####################################################################
# WARNING: These are designed specifically for Ansible tests #
# and should not be used as examples of how to write Ansible roles #
####################################################################
# Copyright (c) Ansible Project
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
- name: Install dnspython library
pip:
name: dnspython
state: present
extra_args: "-c {{ remote_constraints }}"
- name: Test dig lookup with existing domain
set_fact:
dig_existing: "{{ lookup('community.general.dig', 'github.com.') }}"
- name: Test dig lookup with non-existing domain and fail_on_error=no
set_fact:
dig_nonexisting_fail_no: "{{ lookup('community.general.dig', 'non-existing.domain.', 'fail_on_error=no') }}"
- name: Verify that NXDOMAIN was returned
assert:
that: dig_nonexisting_fail_no == 'NXDOMAIN'
- name: Test dig lookup with non-existing domain and fail_on_error=yes
set_fact:
dig_nonexisting_fail_yes: "{{ lookup('community.general.dig', 'non-existing.domain.', 'fail_on_error=yes') }}"
ignore_errors: yes
register: dig_nonexisting_fail_yes_result
- name: Verify that the task failed
assert:
that: dig_nonexisting_fail_yes_result is failed