terraform/internal/stacks/tfstackdata1
Martin Atkins bcccd67e32 tfstackdata1: A local DynamicValue message type
Previously we were directly using the planproto.DynamicValue message type,
but that's symmetrical with plans.DynamicValue in that it encodes only
the value itself and not associated metadata such as the paths that have
sensitive value marks.

This new tfstackdata1.DynamicValue therefore echoes
terraform1.DynamicValue by carrying both the value and the metadata
together.

This implies a slight change to one of the existing message types that
was encoding a map of planned input values for each component instance,
but in practice we're not currently making use of that data anyway -- it's
there to enable a hypothetical extra correctness check in the stacks
runtime so that we can detect inconsistency problems closer to their
source -- and so this change doesn't affect anything in practice. Before
we make use of it we'll probably want to change the internal API a little
so that we can preserve the sensitive value metadata on those values, but
that's beyond the scope of this PR.

The main point of adding this is to track the output values for a component
instance as part of the raw state, and so the new field for that is also
added here although nothing will read or write it yet. Actual use of that
new field will follow in future commits.
2023-12-08 10:20:20 -08:00
..
convert.go tfstackdata1: A local DynamicValue message type 2023-12-08 10:20:20 -08:00
tfstackdata1.pb.go tfstackdata1: A local DynamicValue message type 2023-12-08 10:20:20 -08:00
tfstackdata1.proto tfstackdata1: A local DynamicValue message type 2023-12-08 10:20:20 -08:00