mirror of https://github.com/ansible/ansible.git
* Add jinja2 groupby filter override to cast namedtuple to tuple. Fixes #20098 * Address some of the requested changes * Quoting * Print the python path and version * Be less explicitly verbose, rely on implicit verbositypull/20478/head
parent
809aa7a653
commit
537b3b75a6
@ -0,0 +1 @@
|
|||||||
|
posix/ci/group2
|
@ -0,0 +1,35 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# We don't set -u here, due to pypa/virtualenv#150
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
MYTMPDIR=$(mktemp -d 2>/dev/null || mktemp -d -t 'mytmpdir')
|
||||||
|
|
||||||
|
# This is needed for the ubuntu1604py3 tests
|
||||||
|
# Ubuntu patches virtualenv to make the default python2
|
||||||
|
# but for the python3 tests we need virtualenv to use python3
|
||||||
|
if [ -f /usr/bin/python3 ]
|
||||||
|
then
|
||||||
|
PYTHON="--python /usr/bin/python3"
|
||||||
|
else
|
||||||
|
PYTHON=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
virtualenv --system-site-packages $PYTHON "${MYTMPDIR}/jinja2"
|
||||||
|
|
||||||
|
source "${MYTMPDIR}/jinja2/bin/activate"
|
||||||
|
|
||||||
|
which python
|
||||||
|
python -V
|
||||||
|
|
||||||
|
pip install -U jinja2==2.9.4
|
||||||
|
|
||||||
|
ansible-playbook -i ../../inventory test_jinja2_groupby.yml -v "$@"
|
||||||
|
|
||||||
|
pip install -U "jinja2<2.9.0"
|
||||||
|
|
||||||
|
ansible-playbook -i ../../inventory test_jinja2_groupby.yml -v "$@"
|
||||||
|
|
||||||
|
deactivate
|
||||||
|
|
||||||
|
rm -r "${MYTMPDIR}"
|
@ -0,0 +1,24 @@
|
|||||||
|
---
|
||||||
|
- name: Test jinja2 groupby
|
||||||
|
hosts: localhost
|
||||||
|
gather_facts: False
|
||||||
|
connection: local
|
||||||
|
vars:
|
||||||
|
fruits:
|
||||||
|
- name: apple
|
||||||
|
enjoy: yes
|
||||||
|
- name: orange
|
||||||
|
enjoy: no
|
||||||
|
- name: strawberry
|
||||||
|
enjoy: yes
|
||||||
|
expected: [[false, [{"enjoy": false, "name": "orange"}]], [true, [{"enjoy": true, "name": "apple"}, {"enjoy": true, "name": "strawberry"}]]]
|
||||||
|
tasks:
|
||||||
|
- debug:
|
||||||
|
msg: "{{ lookup('pipe', 'pip freeze | grep -i jinja2') }}"
|
||||||
|
|
||||||
|
- set_fact:
|
||||||
|
result: "{{ fruits | groupby('enjoy') }}"
|
||||||
|
|
||||||
|
- assert:
|
||||||
|
that:
|
||||||
|
- result == expected
|
Loading…
Reference in New Issue