[cloud] Only enforce state (running/stopped/etc) in EC2 "exact_count" when state is specified (#31648)
fix issue in ec2 module where exact count would create new instances if the instane state is stopped or terminated
This commit is contained in:
parent
90b6178e61
commit
53e476ad4e
1 changed files with 7 additions and 2 deletions
|
@ -639,13 +639,18 @@ except ImportError:
|
|||
|
||||
def find_running_instances_by_count_tag(module, ec2, vpc, count_tag, zone=None):
|
||||
|
||||
# get reservations for instances that match tag(s) and are running
|
||||
reservations = get_reservations(module, ec2, vpc, tags=count_tag, state="running", zone=zone)
|
||||
# get reservations for instances that match tag(s) and are in the desired state
|
||||
state = module.params.get('state')
|
||||
if state not in ['running', 'stopped']:
|
||||
state = None
|
||||
reservations = get_reservations(module, ec2, vpc, tags=count_tag, state=state, zone=zone)
|
||||
|
||||
instances = []
|
||||
for res in reservations:
|
||||
if hasattr(res, 'instances'):
|
||||
for inst in res.instances:
|
||||
if inst.state == 'terminated':
|
||||
continue
|
||||
instances.append(inst)
|
||||
|
||||
return reservations, instances
|
||||
|
|
Loading…
Reference in a new issue