Hi,

This has been driving me mad :).

   - Ansible 2.0.2
   - Ubuntu 14.04

The following task 'hangs' whilst executing in a Docker container:

shell: >
  echo $(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 16 | head -n 1)
  > {{ arbitrary_file_path }}
args:
  executable: /bin/bash

If I get a shell in the same container (whilst it's hung running the task), 
and either run the command directly or run:

ansible 127.0.0.1 -c local -m shell -a "echo $(cat /dev/urandom | tr -dc 
'a-zA-Z0-9' | fold -w 16 | head -n 1) > foo_file executable=/bin/bash"

It works as expected!

If I take a look at the processes whilst it's hung, I get (truncated on the 
right):

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   4448   800 ?        Ss   10:18   0:00 /bin/sh -c 
/srv/provisioning/entrypoint.sh
root         7  0.0  0.0  17968  2868 ?        S    10:18   0:00 /bin/bash 
/srv/provisioning/entrypoint.sh
root         8  8.9  0.1  82740 26568 ?        R    10:18   0:14 python 
/usr/bin/ansible-playbook /srv/provisioning/playbook.yml -c local
root        11  8.8  0.1 155768 23084 ?        Sl   10:18   0:13 python 
/usr/bin/ansible-playbook /srv/provisioning/playbook.yml -c local
root       735  0.0  0.1  97004 25064 ?        S    10:20   0:00 python 
/usr/bin/ansible-playbook /srv/provisioning/playbook.yml -c local
root       742  0.0  0.0   4448   804 ?        S    10:20   0:00 /bin/sh -c 
/bin/sh -c 'LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 LC_MESSAGES=en_US.UTF-
root       743  0.0  0.0   4448   688 ?        S    10:20   0:00 /bin/sh -c 
LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 /usr/bin/p
root       744  0.0  0.0  34820 11812 ?        S    10:20   0:00 
/usr/bin/python 
/home/tru/.ansible/tmp/ansible-tmp-1461234012.13-9745977883185/co
root       745  0.0  0.0  17964  2900 ?        S    10:20   0:00 /bin/bash 
-c echo $(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 16 | head -n 
root       746  0.0  0.0  17972  2184 ?        S    10:20   0:00 /bin/bash 
-c echo $(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 16 | head -n 
root       747 90.3  0.0   4368   668 ?        R    10:20   1:07 cat 
/dev/urandom
root       748  5.8  0.0   4376   772 ?        S    10:20   0:04 tr -dc 
a-zA-Z0-9
root       749  2.2  0.0   4360   708 ?        S    10:20   0:01 fold -w 16

Which makes it look like the final 'head' in the piped chain isn't 
terminating the cat like it typically would. Why that is, I don't know.

Perhaps this makes sense to someone?

Thanks in advance,

JS

-- 
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/09582973-39be-4582-9e6a-ac572ee2a8dd%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to