added tests for templating and with_items

This commit is contained in:
Brian Coca 2014-12-09 11:31:21 -05:00
parent c725aa5e47
commit 58be1b049e
2 changed files with 28 additions and 9 deletions

View file

@ -81,7 +81,7 @@
- "wc_result.stdout == '9'" - "wc_result.stdout == '9'"
- "cat_result.stdout == newpass" - "cat_result.stdout == newpass"
# ENV LOOKUP # ENV LOOKUP
- name: get first environment var name - name: get first environment var name
shell: env | head -n1 | cut -d\= -f1 shell: env | head -n1 | cut -d\= -f1
@ -92,16 +92,16 @@
register: known_var_value register: known_var_value
- name: use env lookup to get known var - name: use env lookup to get known var
set_fact: set_fact:
test_val: "{{ lookup('env', known_var_name.stdout) }}" test_val: "{{ lookup('env', known_var_name.stdout) }}"
- debug: var=known_var_name.stdout - debug: var=known_var_name.stdout
- debug: var=known_var_value.stdout - debug: var=known_var_value.stdout
- debug: var=test_val - debug: var=test_val
- name: compare values - name: compare values
assert: assert:
that: that:
- "test_val == known_var_value.stdout" - "test_val == known_var_value.stdout"
@ -109,11 +109,23 @@
# https://github.com/ansible/ansible/issues/6550 # https://github.com/ansible/ansible/issues/6550
- name: confirm pipe lookup works with a single positional arg - name: confirm pipe lookup works with a single positional arg
debug: msg="{{ lookup('pipe', 'ls') }}" debug: msg="{{ lookup('pipe', 'ls') }}"
# https://github.com/ansible/ansible/issues/6550
- name: confirm pipe lookup works with multiple positional args
debug: msg="{{ lookup('pipe', 'ls -l /tmp') }}"
# LOOKUP TEMPLATING
- name: use bare interpolation
debug: msg="got {{item}}"
with_items: things1
register: bare_var
- name: verify that list was interpolated
assert:
that:
- "bare_var.results[0].item == 1"
- "bare_var.results[1].item == 2"
- name: use list with undefined var in it
debug: msg={{item}}
with_items: things2

View file

@ -2,4 +2,11 @@
# in general define test data in the individual role: # in general define test data in the individual role:
# roles/role_name/vars/main.yml # roles/role_name/vars/main.yml
foo: "Hello"
things1:
- 1
- 2
things2:
- "{{ foo }}"
- "{{ foob }}"
vars_file_var: 321 vars_file_var: 321