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.

Reply via email to