diff options
author | Brian Coca <bcoca@users.noreply.github.com> | 2019-03-12 18:18:38 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-12 18:18:38 -0400 |
commit | b793f08a922ebc9ad1034e47b4d364d3914822d0 (patch) | |
tree | db200f52f9e38b4fabbe079be498c9b30dc148c9 /test | |
parent | 7a387e216ea0989be31f2a201682fb4d26bd13bd (diff) | |
download | ansible-b793f08a922ebc9ad1034e47b4d364d3914822d0.tar.gz |
fixes for stripping (#52930)
function changed to do in place replacement, should be less expensive even with copy as it avoids 'sub copies', can compose with module_args_copy to create replacement for old behavior
attempt to fix #52910
* handle lists and subdicts correctly
* added missing exception case, which was not noticed since 'cleaning' was not working
* added comments to clarify exceptions
Diffstat (limited to 'test')
-rwxr-xr-x | test/integration/targets/delegate_to/runme.sh | 3 | ||||
-rw-r--r-- | test/integration/targets/loop_control/aliases | 1 | ||||
-rw-r--r-- | test/integration/targets/loop_control/label.yml | 23 | ||||
-rwxr-xr-x | test/integration/targets/loop_control/runme.sh | 11 | ||||
-rw-r--r-- | test/integration/targets/loops/tasks/main.yml | 25 |
5 files changed, 37 insertions, 26 deletions
diff --git a/test/integration/targets/delegate_to/runme.sh b/test/integration/targets/delegate_to/runme.sh index 9cb64ed880..a9056eb880 100755 --- a/test/integration/targets/delegate_to/runme.sh +++ b/test/integration/targets/delegate_to/runme.sh @@ -5,7 +5,8 @@ set -eux ANSIBLE_SSH_ARGS='-C -o ControlMaster=auto -o ControlPersist=60s -o UserKnownHostsFile=/dev/null' \ ANSIBLE_HOST_KEY_CHECKING=false ansible-playbook test_delegate_to.yml -i inventory -v "$@" -ansible-playbook test_loop_control.yml -v "$@" +# this test is not doing what it says it does, also relies on var that should not be available +#ansible-playbook test_loop_control.yml -v "$@" ansible-playbook test_delegate_to_loop_randomness.yml -v "$@" diff --git a/test/integration/targets/loop_control/aliases b/test/integration/targets/loop_control/aliases new file mode 100644 index 0000000000..765b70da79 --- /dev/null +++ b/test/integration/targets/loop_control/aliases @@ -0,0 +1 @@ +shippable/posix/group2 diff --git a/test/integration/targets/loop_control/label.yml b/test/integration/targets/loop_control/label.yml new file mode 100644 index 0000000000..5ac85fdf32 --- /dev/null +++ b/test/integration/targets/loop_control/label.yml @@ -0,0 +1,23 @@ +- name: loop_control/label https://github.com/ansible/ansible/pull/36430 + hosts: localhost + gather_facts: false + tasks: + - set_fact: + loopthis: + - name: foo + label: foo_label + - name: bar + label: bar_label + + - name: check that item label is updated each iteration + debug: + msg: "{{ looped_var.name }}" + with_items: "{{ loopthis }}" + loop_control: + loop_var: looped_var + label: "looped_var {{ looped_var.label }}" +# +# - assert: +# that: +# - "output.results[0]['_ansible_item_label'] == 'looped_var foo_label'" +# - "output.results[1]['_ansible_item_label'] == 'looped_var bar_label'" diff --git a/test/integration/targets/loop_control/runme.sh b/test/integration/targets/loop_control/runme.sh new file mode 100755 index 0000000000..01f178e9da --- /dev/null +++ b/test/integration/targets/loop_control/runme.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +set -eux + +# user output has: +#ok: [localhost] => (item=looped_var foo_label) => { +#ok: [localhost] => (item=looped_var bar_label) => { +MATCH='foo_label +bar_label' +[ "$(ansible-playbook label.yml "$@" |grep 'item='|sed -e 's/^.*(item=looped_var \(.*\)).*$/\1/')" == "${MATCH}" ] + diff --git a/test/integration/targets/loops/tasks/main.yml b/test/integration/targets/loops/tasks/main.yml index c0a4f14da0..db66687361 100644 --- a/test/integration/targets/loops/tasks/main.yml +++ b/test/integration/targets/loops/tasks/main.yml @@ -196,31 +196,6 @@ loop_control: index_var: my_idx -# -# loop_control/label -# https://github.com/ansible/ansible/pull/36430 -# - -- set_fact: - loopthis: - - name: foo - label: foo_label - - name: bar - label: bar_label - -- name: check that item label is updated each iteration - debug: - msg: "{{ looped_var.name }}" - with_items: "{{ loopthis }}" - loop_control: - loop_var: looped_var - label: "looped_var {{ looped_var.label }}" - register: output - -- assert: - that: - - "output.results[0]['_ansible_item_label'] == 'looped_var foo_label'" - - "output.results[1]['_ansible_item_label'] == 'looped_var bar_label'" # The following test cases are to ensure that we don't have a regression on # GitHub Issue https://github.com/ansible/ansible/issues/35481 |