Merge pull request #10503 from bcoca/addhost_addhostvars
now add_host loads hostvars
This commit is contained in:
commit
7aab5d6828
1 changed files with 11 additions and 7 deletions
|
@ -55,7 +55,7 @@ class ActionModule(object):
|
||||||
if ":" in new_name:
|
if ":" in new_name:
|
||||||
new_name, new_port = new_name.split(":")
|
new_name, new_port = new_name.split(":")
|
||||||
args['ansible_ssh_port'] = new_port
|
args['ansible_ssh_port'] = new_port
|
||||||
|
|
||||||
# redefine inventory and get group "all"
|
# redefine inventory and get group "all"
|
||||||
inventory = self.runner.inventory
|
inventory = self.runner.inventory
|
||||||
allgroup = inventory.get_group('all')
|
allgroup = inventory.get_group('all')
|
||||||
|
@ -72,10 +72,10 @@ class ActionModule(object):
|
||||||
# Add any variables to the new_host
|
# Add any variables to the new_host
|
||||||
for k in args.keys():
|
for k in args.keys():
|
||||||
if not k in [ 'name', 'hostname', 'groupname', 'groups' ]:
|
if not k in [ 'name', 'hostname', 'groupname', 'groups' ]:
|
||||||
new_host.set_variable(k, args[k])
|
new_host.set_variable(k, args[k])
|
||||||
|
|
||||||
|
|
||||||
groupnames = args.get('groupname', args.get('groups', args.get('group', '')))
|
groupnames = args.get('groupname', args.get('groups', args.get('group', '')))
|
||||||
# add it to the group if that was specified
|
# add it to the group if that was specified
|
||||||
if groupnames:
|
if groupnames:
|
||||||
for group_name in groupnames.split(","):
|
for group_name in groupnames.split(","):
|
||||||
|
@ -95,13 +95,17 @@ class ActionModule(object):
|
||||||
|
|
||||||
vv("added host to group via add_host module: %s" % group_name)
|
vv("added host to group via add_host module: %s" % group_name)
|
||||||
result['new_groups'] = groupnames.split(",")
|
result['new_groups'] = groupnames.split(",")
|
||||||
|
|
||||||
|
|
||||||
|
# actually load host vars
|
||||||
|
new_host.vars = inventory.get_host_variables(new_name, update_cached=True, vault_password=inventory._vault_password)
|
||||||
|
|
||||||
result['new_host'] = new_name
|
result['new_host'] = new_name
|
||||||
|
|
||||||
# clear pattern caching completely since it's unpredictable what
|
# clear pattern caching completely since it's unpredictable what
|
||||||
# patterns may have referenced the group
|
# patterns may have referenced the group
|
||||||
inventory.clear_pattern_cache()
|
inventory.clear_pattern_cache()
|
||||||
|
|
||||||
return ReturnData(conn=conn, comm_ok=True, result=result)
|
return ReturnData(conn=conn, comm_ok=True, result=result)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue