-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Closed
Closed
ecs.FargateService: from_service_arn_with_cluster not accepting value from SSM Parameter string#30798
#30902 (+9)
Copy link
Labels
@aws-cdk/aws-ecsRelated to Amazon Elastic ContainerRelated to Amazon Elastic ContainerbugThis issue is a bug.This issue is a bug.effort/smallSmall work item – less than a day of effortSmall work item – less than a day of effortp1
Description
Describe the bug
When retrieving a Fargate service arn from the parameter store and passing it to the function from_service_arn_with_cluster it throws the runtime exception: RuntimeError: Error: resource name ${Token[TOKEN.236]} from service ARN: ${Token[TOKEN.226]} is not using the ARN cluster format
Expected Behavior
accept the format
Current Behavior
raises exception RuntimeError: Error: resource name ${Token[TOKEN.236]} from service ARN: ${Token[TOKEN.226]} is not using the ARN cluster format
Reproduction Steps
class TestIacStack(Stack):
def __init__(self, scope: Construct, construct_id: str, **kwargs) -> None:
super().__init__(scope, construct_id, **kwargs)
# The code that defines your stack goes here
alb_ecs_service = ecs_patterns.ApplicationLoadBalancedFargateService(self, 'Service',
cluster=ecs.Cluster(self,
'my_cluster',
cluster_name="TestCluster"
),
memory_limit_mib=512,
cpu=0.5,
task_image_options=ecs_patterns.ApplicationLoadBalancedTaskImageOptions(
image=ecs.ContainerImage.from_registry(
"amazon/amazon-ecs-sample")),
public_load_balancer=True,
desired_count=1,
)
ssm.StringParameter(self, "ssm_param",
parameter_name="ServiceArn",
string_value=alb_ecs_service.service.service_arn,
)
ecs_service_arn = ssm.StringParameter.value_for_string_parameter(
self,
parameter_name="ServiceArn",
)
ecs_service = ecs.FargateService.from_service_arn_with_cluster(self, "FargateServiceArn",
service_arn=ecs_service_arn)
deploy_action = pipelineactions.EcsDeployAction(
action_name="DeployToStage",
service=ecs_service,
image_file=codepipeline.ArtifactPath(codepipeline.Artifact("BuildArtifact"), 'imagedefinitions.json'),
# deployment_timeout=Duration.minutes(60),
)
Possible Solution
No response
Additional Information/Context
No response
CDK CLI Version
2.148.0 (build e5740c0)
Framework Version
No response
Node.js Version
v18.19.1
OS
Linux
Language
Python
Language Version
3.9.19
Other information
I am trying to retrieve the ecs service from arn in a different module for passing it to a pipeline action as shown in the example above
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
@aws-cdk/aws-ecsRelated to Amazon Elastic ContainerRelated to Amazon Elastic ContainerbugThis issue is a bug.This issue is a bug.effort/smallSmall work item – less than a day of effortSmall work item – less than a day of effortp1