dynamic inventory and --list printing the groupname

Hi Ansiblers,

I just finished a python program to query our mysql inventory.
when I do python getinv.py --list, i can see the json output. And ‘ansible us-east-1_app1 --list-hosts’ works as well.
The only problem is it also displays the group name in the output. This affects when I check say uptime - ssh says not able to ssh to the group name.
eg,
$>ansible us-east-1_app1 --list-hosts

us-east-1_app1
app000ea2
app002ea1

Any idea why ansible also gets the group name?
Here is the json part…

us-east-1_app1”: {
“children”: [
“app1”
]
},

“app1”: {
“hosts”: [
“app000ea1”,
“app002ea2”
]
},

Any pointers?

Can you please show the full output from the list command?

When creating a dynamic inventory plugin, if you don’t intend on actually putting hosts directly in the group, you still need to include the ‘hosts’ key to the group with an empty list.

Such as:

“us-east-1_app1”: {
“children”: [
“app1”
,]
“hosts”:
},

“app1”: {
“hosts”: [
“app000ea1”,
“app002ea2”
]
},

Not doing so, basically has the outcome that you describe. Ansible assumes that you mean that ‘us-east1_app1’ is to be an ungrouped host.

Hi, Can you share the script in a way, we are looking for ways to do the same.
Thanks!

duminică, 9 februarie 2014, 20:33:39 UTC+1, habeeb rahman a scris: