clever-shoe-73725
01/16/2025, 12:37 PMpulumi up
again, I'm getting following exception. As I understand this is expected, but I can't make any changes on my stack. I can use code deploy for ECS deployment, that's ok. But I want to make some changes on other things and I'm not able to. Is there a workaround for this?
Here is my code.
* updating ECS Service (arn:aws:ecs:us-east-1:xxxxx): operation error ECS: UpdateService, https response error StatusCode: 400, RequestID: xxxxxxxx, InvalidParameterException: Unable to update task definition on services with a CODE_DEPLOY deployment controller. Use AWS CodeDeploy to trigger a new deployment.
quick-house-41860
01/16/2025, 4:39 PMclever-shoe-73725
01/16/2025, 4:45 PMquick-house-41860
01/16/2025, 4:51 PMignoreChanges
?clever-shoe-73725
01/17/2025, 9:15 AMnew awsx.ecs.FargateService
is no respecting ignoreChanges
parameter, but new aws.ecs.Service
does. Probably I'll need to refactor my original code to use new aws.ecs.Service
instead of awsx.ecs.FargateService
.
ignoreChanges: ['desiredCount', 'loadBalancers', 'taskDefinition'],
quick-house-41860
01/17/2025, 9:16 AMtransforms
resource option to set ignore changes on the child resources: https://www.pulumi.com/docs/iac/concepts/options/transforms/clever-shoe-73725
01/17/2025, 9:17 AMquick-house-41860
01/17/2025, 9:20 AMignoreChanges
is part of the generic base class for all resources. It's not like components do not support ignoreChanges
, but it's up to the component implementor to decide how to pass that to the components childs. In most cases this is difficult to implement given that you rarely want ignoreChanges
to apply to all the child resources.clever-shoe-73725
01/17/2025, 10:23 AMtransforms: [
(args) => {
if (args.type === 'aws:ecs/service:Service') {
return {
props: args.props,
opts: pulumi.mergeOptions(args.opts, {
ignoreChanges: ['desiredCount', 'loadBalancers', 'taskDefinition'],
}),
}
}
return undefined
},
],