Yupper, that worked. And, I appreciate the explanation. As the Farber 
College motto states, "Learning is Good".

On Thursday, May 23, 2024 at 11:30:33 AM UTC-4 Todd Lewis wrote:

> Gah! Of course. known.stdout_lines is a list, so
>
> loop:
>   - '{{ known.stdout_lines }}'
>
> passes the whole list as a single item. So you need to not put the list in 
> a list:
>
> loop: '{{ known.stdout_lines }}'
>
> should do the trick.
> —
> Todd
>
>
> On 5/23/24 11:17 AM, Dimitri Yioulos wrote:
>
> Todd, I made the change, but, the last play failed:
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> *TASK [Append to all known_host files] 
> *****************************************************************************************************
>  
> Thursday 23 May 2024  11:06:33 -0400 (0:00:01.629)       0:00:06.012 
> ********** Thursday 23 May 2024  11:06:33 -0400 (0:00:01.629)       
> 0:00:06.011 ********** failed: [myhost] (item=['/root/.ssh/known_hosts', 
> '/home/user1/.ssh/known_hosts', '/home/user2/.ssh/known_hosts', 
> '/home/user3/.ssh/known_hosts', '/home/user4/.ssh/known_hosts']) => 
> changed=true   ansible_loop_var: item   cmd: cat /tmp/append >> 
> ['/root/.ssh/known_hosts', '/home/user1/.ssh/known_hosts', 
> '/home/user2/.ssh/known_hosts', '/home/user3/.ssh/known_hosts', 
> '/home/user4/.ssh/known_hosts']   delta: '0:00:00.012330'   end: 
> '2024-05-23 11:06:33.947617'   item:   - /root/.ssh/known_hosts   - 
> /home/user1/.ssh/known_hosts   - /home/user2/.ssh/known_hosts   - 
> /home/user3/.ssh/known_hosts   - /home/user4/.ssh/known_hosts   msg: 
> non-zero return code   rc: 1   start: '2024-05-23 11:06:33.935287'   
> stderr: '/bin/sh: line 1: [/root/.ssh/known_hosts,: No such file or 
> directory'   stderr_lines: <omitted>   stdout: ''   stdout_lines: <omitted>*
>
> I wonder if *[ *in  *[/root/.ssh/known_hosts* is getting in the way, 
> since  */root/.ssh/known_host* does exist.
>
> On Thursday, May 23, 2024 at 10:50:28 AM UTC-4 Todd Lewis wrote:
>
>> You want stdout_lines rather than stdout. The former is a list with 
>> new-lines removed. The latter is a possibly very long string with the 
>> complete output stream intact.
>>
>>     - name: Append to all known_host files
>>       shell: cat /tmp/append >> {{ item }}
>>       loop:
>>         - '{{ known.stdout_lines }}'
>>
>>
>> On 5/23/24 9:07 AM, Dimitri Yioulos wrote:
>>
>> Good day, all. I hope I'm not wearing out my welcome with too many 
>> questions.
>>
>> In the following playbook, I first find any know_host file for any user 
>> on a particular system. I then copy a file with the list of additions to 
>> add to the known_hosts files. What I want to do is use the output of my 
>> register values to make changes to those know_host files, which my last 
>> play does. My iteration is wrong, though.
>>
>> The playbook:
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> *--- - hosts: all   gather_facts: false   become: yes   vars:     
>> script_path: <script>   tasks:     - name: Find known hosts       shell: 
>> find /root /home -type f -name known_hosts       register: known     - 
>> name: Debug known_hosts paths       debug:         msg: "{{ known.stdout 
>> }}"     - name: Set fact with known_hosts paths       set_fact:         
>> known_hosts_paths: "{{ known.stdout_lines }}"     - name: Upload entries 
>> for new known_hosts svn       copy:         src: append         dest: 
>> /tmp/append         owner: root         group: root         mode: 
>> u=rwx,g=rw,o=rw     - name: Append to all known_host files       shell: cat 
>> /tmp/append >> {{ item }}       loop:         - '{{ known.stdout }}'*
>>
>> The output of the first play:
>>
>>
>>
>>
>>
>>
>>
>> *ok: [myhost] =>   msg: |-     /root/.ssh/known_hosts     
>> /home/user1/.ssh/known_hosts     /home/ user2/.ssh/known_hosts     /home/ 
>> user3/.ssh/known_hosts     /home/ user4/.ssh/known_hosts*
>>
>> How do I make that last play work? -- 
>> 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 view this discussion on the web visit 
>> https://groups.google.com/d/msgid/ansible-project/84e78306-66cf-4d86-8b45-d1c4816c598en%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/ansible-project/84e78306-66cf-4d86-8b45-d1c4816c598en%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>>
>> -- 
>> Todd
>>
>> -- 
> 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 view this discussion on the web visit 
> https://groups.google.com/d/msgid/ansible-project/48b522d1-3503-4606-958b-29ab38398f5en%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/ansible-project/48b522d1-3503-4606-958b-29ab38398f5en%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
>
> -- 
> Todd
>
>

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/f3efd5f6-9340-4017-b609-6ca0d3ac9c0dn%40googlegroups.com.

Reply via email to