As Kai Stian Olstad wrote, I got the target list wrong. The first ocurrence of "loglist" should be "logdict", OR (even better) do as Kai suggested and substitute "logfile_config" for loglist and logdict.
Regards, K. On Wed, Mar 13, 2019 at 10:08 PM Ashok <[email protected]> wrote: > The content of the source is very dynamic on each run, hence, going static > isn't viable. > > I tried with your logic, like below: > > - name: Form list of dicts > set_fact: > logfile_config: "{{ logf_dest |default([]) + > [ { > 'logfile_name': 'remote.conf', > 'logfile_pattern': item, > 'logfile_owner': 'root' > } > ] }}" > with_items: "{{ logf_dest }}" > > > - debug: > var: logfile_config > > It doesn't give the desired output. `logfile_config` is: > > TASK [debug] > ********************************************************************************************************************************* > task path: /home/ansible/playbooks/loghost-new.yml:42 > ok: [log-dvl.vpn] => { > "logfile_config": [ > "/logs/mx/mail.log", > "/logs/dyn.log", > "/logs/apache-servers/other.log", > { > "logfile_name": "remote.conf", > "logfile_owner": "root", > "logfile_pattern": "/logs/apache-servers/other.log" > } > ] > } > > Anything I missed? > > > On Wednesday, 13 March 2019 12:50:31 UTC+5:30, Karl Auer wrote: >> >> How dynamic is the content of that source list? One simple approach would >> be: >> >> - logfile_name: remote.conf >> logfile_pattern: "{{ logf_dest[0] }}" >> logfile_owner: root >> - logfile_name: remote.conf >> logfile_pattern: "{{ logf_dest[1] }}" >> logfile_owner: root >> - logfile_name: remote.conf >> logfile_pattern: "{{ logf_dest[2] }}" >> logfile_owner: root >> >> If the list is not always three items long, you can do it with a loop: >> >> - set_fact: >> logdict: "{{ loglist |default([]) + >> [ { >> 'logfile_name': 'remote.conf', >> 'logfile_pattern': item, >> 'logfile_owner': 'root' >> } >> ] }}" >> with_items: "{{ logf_dest }}" >> >> Anyway, something like that. That's off the top of my head, so you may >> need to correct the syntax a bit, but you get the idea. >> >> Regards, k. >> >> >> On Wed, Mar 13, 2019 at 5:55 PM Ashok <[email protected]> wrote: >> >>> Hi All, >>> >>> I have a list ` logf_dest ` (of log files): >>> >>> "logf_dest": [ >>> "/logs/mx/mail.log", >>> "/logs/dyn.log", >>> "/logs/apache-servers/other.log" >>> ] >>> >>> I need to form a "list of dicts" called ` logfile_config `, like the >>> below: >>> >>> - logfile_name: remote.conf >>> logfile_pattern: /logs/mx/mail.log >>> logfile_owner: root >>> >>> >>> - logfile_name: remote.conf >>> logfile_pattern: /logs/dyn.log >>> logfile_owner: root >>> >>> >>> - logfile_name: remote.conf >>> logfile_pattern: /logs/apache-servers/other.log >>> logfile_owner: root >>> >>> >>> I've come this far in doing so: >>> >>> - name: Create list of dicts >>> set_fact: >>> logfile_config: | >>> { >>> {% for k in logf_dest %} >>> logfile_name: remote.conf >>> logfile_pattern: {{ k }} >>> logfile_owner: root >>> {% endfor %} >>> } >>> >>> But, above is obviously not formatted correctly. >>> >>> I need help on what I am missing here. >>> >>> Thanks in advance. >>> >>> -- >>> 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/61b38102-c346-495f-96e5-cd149800d4f9%40googlegroups.com >>> <https://groups.google.com/d/msgid/ansible-project/61b38102-c346-495f-96e5-cd149800d4f9%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> >> -- >> Karl Auer >> >> Email : [email protected] >> Website: http://2pisoftware.com >> >> GPG/PGP : 958A 2647 6C44 D376 3D63 86A5 FFB2 20BC 0257 5816 >> Previous: F0AB 6C70 A49D 1927 6E05 81E7 AD95 268F 2AB6 40EA >> > -- > 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/20098621-047b-4596-b46c-8c14b37df008%40googlegroups.com > <https://groups.google.com/d/msgid/ansible-project/20098621-047b-4596-b46c-8c14b37df008%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- Karl Auer Email : [email protected] Website: http://2pisoftware.com GPG/PGP : 958A 2647 6C44 D376 3D63 86A5 FFB2 20BC 0257 5816 Previous: F0AB 6C70 A49D 1927 6E05 81E7 AD95 268F 2AB6 40EA -- 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/CA%2B%2BT08SQ%3DJaCumQMx3V_sJUW4THF4-8E0T6FF2%2BuHv1OJg4TEQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
