check for change of role arn in ecs task definition (#44942)

* check role arn for ecs task definition

If the task role in a ECS task definition changes ansible should create a new revsion of the task definition.

(cherry picked from commit 71c4355d58)
This commit is contained in:
Andrew McGilvray 2018-09-07 05:43:30 +10:00 committed by Toshio Kuratomi
parent 26a96c72b2
commit d8c687f638

View file

@ -390,10 +390,13 @@ def main():
return True
def _task_definition_matches(requested_volumes, requested_containers, existing_task_definition):
def _task_definition_matches(requested_volumes, requested_containers, requested_task_role_arn, existing_task_definition):
if td['status'] != "ACTIVE":
return None
if requested_task_role_arn != td.get('taskRoleArn', ""):
return None
existing_volumes = td.get('volumes', []) or []
if len(requested_volumes) != len(existing_volumes):
@ -433,9 +436,10 @@ def main():
# No revision explicitly specified. Attempt to find an active, matching revision that has all the properties requested
for td in existing_definitions_in_family:
requested_volumes = module.params.get('volumes', []) or []
requested_containers = module.params.get('containers', []) or []
existing = _task_definition_matches(requested_volumes, requested_containers, td)
requested_volumes = module.params['volumes'] or []
requested_containers = module.params['containers'] or []
requested_task_role_arn = module.params['task_role_arn']
existing = _task_definition_matches(requested_volumes, requested_containers, requested_task_role_arn, td)
if existing:
break