From 4636a2afc3dbdfaede3030553a2e1109fc0d52f1 Mon Sep 17 00:00:00 2001 From: William Richard Date: Wed, 4 Apr 2018 15:05:51 -0400 Subject: [PATCH] Add physical_resource_id to ECS task definition --- moto/ecs/models.py | 4 ++++ tests/test_ecs/test_ecs_boto3.py | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/moto/ecs/models.py b/moto/ecs/models.py index e0b29cb01..3ae360d69 100644 --- a/moto/ecs/models.py +++ b/moto/ecs/models.py @@ -109,6 +109,10 @@ class TaskDefinition(BaseObject): del response_object['arn'] return response_object + @property + def physical_resource_id(self): + return self.arn + @classmethod def create_from_cloudformation_json(cls, resource_name, cloudformation_json, region_name): properties = cloudformation_json['Properties'] diff --git a/tests/test_ecs/test_ecs_boto3.py b/tests/test_ecs/test_ecs_boto3.py index 5fcc297aa..53042ed02 100644 --- a/tests/test_ecs/test_ecs_boto3.py +++ b/tests/test_ecs/test_ecs_boto3.py @@ -1319,15 +1319,20 @@ def test_create_task_definition_through_cloudformation(): } template_json = json.dumps(template) cfn_conn = boto3.client('cloudformation', region_name='us-west-1') + stack_name = 'test_stack' cfn_conn.create_stack( - StackName="test_stack", + StackName=stack_name, TemplateBody=template_json, ) ecs_conn = boto3.client('ecs', region_name='us-west-1') resp = ecs_conn.list_task_definitions() len(resp['taskDefinitionArns']).should.equal(1) + task_definition_arn = resp['taskDefinitionArns'][0] + task_definition_details = cfn_conn.describe_stack_resource( + StackName=stack_name,LogicalResourceId='testTaskDefinition')['StackResourceDetail'] + task_definition_details['PhysicalResourceId'].should.equal(task_definition_arn) @mock_ec2 @mock_ecs