plans: Include target addresses in the plan
We shouldn't really need these because the plan is already filtered to include diffs only for targeted resources, but we currently rely on this to filter out non-resource items from the diff, and so we'll retain it for now to avoid reworking how the apply-time graph builder works.
This commit is contained in:
parent
d9dfd135c6
commit
074db88636
|
@ -52,7 +52,7 @@ func (x Action) String() string {
|
|||
return proto.EnumName(Action_name, int32(x))
|
||||
}
|
||||
func (Action) EnumDescriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{0}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{0}
|
||||
}
|
||||
|
||||
type ResourceInstanceChange_ResourceMode int32
|
||||
|
@ -75,7 +75,7 @@ func (x ResourceInstanceChange_ResourceMode) String() string {
|
|||
return proto.EnumName(ResourceInstanceChange_ResourceMode_name, int32(x))
|
||||
}
|
||||
func (ResourceInstanceChange_ResourceMode) EnumDescriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{3, 0}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{3, 0}
|
||||
}
|
||||
|
||||
// Plan is the root message type for the tfplan file
|
||||
|
@ -101,6 +101,10 @@ type Plan struct {
|
|||
// outputs that are not changing, as context for detecting inconsistencies
|
||||
// at apply time.
|
||||
OutputChanges []*OutputChange `protobuf:"bytes,4,rep,name=output_changes,json=outputChanges,proto3" json:"output_changes,omitempty"`
|
||||
// An unordered set of target addresses to include when applying. If no
|
||||
// target addresses are present, the plan applies to the whole
|
||||
// configuration.
|
||||
TargetAddrs []string `protobuf:"bytes,5,rep,name=target_addrs,json=targetAddrs,proto3" json:"target_addrs,omitempty"`
|
||||
// The version string for the Terraform binary that created this plan.
|
||||
TerraformVersion string `protobuf:"bytes,14,opt,name=terraform_version,json=terraformVersion,proto3" json:"terraform_version,omitempty"`
|
||||
// SHA256 digests of all of the provider plugin binaries that were used
|
||||
|
@ -118,7 +122,7 @@ func (m *Plan) Reset() { *m = Plan{} }
|
|||
func (m *Plan) String() string { return proto.CompactTextString(m) }
|
||||
func (*Plan) ProtoMessage() {}
|
||||
func (*Plan) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{0}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{0}
|
||||
}
|
||||
func (m *Plan) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_Plan.Unmarshal(m, b)
|
||||
|
@ -166,6 +170,13 @@ func (m *Plan) GetOutputChanges() []*OutputChange {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (m *Plan) GetTargetAddrs() []string {
|
||||
if m != nil {
|
||||
return m.TargetAddrs
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *Plan) GetTerraformVersion() string {
|
||||
if m != nil {
|
||||
return m.TerraformVersion
|
||||
|
@ -201,7 +212,7 @@ func (m *Backend) Reset() { *m = Backend{} }
|
|||
func (m *Backend) String() string { return proto.CompactTextString(m) }
|
||||
func (*Backend) ProtoMessage() {}
|
||||
func (*Backend) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{1}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{1}
|
||||
}
|
||||
func (m *Backend) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_Backend.Unmarshal(m, b)
|
||||
|
@ -267,7 +278,7 @@ func (m *Change) Reset() { *m = Change{} }
|
|||
func (m *Change) String() string { return proto.CompactTextString(m) }
|
||||
func (*Change) ProtoMessage() {}
|
||||
func (*Change) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{2}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{2}
|
||||
}
|
||||
func (m *Change) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_Change.Unmarshal(m, b)
|
||||
|
@ -353,7 +364,7 @@ func (m *ResourceInstanceChange) Reset() { *m = ResourceInstanceChange{}
|
|||
func (m *ResourceInstanceChange) String() string { return proto.CompactTextString(m) }
|
||||
func (*ResourceInstanceChange) ProtoMessage() {}
|
||||
func (*ResourceInstanceChange) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{3}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{3}
|
||||
}
|
||||
func (m *ResourceInstanceChange) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ResourceInstanceChange.Unmarshal(m, b)
|
||||
|
@ -555,7 +566,7 @@ func (m *OutputChange) Reset() { *m = OutputChange{} }
|
|||
func (m *OutputChange) String() string { return proto.CompactTextString(m) }
|
||||
func (*OutputChange) ProtoMessage() {}
|
||||
func (*OutputChange) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{4}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{4}
|
||||
}
|
||||
func (m *OutputChange) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_OutputChange.Unmarshal(m, b)
|
||||
|
@ -619,7 +630,7 @@ func (m *DynamicValue) Reset() { *m = DynamicValue{} }
|
|||
func (m *DynamicValue) String() string { return proto.CompactTextString(m) }
|
||||
func (*DynamicValue) ProtoMessage() {}
|
||||
func (*DynamicValue) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{5}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{5}
|
||||
}
|
||||
func (m *DynamicValue) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_DynamicValue.Unmarshal(m, b)
|
||||
|
@ -665,7 +676,7 @@ func (m *Hash) Reset() { *m = Hash{} }
|
|||
func (m *Hash) String() string { return proto.CompactTextString(m) }
|
||||
func (*Hash) ProtoMessage() {}
|
||||
func (*Hash) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{6}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{6}
|
||||
}
|
||||
func (m *Hash) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_Hash.Unmarshal(m, b)
|
||||
|
@ -706,7 +717,7 @@ func (m *Path) Reset() { *m = Path{} }
|
|||
func (m *Path) String() string { return proto.CompactTextString(m) }
|
||||
func (*Path) ProtoMessage() {}
|
||||
func (*Path) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{7}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{7}
|
||||
}
|
||||
func (m *Path) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_Path.Unmarshal(m, b)
|
||||
|
@ -747,7 +758,7 @@ func (m *Path_Step) Reset() { *m = Path_Step{} }
|
|||
func (m *Path_Step) String() string { return proto.CompactTextString(m) }
|
||||
func (*Path_Step) ProtoMessage() {}
|
||||
func (*Path_Step) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_planfile_f722ed393ded62c3, []int{7, 0}
|
||||
return fileDescriptor_planfile_99d56bc18c7b6e8d, []int{7, 0}
|
||||
}
|
||||
func (m *Path_Step) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_Path_Step.Unmarshal(m, b)
|
||||
|
@ -888,62 +899,64 @@ func init() {
|
|||
proto.RegisterEnum("tfplan.ResourceInstanceChange_ResourceMode", ResourceInstanceChange_ResourceMode_name, ResourceInstanceChange_ResourceMode_value)
|
||||
}
|
||||
|
||||
func init() { proto.RegisterFile("planfile.proto", fileDescriptor_planfile_f722ed393ded62c3) }
|
||||
func init() { proto.RegisterFile("planfile.proto", fileDescriptor_planfile_99d56bc18c7b6e8d) }
|
||||
|
||||
var fileDescriptor_planfile_f722ed393ded62c3 = []byte{
|
||||
// 862 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x55, 0xdb, 0x6e, 0xe3, 0x36,
|
||||
0x10, 0x8d, 0x6c, 0xc5, 0x97, 0xb1, 0xa3, 0x68, 0xd9, 0x62, 0x21, 0xa4, 0x8b, 0xad, 0x21, 0xa0,
|
||||
0x5d, 0x77, 0xb7, 0x70, 0x00, 0x17, 0x6d, 0xba, 0xed, 0x43, 0x91, 0x8b, 0x81, 0x04, 0x7b, 0x89,
|
||||
0xc1, 0x6e, 0xf3, 0xd0, 0x87, 0x1a, 0xb4, 0x34, 0xb1, 0x89, 0x48, 0x94, 0x4a, 0xd2, 0x2e, 0xfc,
|
||||
0x41, 0x7d, 0xea, 0xc7, 0xf4, 0x97, 0x0a, 0x52, 0x17, 0x3b, 0x40, 0xea, 0x27, 0x6b, 0xce, 0x0c,
|
||||
0x0f, 0x67, 0xce, 0xcc, 0xd0, 0xe0, 0xe5, 0x09, 0x13, 0xf7, 0x3c, 0xc1, 0x51, 0x2e, 0x33, 0x9d,
|
||||
0x91, 0x96, 0xbe, 0x37, 0x48, 0xf8, 0x8f, 0x0b, 0xee, 0x34, 0x61, 0x82, 0x04, 0xd0, 0x5e, 0xa3,
|
||||
0x54, 0x3c, 0x13, 0x81, 0x33, 0x70, 0x86, 0x2e, 0xad, 0x4c, 0xf2, 0x16, 0xba, 0x6b, 0x26, 0x39,
|
||||
0x9b, 0x27, 0xa8, 0x82, 0xc6, 0xa0, 0x39, 0xec, 0x8d, 0xbf, 0x18, 0x15, 0xc7, 0x47, 0xe6, 0xe8,
|
||||
0xe8, 0xae, 0xf2, 0x4e, 0x84, 0x96, 0x1b, 0xba, 0x8d, 0x26, 0x37, 0xe0, 0x4b, 0x54, 0xd9, 0x4a,
|
||||
0x46, 0x38, 0x8b, 0x96, 0x4c, 0x2c, 0x50, 0x05, 0x4d, 0xcb, 0xf0, 0xb2, 0x62, 0xa0, 0xa5, 0xff,
|
||||
0x46, 0x28, 0xcd, 0x44, 0x84, 0x97, 0x36, 0x8c, 0x1e, 0x57, 0xe7, 0x0a, 0x5b, 0x91, 0x9f, 0xc1,
|
||||
0xcb, 0x56, 0x3a, 0x5f, 0xe9, 0x9a, 0xc8, 0xb5, 0x44, 0x9f, 0x57, 0x44, 0xb7, 0xd6, 0x5b, 0x1e,
|
||||
0x3f, 0xca, 0x76, 0x2c, 0x45, 0xde, 0xc0, 0x33, 0x8d, 0x52, 0xb2, 0xfb, 0x4c, 0xa6, 0xb3, 0xaa,
|
||||
0x4c, 0x6f, 0xe0, 0x0c, 0xbb, 0xd4, 0xaf, 0x1d, 0x77, 0x65, 0xbd, 0x37, 0x70, 0x9c, 0xcb, 0x6c,
|
||||
0xcd, 0x63, 0x94, 0xb3, 0x25, 0x53, 0x4b, 0x54, 0xc1, 0xb1, 0xbd, 0x6a, 0xf0, 0xa8, 0xea, 0x69,
|
||||
0x19, 0x73, 0x6d, 0x43, 0x8a, 0xd2, 0xbd, 0xfc, 0x11, 0x48, 0xbe, 0x81, 0xf6, 0x9c, 0x45, 0x0f,
|
||||
0x28, 0xe2, 0xe0, 0x68, 0xe0, 0x0c, 0x7b, 0xe3, 0xe3, 0x8a, 0xe2, 0xa2, 0x80, 0x69, 0xe5, 0x3f,
|
||||
0xa1, 0xe0, 0x3d, 0xd6, 0x91, 0xf8, 0xd0, 0x7c, 0xc0, 0x8d, 0xed, 0x46, 0x97, 0x9a, 0x4f, 0xf2,
|
||||
0x1a, 0x0e, 0xd7, 0x2c, 0x59, 0x61, 0xd0, 0xb0, 0x64, 0x75, 0xe9, 0x57, 0x1b, 0xc1, 0x52, 0x1e,
|
||||
0xdd, 0x19, 0x1f, 0x2d, 0x42, 0x7e, 0x6a, 0xfc, 0xe8, 0x9c, 0xdc, 0xc2, 0x67, 0x4f, 0x64, 0xf9,
|
||||
0x04, 0x71, 0xf8, 0x98, 0xb8, 0x5f, 0x11, 0x9b, 0x53, 0x3b, 0x84, 0x21, 0x87, 0x76, 0x99, 0x38,
|
||||
0x21, 0xe0, 0xea, 0x4d, 0x8e, 0x25, 0x8b, 0xfd, 0x26, 0xdf, 0x42, 0x2b, 0xca, 0xc4, 0x3d, 0x5f,
|
||||
0xec, 0x4d, 0xb0, 0x8c, 0x21, 0x2f, 0xa0, 0xfb, 0x57, 0x26, 0x1f, 0x54, 0xce, 0x22, 0x0c, 0x9a,
|
||||
0x96, 0x66, 0x0b, 0x84, 0x7f, 0x40, 0xab, 0xe8, 0x1e, 0xf9, 0x1a, 0x5a, 0x2c, 0xd2, 0xd5, 0x60,
|
||||
0x7a, 0x63, 0xaf, 0x62, 0x3d, 0xb7, 0x28, 0x2d, 0xbd, 0xe6, 0x76, 0x9b, 0x69, 0x35, 0xa4, 0xff,
|
||||
0x73, 0x7b, 0x11, 0x13, 0xfe, 0xdb, 0x84, 0xe7, 0x4f, 0xcf, 0x1e, 0xf9, 0x12, 0x7a, 0x69, 0x16,
|
||||
0xaf, 0x12, 0x9c, 0xe5, 0x4c, 0x2f, 0xcb, 0x0a, 0xa1, 0x80, 0xa6, 0x4c, 0x2f, 0xc9, 0x2f, 0xe0,
|
||||
0xa6, 0x59, 0x5c, 0xa8, 0xe5, 0x8d, 0xdf, 0xec, 0x1f, 0xe5, 0x1a, 0xfe, 0x90, 0xc5, 0x48, 0xed,
|
||||
0xc1, 0x5a, 0xbc, 0xe6, 0x8e, 0x78, 0x04, 0x5c, 0xc1, 0x52, 0x0c, 0xdc, 0x02, 0x33, 0xdf, 0x84,
|
||||
0x40, 0x53, 0x69, 0x19, 0x1c, 0x1a, 0xe8, 0xfa, 0x80, 0x1a, 0xc3, 0x60, 0x5c, 0xe8, 0xa0, 0x35,
|
||||
0x70, 0x86, 0x4d, 0x83, 0x71, 0xa1, 0x4d, 0xc6, 0x31, 0xe6, 0x99, 0xc2, 0x78, 0x66, 0x3a, 0xdb,
|
||||
0x2e, 0x32, 0x2e, 0xa1, 0x77, 0xb8, 0x21, 0x27, 0xd0, 0xa9, 0x46, 0x33, 0xe8, 0x58, 0x6f, 0x6d,
|
||||
0x1b, 0x7d, 0x8b, 0x95, 0x0a, 0xba, 0xb6, 0x6b, 0xb5, 0xbe, 0xe5, 0x2e, 0x95, 0x5e, 0x32, 0x82,
|
||||
0x76, 0x2e, 0xf9, 0x9a, 0x69, 0x0c, 0x60, 0x4f, 0x7b, 0xab, 0x20, 0x72, 0x66, 0x96, 0xff, 0xcf,
|
||||
0x15, 0x97, 0x18, 0xcf, 0x24, 0xe6, 0x89, 0x69, 0x73, 0xcf, 0x76, 0xa6, 0x9e, 0x2f, 0xa3, 0xa6,
|
||||
0x59, 0xf5, 0x22, 0x8a, 0x16, 0x41, 0xe1, 0x57, 0xd0, 0xdf, 0xd5, 0x8c, 0xf4, 0xa0, 0x9d, 0x32,
|
||||
0xc1, 0x16, 0x18, 0xfb, 0x07, 0xa4, 0x03, 0x6e, 0xcc, 0x34, 0xf3, 0x9d, 0x0b, 0x0f, 0xfa, 0xbc,
|
||||
0x54, 0xda, 0x54, 0x1d, 0x2e, 0xa1, 0xbf, 0xfb, 0x06, 0xd4, 0x82, 0x3a, 0x3b, 0x82, 0x6e, 0x6b,
|
||||
0x6d, 0xec, 0xad, 0xf5, 0x05, 0x74, 0x15, 0x0a, 0xc5, 0x35, 0x5f, 0x17, 0x5d, 0xea, 0xd0, 0x2d,
|
||||
0x10, 0x0e, 0xa1, 0xbf, 0x5b, 0xb2, 0x79, 0x3b, 0x53, 0xb5, 0xc8, 0x59, 0xf4, 0x60, 0x2f, 0xeb,
|
||||
0xd3, 0xca, 0x0c, 0x5f, 0x82, 0x6b, 0x76, 0x88, 0x3c, 0x87, 0x96, 0x5a, 0xb2, 0xf1, 0xf7, 0x3f,
|
||||
0x94, 0x01, 0xa5, 0x15, 0xfe, 0xed, 0x80, 0x6b, 0x47, 0xea, 0x15, 0x1c, 0x2a, 0x8d, 0xb9, 0x0a,
|
||||
0x1c, 0xab, 0xd0, 0xb3, 0x5d, 0x85, 0x46, 0xbf, 0x6a, 0xcc, 0x69, 0xe1, 0x3f, 0xd1, 0xe0, 0x1a,
|
||||
0x93, 0xbc, 0x02, 0x8f, 0x69, 0x2d, 0xf9, 0x7c, 0xa5, 0x71, 0xb6, 0xad, 0xf3, 0xfa, 0x80, 0x1e,
|
||||
0xd5, 0xf8, 0x47, 0x53, 0xf2, 0x19, 0xf4, 0x30, 0xc1, 0x14, 0x85, 0xb6, 0xb3, 0xb1, 0x67, 0x33,
|
||||
0xaf, 0x0f, 0x28, 0x94, 0xa1, 0xef, 0x70, 0x73, 0x01, 0xd0, 0x51, 0x98, 0x60, 0xa4, 0x33, 0xf9,
|
||||
0xfa, 0x03, 0xb4, 0x8a, 0x6d, 0x33, 0xfa, 0x7f, 0xbc, 0xbd, 0x9d, 0xfa, 0x07, 0x04, 0xa0, 0x75,
|
||||
0x49, 0x27, 0xe7, 0x9f, 0x26, 0xbe, 0x63, 0x50, 0x3a, 0x39, 0xbf, 0xf2, 0x1b, 0x06, 0xfd, 0x6d,
|
||||
0x7a, 0x65, 0xd0, 0xa6, 0x69, 0x1c, 0x9d, 0x4c, 0xdf, 0x9f, 0x5f, 0x4e, 0x7c, 0xd7, 0x38, 0xae,
|
||||
0x26, 0xef, 0x27, 0x9f, 0x26, 0xfe, 0xe1, 0xc5, 0xdb, 0xdf, 0xcf, 0x16, 0x5c, 0x2f, 0x57, 0xf3,
|
||||
0x51, 0x94, 0xa5, 0xa7, 0xe6, 0x91, 0xe5, 0x51, 0x26, 0xf3, 0xd3, 0xfa, 0x2d, 0x3e, 0x35, 0xc9,
|
||||
0xa9, 0x53, 0x2e, 0x34, 0x4a, 0xc1, 0x12, 0x6b, 0xda, 0x3f, 0xae, 0x79, 0xcb, 0xfe, 0x7c, 0xf7,
|
||||
0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x95, 0x91, 0xf6, 0x8e, 0xd1, 0x06, 0x00, 0x00,
|
||||
var fileDescriptor_planfile_99d56bc18c7b6e8d = []byte{
|
||||
// 883 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x55, 0x6d, 0x6f, 0xe3, 0x44,
|
||||
0x10, 0x8e, 0x63, 0xe7, 0x6d, 0x92, 0xba, 0xbe, 0x05, 0x9d, 0xac, 0x72, 0x3a, 0x82, 0x25, 0xb8,
|
||||
0x70, 0x87, 0x52, 0x29, 0x08, 0xca, 0xc1, 0x07, 0x94, 0xb6, 0x91, 0x5a, 0xdd, 0x4b, 0xa3, 0xa5,
|
||||
0xf4, 0x03, 0x1f, 0x88, 0x36, 0xf6, 0x34, 0xb1, 0xea, 0xd8, 0x66, 0x77, 0x13, 0x94, 0x1f, 0xc4,
|
||||
0xdf, 0x81, 0xbf, 0x84, 0x76, 0xd7, 0x76, 0x52, 0xa9, 0x97, 0x4f, 0xf1, 0x3c, 0x33, 0xfb, 0xec,
|
||||
0xcc, 0x33, 0xb3, 0x13, 0x70, 0xf3, 0x84, 0xa5, 0xf7, 0x71, 0x82, 0xc3, 0x9c, 0x67, 0x32, 0x23,
|
||||
0x4d, 0x79, 0xaf, 0x90, 0xe0, 0x5f, 0x07, 0x9c, 0x69, 0xc2, 0x52, 0xe2, 0x43, 0x6b, 0x83, 0x5c,
|
||||
0xc4, 0x59, 0xea, 0x5b, 0x7d, 0x6b, 0xe0, 0xd0, 0xd2, 0x24, 0x6f, 0xa1, 0xb3, 0x61, 0x3c, 0x66,
|
||||
0xf3, 0x04, 0x85, 0x5f, 0xef, 0xdb, 0x83, 0xee, 0xe8, 0x8b, 0xa1, 0x39, 0x3e, 0x54, 0x47, 0x87,
|
||||
0x77, 0xa5, 0x77, 0x92, 0x4a, 0xbe, 0xa5, 0xbb, 0x68, 0x72, 0x0d, 0x1e, 0x47, 0x91, 0xad, 0x79,
|
||||
0x88, 0xb3, 0x70, 0xc9, 0xd2, 0x05, 0x0a, 0xdf, 0xd6, 0x0c, 0x2f, 0x4b, 0x06, 0x5a, 0xf8, 0xaf,
|
||||
0x53, 0x21, 0x59, 0x1a, 0xe2, 0x85, 0x0e, 0xa3, 0xc7, 0xe5, 0x39, 0x63, 0x0b, 0xf2, 0x0b, 0xb8,
|
||||
0xd9, 0x5a, 0xe6, 0x6b, 0x59, 0x11, 0x39, 0x9a, 0xe8, 0xf3, 0x92, 0xe8, 0x46, 0x7b, 0x8b, 0xe3,
|
||||
0x47, 0xd9, 0x9e, 0x25, 0xc8, 0x57, 0xd0, 0x93, 0x8c, 0x2f, 0x50, 0xce, 0x58, 0x14, 0x71, 0xe1,
|
||||
0x37, 0xfa, 0xf6, 0xa0, 0x43, 0xbb, 0x06, 0x1b, 0x2b, 0x88, 0xbc, 0x81, 0x67, 0x12, 0x39, 0x67,
|
||||
0xf7, 0x19, 0x5f, 0xcd, 0x4a, 0x25, 0xdc, 0xbe, 0x35, 0xe8, 0x50, 0xaf, 0x72, 0xdc, 0x15, 0x92,
|
||||
0x5c, 0xc3, 0x71, 0xce, 0xb3, 0x4d, 0x1c, 0x21, 0x9f, 0x2d, 0x99, 0x58, 0xa2, 0xf0, 0x8f, 0x75,
|
||||
0x36, 0xfd, 0x47, 0xc2, 0x4c, 0x8b, 0x98, 0x2b, 0x1d, 0x62, 0xd4, 0x71, 0xf3, 0x47, 0x20, 0xf9,
|
||||
0x16, 0x5a, 0x73, 0x16, 0x3e, 0x60, 0x1a, 0xf9, 0x47, 0x7d, 0x6b, 0xd0, 0x1d, 0x1d, 0x97, 0x14,
|
||||
0xe7, 0x06, 0xa6, 0xa5, 0xff, 0x84, 0x82, 0xfb, 0x58, 0x6a, 0xe2, 0x81, 0xfd, 0x80, 0x5b, 0xdd,
|
||||
0xb0, 0x0e, 0x55, 0x9f, 0xe4, 0x35, 0x34, 0x36, 0x2c, 0x59, 0xa3, 0x5f, 0xd7, 0x64, 0x95, 0x3a,
|
||||
0x97, 0xdb, 0x94, 0xad, 0xe2, 0xf0, 0x4e, 0xf9, 0xa8, 0x09, 0xf9, 0xb9, 0xfe, 0x93, 0x75, 0x72,
|
||||
0x03, 0x9f, 0x3d, 0x91, 0xe5, 0x13, 0xc4, 0xc1, 0x63, 0xe2, 0x5e, 0x49, 0xac, 0x4e, 0xed, 0x11,
|
||||
0x06, 0x31, 0xb4, 0x8a, 0xc4, 0x09, 0x01, 0x47, 0x6e, 0x73, 0x2c, 0x58, 0xf4, 0x37, 0xf9, 0x0e,
|
||||
0x9a, 0x61, 0x96, 0xde, 0xc7, 0x8b, 0x83, 0x09, 0x16, 0x31, 0xe4, 0x05, 0x74, 0xfe, 0xce, 0xf8,
|
||||
0x83, 0xc8, 0x59, 0x88, 0xbe, 0xad, 0x69, 0x76, 0x40, 0xf0, 0x27, 0x34, 0x4d, 0x83, 0xc9, 0x37,
|
||||
0xd0, 0x64, 0xa1, 0x2c, 0x67, 0xd7, 0x1d, 0xb9, 0x25, 0xeb, 0x58, 0xa3, 0xb4, 0xf0, 0xaa, 0xdb,
|
||||
0x75, 0xa6, 0xe5, 0x1c, 0x7f, 0xe2, 0x76, 0x13, 0x13, 0xfc, 0x67, 0xc3, 0xf3, 0xa7, 0xc7, 0x93,
|
||||
0x7c, 0x09, 0xdd, 0x55, 0x16, 0xad, 0x13, 0x9c, 0xe5, 0x4c, 0x2e, 0x8b, 0x0a, 0xc1, 0x40, 0x53,
|
||||
0x26, 0x97, 0xe4, 0x57, 0x70, 0x56, 0x59, 0x64, 0xd4, 0x72, 0x47, 0x6f, 0x0e, 0x4f, 0x7b, 0x05,
|
||||
0x7f, 0xc8, 0x22, 0xa4, 0xfa, 0x60, 0x25, 0x9e, 0xbd, 0x27, 0x1e, 0x01, 0x27, 0x65, 0x2b, 0xf4,
|
||||
0x1d, 0x83, 0xa9, 0x6f, 0x42, 0xc0, 0x16, 0x92, 0xfb, 0x0d, 0x05, 0x5d, 0xd5, 0xa8, 0x32, 0x14,
|
||||
0x16, 0xa7, 0xd2, 0x6f, 0xf6, 0xad, 0x81, 0xad, 0xb0, 0x38, 0x95, 0x2a, 0xe3, 0x08, 0xf3, 0x4c,
|
||||
0x60, 0x34, 0x53, 0x9d, 0x6d, 0x99, 0x8c, 0x0b, 0xe8, 0x1d, 0x6e, 0xc9, 0x09, 0xb4, 0xcb, 0xd1,
|
||||
0xf4, 0xdb, 0xda, 0x5b, 0xd9, 0x4a, 0x5f, 0xf3, 0xea, 0xfc, 0x8e, 0xee, 0x5a, 0xa5, 0x6f, 0xf1,
|
||||
0xdc, 0x0a, 0x2f, 0x19, 0x42, 0x2b, 0xe7, 0xf1, 0x86, 0x49, 0xf4, 0xe1, 0x40, 0x7b, 0xcb, 0x20,
|
||||
0x72, 0xa6, 0xf6, 0xc3, 0x5f, 0xeb, 0x98, 0x63, 0x34, 0xe3, 0x98, 0x27, 0xaa, 0xcd, 0x5d, 0xdd,
|
||||
0x99, 0x6a, 0xbe, 0x94, 0x9a, 0x6a, 0x1b, 0x98, 0x28, 0x6a, 0x82, 0x82, 0xaf, 0xa1, 0xb7, 0xaf,
|
||||
0x19, 0xe9, 0x42, 0x6b, 0xc5, 0x52, 0xb6, 0xc0, 0xc8, 0xab, 0x91, 0x36, 0x38, 0x11, 0x93, 0xcc,
|
||||
0xb3, 0xce, 0x5d, 0xe8, 0xc5, 0x85, 0xd2, 0xaa, 0xea, 0x60, 0x09, 0xbd, 0xfd, 0x35, 0x51, 0x09,
|
||||
0x6a, 0xed, 0x09, 0xba, 0xab, 0xb5, 0x7e, 0xb0, 0xd6, 0x17, 0xd0, 0x11, 0x98, 0x8a, 0x58, 0xc6,
|
||||
0x1b, 0xd3, 0xa5, 0x36, 0xdd, 0x01, 0xc1, 0x00, 0x7a, 0xfb, 0x25, 0xab, 0xf5, 0xba, 0x12, 0x8b,
|
||||
0x9c, 0x85, 0x0f, 0xfa, 0xb2, 0x1e, 0x2d, 0xcd, 0xe0, 0x25, 0x38, 0xea, 0x0d, 0x91, 0xe7, 0xd0,
|
||||
0x14, 0x4b, 0x36, 0xfa, 0xe1, 0xc7, 0x22, 0xa0, 0xb0, 0x82, 0x7f, 0x2c, 0x70, 0xf4, 0x48, 0xbd,
|
||||
0x82, 0x86, 0x90, 0x98, 0x0b, 0xdf, 0xd2, 0x0a, 0x3d, 0xdb, 0x57, 0x68, 0xf8, 0x9b, 0xc4, 0x9c,
|
||||
0x1a, 0xff, 0x89, 0x04, 0x47, 0x99, 0xe4, 0x15, 0xb8, 0x4c, 0x4a, 0x1e, 0xcf, 0xd7, 0x12, 0x67,
|
||||
0xbb, 0x3a, 0xaf, 0x6a, 0xf4, 0xa8, 0xc2, 0x3f, 0xaa, 0x92, 0xcf, 0xa0, 0x8b, 0x09, 0xae, 0x30,
|
||||
0x95, 0x7a, 0x36, 0x0e, 0xbc, 0xcc, 0xab, 0x1a, 0x85, 0x22, 0xf4, 0x1d, 0x6e, 0xcf, 0x01, 0xda,
|
||||
0x02, 0x13, 0x0c, 0x65, 0xc6, 0x5f, 0x7f, 0x80, 0xa6, 0x79, 0x6d, 0x4a, 0xff, 0x8f, 0x37, 0x37,
|
||||
0x53, 0xaf, 0x46, 0x00, 0x9a, 0x17, 0x74, 0x32, 0xbe, 0x9d, 0x78, 0x96, 0x42, 0xe9, 0x64, 0x7c,
|
||||
0xe9, 0xd5, 0x15, 0xfa, 0xfb, 0xf4, 0x52, 0xa1, 0xb6, 0x6a, 0x1c, 0x9d, 0x4c, 0xdf, 0x8f, 0x2f,
|
||||
0x26, 0x9e, 0xa3, 0x1c, 0x97, 0x93, 0xf7, 0x93, 0xdb, 0x89, 0xd7, 0x38, 0x7f, 0xfb, 0xc7, 0xd9,
|
||||
0x22, 0x96, 0xcb, 0xf5, 0x7c, 0x18, 0x66, 0xab, 0x53, 0xb5, 0x64, 0xe3, 0x30, 0xe3, 0xf9, 0x69,
|
||||
0xb5, 0x8b, 0x4f, 0x55, 0x72, 0xe2, 0x34, 0x4e, 0x25, 0xf2, 0x94, 0x25, 0xda, 0xd4, 0xff, 0x6d,
|
||||
0xf3, 0xa6, 0xfe, 0xf9, 0xfe, 0xff, 0x00, 0x00, 0x00, 0xff, 0xff, 0x3c, 0x04, 0xa1, 0x9e, 0xf4,
|
||||
0x06, 0x00, 0x00,
|
||||
}
|
||||
|
|
|
@ -32,6 +32,11 @@ message Plan {
|
|||
// at apply time.
|
||||
repeated OutputChange output_changes = 4;
|
||||
|
||||
// An unordered set of target addresses to include when applying. If no
|
||||
// target addresses are present, the plan applies to the whole
|
||||
// configuration.
|
||||
repeated string target_addrs = 5;
|
||||
|
||||
// The version string for the Terraform binary that created this plan.
|
||||
string terraform_version = 14;
|
||||
|
||||
|
|
|
@ -20,6 +20,7 @@ import (
|
|||
type Plan struct {
|
||||
VariableValues map[string]DynamicValue
|
||||
Changes *Changes
|
||||
TargetAddrs []addrs.Targetable
|
||||
ProviderSHA256s map[string][]byte
|
||||
Backend Backend
|
||||
}
|
||||
|
|
|
@ -82,6 +82,14 @@ func readTfplan(r io.Reader) (*plans.Plan, error) {
|
|||
plan.Changes.Resources = append(plan.Changes.Resources, change)
|
||||
}
|
||||
|
||||
for _, rawTargetAddr := range rawPlan.TargetAddrs {
|
||||
target, diags := addrs.ParseTargetStr(rawTargetAddr)
|
||||
if diags.HasErrors() {
|
||||
return nil, fmt.Errorf("plan contains invalid target address %q: %s", target, diags.Err())
|
||||
}
|
||||
plan.TargetAddrs = append(plan.TargetAddrs, target.Subject)
|
||||
}
|
||||
|
||||
for name, rawHashObj := range rawPlan.ProviderHashes {
|
||||
if len(rawHashObj.Sha256) == 0 {
|
||||
return nil, fmt.Errorf("no SHA256 hash for provider %q plugin", name)
|
||||
|
@ -300,6 +308,10 @@ func writeTfplan(plan *plans.Plan, w io.Writer) error {
|
|||
rawPlan.ResourceChanges = append(rawPlan.ResourceChanges, rawRC)
|
||||
}
|
||||
|
||||
for _, targetAddr := range plan.TargetAddrs {
|
||||
rawPlan.TargetAddrs = append(rawPlan.TargetAddrs, targetAddr.String())
|
||||
}
|
||||
|
||||
for name, hash := range plan.ProviderSHA256s {
|
||||
rawPlan.ProviderHashes[name] = &planproto.Hash{
|
||||
Sha256: hash,
|
||||
|
|
|
@ -85,6 +85,13 @@ func TestTFPlanRoundTrip(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
TargetAddrs: []addrs.Targetable{
|
||||
addrs.Resource{
|
||||
Mode: addrs.ManagedResourceMode,
|
||||
Type: "test_thing",
|
||||
Name: "woot",
|
||||
}.Absolute(addrs.RootModuleInstance),
|
||||
},
|
||||
ProviderSHA256s: map[string][]byte{
|
||||
"test": []byte{
|
||||
0xba, 0x5e, 0x1e, 0x55, 0xb0, 0x1d, 0xfa, 0xce,
|
||||
|
|
Loading…
Reference in New Issue