fixing bug where if both private_ip and assign_public_p are set ansible fails out
This commit is contained in:
parent
f547733b1f
commit
88b30a74d2
1 changed files with 31 additions and 14 deletions
|
@ -814,13 +814,21 @@ def create_instances(module, ec2, override_count=None):
|
|||
msg="assign_public_ip only available with vpc_subnet_id")
|
||||
|
||||
else:
|
||||
interface = boto.ec2.networkinterface.NetworkInterfaceSpecification(
|
||||
subnet_id=vpc_subnet_id,
|
||||
groups=group_id,
|
||||
associate_public_ip_address=assign_public_ip)
|
||||
interfaces = boto.ec2.networkinterface.NetworkInterfaceCollection(interface)
|
||||
params['network_interfaces'] = interfaces
|
||||
|
||||
if private_ip:
|
||||
interface = boto.ec2.networkinterface.NetworkInterfaceSpecification(
|
||||
subnet_id=vpc_subnet_id,
|
||||
private_ip_address=private_ip,
|
||||
groups=group_id,
|
||||
associate_public_ip_address=assign_public_ip)
|
||||
interfaces = boto.ec2.networkinterface.NetworkInterfaceCollection(interface)
|
||||
params['network_interfaces'] = interfaces
|
||||
else:
|
||||
interface = boto.ec2.networkinterface.NetworkInterfaceSpecification(
|
||||
subnet_id=vpc_subnet_id,
|
||||
groups=group_id,
|
||||
associate_public_ip_address=assign_public_ip)
|
||||
interfaces = boto.ec2.networkinterface.NetworkInterfaceCollection(interface)
|
||||
params['network_interfaces'] = interfaces
|
||||
else:
|
||||
params['subnet_id'] = vpc_subnet_id
|
||||
if vpc_subnet_id:
|
||||
|
@ -842,13 +850,22 @@ def create_instances(module, ec2, override_count=None):
|
|||
|
||||
# check to see if we're using spot pricing first before starting instances
|
||||
if not spot_price:
|
||||
params.update(dict(
|
||||
min_count = count_remaining,
|
||||
max_count = count_remaining,
|
||||
client_token = id,
|
||||
placement_group = placement_group,
|
||||
private_ip_address = private_ip,
|
||||
))
|
||||
if assign_public_ip and private_ip:
|
||||
params.update(dict(
|
||||
min_count = count_remaining,
|
||||
max_count = count_remaining,
|
||||
client_token = id,
|
||||
placement_group = placement_group,
|
||||
))
|
||||
else:
|
||||
params.update(dict(
|
||||
min_count = count_remaining,
|
||||
max_count = count_remaining,
|
||||
client_token = id,
|
||||
placement_group = placement_group,
|
||||
private_ip_address = private_ip,
|
||||
))
|
||||
|
||||
res = ec2.run_instances(**params)
|
||||
instids = [ i.id for i in res.instances ]
|
||||
while True:
|
||||
|
|
Loading…
Reference in a new issue