I merged in support for specifying :ro/:rw a few weeks ago, and it was
included in the 1.7.1 release.


On Tue, Aug 26, 2014 at 2:26 PM, Steven Truong <[email protected]> wrote:

> TASK: [echo $myhome]
> **********************************************************
> ok: [localhost] => {
>     "myhome": {
>         "changed": true,
>         "cmd": "echo $HOME",
>         "delta": "0:00:00.165168",
>         "end": "2014-08-26 19:22:36.055947",
>         "invocation": {
>             "module_args": "echo $HOME",
>             "module_name": "shell"
>         },
>         "rc": 0,
>         "start": "2014-08-26 19:22:35.890779",
>         "stderr": "",
>         "stdout": "/root",
>         "stdout_lines": [
>             "/root"
>         ]
>     }
> }
>
>
> I removed :rw and :ro and it still did not work. I think that Ansible does
> not support these third fields yet.
>
> Steven.
>
> On Tuesday, August 26, 2014 12:16:30 PM UTC-7, James Cammarata wrote:
>
>> If you remove the variables and hard-code the paths, does it work for you
>> then? I'm curious if things like spaces/newlines in the stdout variables
>> you're using are causing the problem.
>>
>> You might want to put in a "- debug: var=myhome" before the docker task
>> to view the value of stdout there.
>>
>>
>> On Tue, Aug 26, 2014 at 2:05 PM, Steven Truong <[email protected]>
>> wrote:
>>
>>> Hi all,
>>>
>>> I tried to use the volumes option and nothing seems to work for me.
>>>
>>> I want to mount 2 directories ~/dockerstorage/model and
>>> ~/repo/ops/ansible to the container and I used either of these commands and
>>> nothing worked.
>>>
>>>  docker: image=registry.my.com:5000/steven/centos65_prod_ready:v1
>>> docker_url=tcp://{{ ansible_default_ipv4.address }}:7777
>>> publish_all_ports=True state=running volumes=/home/kafka/models:{{
>>> myhome.stdout }}/dockerstorage/models:rw,/usr/local/src/ansible:{{
>>> myhome.stdout }}/repo/ops/ansible:ro
>>>
>>>  docker: image=registry.my.com:5000/steven/centos65_prod_ready:v1
>>> docker_url=tcp://{{ ansible_default_ipv4.address }}:7777
>>> publish_all_ports=True state=running volumes={{ myhome.stdout
>>> }}/dockerstorage/models:/home/kafka/models:rw,{{ myhome.stdout
>>> }}/repo/ops/ansible:/usr/local/src/ansible:ro
>>>
>>> I sshed into the containers and the mounted points in either case were
>>> all empty.
>>>
>>> I ran using docker directly and it worked for me:
>>>
>>>
>>>
>>> docker run -d -P  -v 
>>> /home/steven/dockerstorage/models:/home/kafka/models:rw -v 
>>> /home/steven/repo/ops/ansible:/usr/local/src/ansible:ro 
>>> registry.my.com:5000/steven/centos65_prod_ready:v1
>>>
>>>
>>>
>>>
>>> Please let me know what is the right ways to use "volumes" for docker.
>>>  From the comments in the docker module, it appears to me that the
>>> /mnt:/tmp is in reversed orders from those of the docker command line
>>> because of the case when we just want to create a volume such as /mnt and
>>> there is no equivalent mounted point from the host.  I think that this is
>>> confusing and users have to read the codes to find out.
>>>
>>> Thanks,
>>> Steven.
>>>
>>> [root@sc2-dock1 cloud]# pwd
>>> /usr/local/ansible/library/cloud
>>>
>>>
>>> class DockerManager:
>>>
>>>     counters = {'created':0, 'started':0, 'stopped':0, 'killed':0,
>>> 'removed':0, 'restarted':0, 'pull':0}
>>>
>>>     def __init__(self, module):
>>>         self.module = module
>>>
>>>         self.binds = None
>>>         self.volumes = None
>>>         if self.module.params.get('volumes'):
>>>             self.binds = {}
>>>             self.volumes = {}
>>>             vols = self.module.params.get('volumes')
>>>             for vol in vols:
>>>                 parts = vol.split(":")
>>>                 # host mount (e.g. /mnt:/tmp, bind mounts host's /tmp to
>>> /mnt in the container)
>>>                 if len(parts) == 2:
>>>                     self.volumes[parts[1]] = {}
>>>                     self.binds[parts[0]] = parts[1]
>>>                 # docker mount (e.g. /www, mounts a docker volume /www
>>> on the container at the same location)
>>>                 else:
>>>                     self.volumes[parts[0]] = {}
>>>
>>>
>>>
>>>  --
>>> 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/40310529-7426-4321-b9a6-
>>> 20a9f73d9005%40googlegroups.com
>>> <https://groups.google.com/d/msgid/ansible-project/40310529-7426-4321-b9a6-20a9f73d9005%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>  --
> 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/5f1b7eb9-d3b1-4907-b01f-ae291f16b636%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/5f1b7eb9-d3b1-4907-b01f-ae291f16b636%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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/CAMFyvFh8NN1w8WH_squVg9Xmua%3DBSZsH%2B44_rc7S3FhkYgv-Qw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to