sparse-intern-71089
02/15/2023, 12:07 PMechoing-dinner-19531
02/15/2023, 2:20 PMgreat-sunset-355
02/15/2023, 3:31 PMContainerDefinitions
from AWS ECS diffs
because the classic provider supports only string which is complicated to read with multiple containers
https://www.pulumi.com/registry/packages/aws/api-docs/ecs/taskdefinition/#containerdefinitions_nodejs
And awsnative
cannot be used because they consider an array of container definitions as unordered which makes pulumi diffs
useless if you add/remove an item from the array and index changes
https://www.pulumi.com/registry/packages/aws/api-docs/ecs/taskdefinition/#containerdefinitions_nodejs
So my idea was to build a Dynamic provider just to store the values in the state file to give me nice diffs.
And to avoid problem with array diffs, I though I could use the name
property from container definition and create an Output object, which I partially succeeded but then I realized that it will only work as long as the name
is a string, not an Input.
Any tips on what I could do instead?
I wanted to avoid stack outputs because they just flood the CLI with a wall of textechoing-dinner-19531
02/15/2023, 4:22 PMsteep-toddler-94095
02/15/2023, 5:15 PMgreat-sunset-355
02/16/2023, 9:32 AMgreat-sunset-355
02/17/2023, 2:58 PMawsnative.ecs.TaskDefinition
unmasks secret outputs in the state under some conditions. Shall this be considered a bug?
I do not have a problem with that mainly the opposite - when containerDefinitions
aray contains a secret value, the entire array is encrypted and the ability get useful diff is gone.great-sunset-355
02/17/2023, 3:00 PM[{k: secretValue}, {k: publicValue}]
echoing-dinner-19531
02/17/2023, 3:08 PMunmasks secret outputs in the state under some conditions. Shall this be considered a bug?Unmasking is probably a bug
I mean that the entire array of objects is considered a secret and masked, instead of a single value inside nested objectUrgh yeh it's the awkwardness of returning
Output<T[]>
instead of Output<Output<T>[]>
, generally collapsing the layers of outputs down so you only have to deal with one layer is easier, but it means if there's a secret any where in the response the whole thing gets marked secret.
Might be possible for engine state to keep track of it for each layer, but soon as it hits your program the value will get flattened.great-sunset-355
02/17/2023, 4:34 PMOutput<Output<T>[]>
to get the diff, right?