Hii

If you

1. Properly format your playbook to be a list of plays
2. Use shell
3. Don't use {{ }} around the var in your debug task

Then it works:

TASK [get file server's IP address]
****************************************************************
changed: [villa -> localhost]

TASK [debug]
***************************************************************************************
ok: [villa] =>
  fs_ip_addr:
    changed: true
    cmd: grep prod-fs1 /etc/hosts | awk '{ print $0 }'
    delta: '0:00:00.008973'
    end: '2020-03-04 00:36:05.873228'
    failed: false
    rc: 0
    start: '2020-03-04 00:36:05.864255'
    stderr: ''
    stderr_lines: []
    stdout: 10.10.10.20 prod-fs1
    stdout_lines:
    - 10.10.10.20 prod-fs1

But I would also recommend:

4. Dropping privilege escalation for local actions
5. Use "print $1" as this will match the actual IP
6. Use 'stdout' sa this will be the actual IP

Thus the playbook would be:

---
- hosts: all
  gather_facts: yes
  become: yes

  pre_tasks:
    - name: get file server's IP address
      shell: "grep prod-fs1 /etc/hosts | awk '{ print $1 }'"
      register: fs_ip_addr
      become: no
      delegate_to: localhost

    - debug: var=fs_ip_addr.stdout


And then output would be:


TASK [debug]
***********************************************************************************************
ok: [villa] =>
  fs_ip_addr.stdout: 10.10.10.20



Although shell+grep+awk still sounds fragile


Dick







On Tue, 3 Mar 2020 at 22:47, Robert F <robert.flaug...@gmail.com> wrote:

> I neglected to mention that I did try the shell and it did not fix the
> problem.  But thanks for the suggestion!
>
> On Tuesday, March 3, 2020 at 1:32:24 PM UTC-8, Juerg Ritter wrote:
>>
>> Hi Robert,
>>
>> Try using the shell module instead of the command module. The command
>> module doesn't execute a command in a shell, hence you cannot use shell
>> functionality such as a pipes and redirections.
>>
>> Hope that helps!
>>
>> --Juerg
>>
>> --
> 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 ansible-project+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/19190c01-4a38-4e11-8d16-eca599df6037%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/19190c01-4a38-4e11-8d16-eca599df6037%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>


-- 
Dick Visser
Trust & Identity Service Operations Manager
GÉANT

-- 
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 ansible-project+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CAL8fbwMpNxrujF-Hw5O8_7iXmTi9Qxq_LmzUx3w_vNKVv1YWDQ%40mail.gmail.com.

Reply via email to