On 30. nov. 2016 09:52, [email protected] wrote:
I am trying to process the result from the find module. The result contains
3 file paths which i would like to process in a loop.
The number of files depends on the number of files found in the directories
and is set by result.matched
Using the with_sequence loop should do the trick, i think. But i ran into a
problem.
with_sequence: start=0 end={{ variable }}, expects {{ variable }} to be an
integer. Casting {{ variable | int}} results in a zero value, which should
be 3.
Any suggestions how to solve or work around my issue?
Why not use with_items?
After casting the variable correctly to an integer, off course i still have
to subtract 1 to set the correct index value for the results array.
*Variables*:
file_path: "roles/ansible-role-iamGroups/files"
template_path: "roles/ansible-role-iamGroups/templates"
declared_int: 3
*Tasks*:
- name: find files
find:
recurse: yes
patterns: "*.json"
paths:
"/home/user/PycharmProjects/playbook-aws-billing/roles/ansible-role-iamGroups/templates/"
register: result
- name: register numbers variable
shell: "echo {{result.matched}}"
register: number
- name: list number variable (==> string value 3)
debug: var=number
- name: list result hard coded (works)
debug: "var=result.files[{{item}}].path"
with_sequence: "start=0 end=2 stride=1"
- name: list result
debug: var=item.path
with_items: result.files
--
Kai Stian Olstad
--
You received this message because you are subscribed to the Google Groups "Ansible
Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/c3b63cd1-b9f3-bbb8-c10c-305fdeb48c04%40olstad.com.
For more options, visit https://groups.google.com/d/optout.