Overriding value of 'hosts' playbook variable

835 views
Skip to first unread message

JC

unread,
May 10, 2014, 10:10:10 PM5/10/14
to ansible...@googlegroups.com
Hi guys,

Anyone know if you can completely override the hosts: value in a playbook?

I don't use inventory files so I always just have this set to 'all'.  But when I call a playbook from another playbook like this, for example:

# Playbook1
- name: Format EBS volumes
  hosts: ec2_group # coming from the ec2 module and add_host
...

- include: playbook2.yml hosts=ec2_group

or 

- { include: playbook2.yml, hosts: ec2_group }

It works but then it also tries to run the playbook to the 'all' group (which is everything in my default hosts file).  I want the 'all' value to be completely overridden by the new value I specified.

Is there a better way to do this without creating an inventory file?

Thanks

Paul Durivage

unread,
May 12, 2014, 10:38:06 AM5/12/14
to ansible...@googlegroups.com
I don't think what you want to do is override a value at runtime, but rather create a new group dynamically at runtime.  Make a new group for hosts that meet some arbitrary criteria.  See the group_by module -- I think you'll find what you're looking for there.


--
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-proje...@googlegroups.com.
To post to this group, send email to ansible...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/9b3f20c0-ac19-4ea1-97da-2fc848588b39%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Michael DeHaan

unread,
May 12, 2014, 1:13:10 PM5/12/14
to ansible...@googlegroups.com
I'm confused by this as well.

When you say you are not using an inventory file, do you mean you are using the dynamic inventory plugin?

If you want a group that contains just the new hosts you have brought online, or want to add new hosts (in memory) to an existing host name, look at how the "add_host" plugin is used in various examples -- it does exactly this.



Reply all
Reply to author
Forward
0 new messages