Fix test_async. (#16552)
* Conditionally run test_async in docker containers. * Revise test_async test.
This commit is contained in:
parent
292785ff2b
commit
4e369a31db
2 changed files with 12 additions and 4 deletions
|
@ -27,7 +27,7 @@ UNAME := $(shell uname | tr '[:upper:]' '[:lower:]')
|
||||||
|
|
||||||
all: setup other non_destructive destructive
|
all: setup other non_destructive destructive
|
||||||
|
|
||||||
other: test_test_infra parsing test_var_precedence unicode test_templating_settings environment test_connection includes blocks pull check_mode test_hash test_handlers test_group_by test_vault test_tags test_lookup_paths no_log test_gathering_facts test_binary_modules test_async
|
other: test_test_infra parsing test_var_precedence unicode test_templating_settings environment test_connection test_async_conditional includes blocks pull check_mode test_hash test_handlers test_group_by test_vault test_tags test_lookup_paths no_log test_gathering_facts test_binary_modules
|
||||||
|
|
||||||
test_test_infra:
|
test_test_infra:
|
||||||
# ensure fail/assert work locally and can stop execution with non-zero exit code
|
# ensure fail/assert work locally and can stop execution with non-zero exit code
|
||||||
|
@ -86,6 +86,14 @@ environment: setup
|
||||||
non_destructive: setup
|
non_destructive: setup
|
||||||
ansible-playbook non_destructive.yml -i $(INVENTORY) -e outputdir=$(TEST_DIR) -e @$(VARS_FILE) $(CREDENTIALS_ARG) -v $(TEST_FLAGS)
|
ansible-playbook non_destructive.yml -i $(INVENTORY) -e outputdir=$(TEST_DIR) -e @$(VARS_FILE) $(CREDENTIALS_ARG) -v $(TEST_FLAGS)
|
||||||
|
|
||||||
|
# For our Docker images, which identify themselves with "ENV container=docker", automatically run the test_async target.
|
||||||
|
# Otherwise, skip it, since we don't know if local ssh is available. You can always run the test_async target manually.
|
||||||
|
ifeq ($(container),docker)
|
||||||
|
test_async_conditional: test_async
|
||||||
|
else
|
||||||
|
test_async_conditional:
|
||||||
|
endif
|
||||||
|
|
||||||
# For our Docker images, which identify themselves with "ENV container=docker", use the test_docker inventory group.
|
# For our Docker images, which identify themselves with "ENV container=docker", use the test_docker inventory group.
|
||||||
# Otherwise use the test_default inventory group, which runs fewer tests, but should work on any system.
|
# Otherwise use the test_default inventory group, which runs fewer tests, but should work on any system.
|
||||||
ifeq ($(container),docker)
|
ifeq ($(container),docker)
|
||||||
|
@ -305,7 +313,7 @@ test_binary_modules:
|
||||||
|
|
||||||
test_async:
|
test_async:
|
||||||
# Verify that extra data before module JSON output during async call is ignored.
|
# Verify that extra data before module JSON output during async call is ignored.
|
||||||
LC_ALL=bogus ansible-playbook test_async.yml -i $(INVENTORY) -e outputdir=$(TEST_DIR) -v $(TEST_FLAGS)
|
ANSIBLE_DEBUG=0 LC_ALL=bogus ansible-playbook test_async.yml -i localhost, -e ansible_connection=ssh -v $(TEST_FLAGS)
|
||||||
# Verify that the warning exists by examining debug output.
|
# Verify that the warning exists by examining debug output.
|
||||||
ANSIBLE_DEBUG=1 LC_ALL=bogus ansible-playbook test_async.yml -i $(INVENTORY) -e outputdir=$(TEST_DIR) -v $(TEST_FLAGS) \
|
ANSIBLE_DEBUG=1 LC_ALL=bogus ansible-playbook test_async.yml -i localhost, -e ansible_connection=ssh -v $(TEST_FLAGS) \
|
||||||
| grep -q 'bash: warning: setlocale: LC_ALL: cannot change locale (bogus)'
|
| grep -q 'bash: warning: setlocale: LC_ALL: cannot change locale (bogus)'
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
- hosts: testhost3
|
- hosts: localhost
|
||||||
gather_facts: false
|
gather_facts: false
|
||||||
tasks:
|
tasks:
|
||||||
# make sure non-JSON data before module output is ignored
|
# make sure non-JSON data before module output is ignored
|
||||||
|
|
Loading…
Reference in a new issue