Michael,

With containers (versus VMs), you ideally can run a LOT of them on a single 
host. RedHat did a demo with 1000s of them 
running: http://www.theregister.co.uk/2014/04/15/red_hat_project_atomic_docker/

Maybe I'm not understanding what you are saying, and apologies in advance ;)

So, I was looking at the code but having a _heck_ of a time figuring out 
how to do some in-depth debugging. I want to print out a dictionary 
("containers" in this case)

def get_deployed_containers(self):
        # determine which images/commands are running already
        containers = self.client.containers(all=True)
        image = self.module.params.get('image')
        command = self.module.params.get('command')
        if command:
            command = command.strip()
        name = self.module.params.get('name')
        if name and not name.startswith('/'):
            name = '/' + name
        deployed = []

I'm new to Ansible, I will admit, and using my tried-and-true "print" 
statement debugging tool breaks an ansible run. I'd like to know the trick 
to being able to debug Python code that runs ansible. 

Regards,

Patrick

On Wednesday, April 16, 2014 10:13:16 PM UTC-4, Michael DeHaan wrote:
>
> Yep yep!
>
> Paul nailed it.
>
> Ideally every cloud module would support an exact_count like was done for 
> Rackspace and EC2, where it makes that number of containers exist.
>
> Though I'm a little unclear why you'd want multiple docker containers on 
> the same host, the way that sucker runs (i.e. it's not a cloud API so those 
> images get all on the same box).
>
> --Michael
>
>
>
>
> On Wed, Apr 16, 2014 at 10:09 PM, Patrick Galbraith 
> <[email protected]<javascript:>
> > wrote:
>
>> Thanks! I could actually tinker with this. I'm comfortable with ansible 
>> source now, having a pull-request in for the nova_compute module (ahem :) 
>> What you describe seems to be the case and in fact I was running with -vvvv 
>> and noticed this. 
>>
>>
>> On Wednesday, April 16, 2014 7:41:36 PM UTC-4, Paul Durivage wrote:
>>
>>> I'll venture a guess as to what is happening here, but I don't know for 
>>> sure.  I guess I could look at the source.  ;)
>>>
>>> I think what's happening here is that with_sequence is actually invoking 
>>> a new module build/upload/run for every item in the with_sequence, and 
>>> thereby overwriting the docker_containers variable with the facts from the 
>>> last docker module run. So, it's a guess, but you could probably verify 
>>> that by running with some extra verbosity (I think you need at least -vv). 
>>>  This is definitely not happening in the first container launch, because 
>>> it's passing those values directly to the module, running only once.
>>>
>>> If you don't give it a shot, I'll probably take a look at it in the 
>>> morning.
>>>
>>> Let me know what you find!
>>>
>>>
>>> On Wed, Apr 16, 2014 at 4:41 PM, Patrick Galbraith <[email protected]>wrote:
>>>
>>>>  Hi all!
>>>>
>>>> I have what I think is a simple question. It pertains to what is 
>>>> visible/available in the "docker_containers" dictionary when running a run 
>>>> book.
>>>>
>>>> Ok, so, what’s throwing me off is whether to use  one of the following:
>>>>
>>>> - name launch containers
>>>>
>>>>   docker: image=df02bd73464a count={{ start_containers_count }}
>>>>
>>>> Or
>>>>
>>>> - name launch containers
>>>>
>>>>   docker: image=df02bd73464a name=somename_{{item}}
>>>>
>>>>   with_sequence: count={{ start_containers_count }}
>>>>
>>>> It is the first snippet that works for doing this next task:
>>>>
>>>> - name: print container info
>>>>
>>>>   debug: msg="{{item['NetworkSettings']['IPAddress']}}"
>>>>
>>>>   with_items: docker_containers
>>>>
>>>> Why? Because the latter results in “docker_containers” only having the 
>>>> last container’s information (last container launched), whereas the former 
>>>> gives me all of them.
>>>>
>>>>
>>>> It’s probably something really simple…
>>>>
>>>> -- 
>>>> 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/5145e9f6-0aa0-45ee-af33-
>>>> c50c37d82b06%40googlegroups.com<https://groups.google.com/d/msgid/ansible-project/5145e9f6-0aa0-45ee-af33-c50c37d82b06%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] <javascript:>.
>> To post to this group, send email to [email protected]<javascript:>
>> .
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/ansible-project/0274085d-cb0d-4450-bf63-326e39df5658%40googlegroups.com<https://groups.google.com/d/msgid/ansible-project/0274085d-cb0d-4450-bf63-326e39df5658%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/8ac6673f-d563-42e6-832f-73c1bc8f3cef%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to