aws/aws-cdk
View on GitHubAutomatically refer to the appropriate, regional FireLens image with addFirelensLogRouter()
Open
#7,366 opened on Apr 15, 2020
@aws-cdk/aws-ecr@aws-cdk/aws-ecseffort/smallfeature-requestgood first issuep2
Description
The documentation suggests using Amazon's own ECR images for the FireLens container. However, image is a required property.
It would be a nice convenience if CDK could determine the destination stack's region and automatically use the proper ecr.Repository.fromRepositoryArn() behavior.
Use Case
Today, I can get this behavior manually, but I had to generate the reference myself:
// Amazon recommends pulling this image from their regional ECR repo
// https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html#firelens-using-fluentbit
const awsEcrRepo = ecr.Repository.fromRepositoryArn(
parent,
"AWSFireLensRepo",
"arn:aws:ecr:us-west-2:906394416424:repository/aws-for-fluent-bit",
);
taskDefinition.addFirelensLogRouter("DatadogFirelensLogRouter", {
image: ecs.ContainerImage.fromEcrRepository(awsEcrRepo, "latest"),
memoryReservationMiB: 50,
essential: true,
firelensConfig: {
type: ecs.FirelensLogRouterType.FLUENTBIT,
options: {
enableECSLogMetadata: true,
configFileType: ecs.FirelensConfigFileType.FILE,
configFileValue: "/fluent-bit/configs/parse-json.conf",
},
},
});
Proposed Solution
Ideally, image on FirelensLogRouterDefinitionOptions is an optional parameter and defaults to the proper ECR image from this table in the docs.
Other
- :wave: I may be able to implement this feature request
- :warning: This feature might incur a breaking change
This is a :rocket: Feature Request