|
|
|
|
@ -398,7 +398,7 @@ func (p *blockBodyDiffPrinter) writeAttrDiff(name string, attrS *configschema.At
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if attrS.NestedType != nil {
|
|
|
|
|
p.writeNestedAttrDiff(name, attrS.NestedType, old, new, nameLen, indent, path, action, showJustNew)
|
|
|
|
|
p.writeNestedAttrDiff(name, attrS, old, new, nameLen, indent, path, action, showJustNew)
|
|
|
|
|
return false
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -416,7 +416,7 @@ func (p *blockBodyDiffPrinter) writeAttrDiff(name string, attrS *configschema.At
|
|
|
|
|
p.buf.WriteString(" = ")
|
|
|
|
|
|
|
|
|
|
if attrS.Sensitive {
|
|
|
|
|
p.buf.WriteString("(sensitive value)")
|
|
|
|
|
p.buf.WriteString("(sensitive)")
|
|
|
|
|
if p.pathForcesNewResource(path) {
|
|
|
|
|
p.buf.WriteString(p.color.Color(forcesNewResourceCaption))
|
|
|
|
|
}
|
|
|
|
|
@ -441,9 +441,11 @@ func (p *blockBodyDiffPrinter) writeAttrDiff(name string, attrS *configschema.At
|
|
|
|
|
// writeNestedAttrDiff is responsible for formatting Attributes with NestedTypes
|
|
|
|
|
// in the diff.
|
|
|
|
|
func (p *blockBodyDiffPrinter) writeNestedAttrDiff(
|
|
|
|
|
name string, objS *configschema.Object, old, new cty.Value,
|
|
|
|
|
name string, attrWithNestedS *configschema.Attribute, old, new cty.Value,
|
|
|
|
|
nameLen, indent int, path cty.Path, action plans.Action, showJustNew bool) {
|
|
|
|
|
|
|
|
|
|
objS := attrWithNestedS.NestedType
|
|
|
|
|
|
|
|
|
|
p.buf.WriteString("\n")
|
|
|
|
|
p.writeSensitivityWarning(old, new, indent, action, false)
|
|
|
|
|
p.buf.WriteString(strings.Repeat(" ", indent))
|
|
|
|
|
@ -454,8 +456,11 @@ func (p *blockBodyDiffPrinter) writeNestedAttrDiff(
|
|
|
|
|
p.buf.WriteString(p.color.Color("[reset]"))
|
|
|
|
|
p.buf.WriteString(strings.Repeat(" ", nameLen-len(name)))
|
|
|
|
|
|
|
|
|
|
if old.HasMark(marks.Sensitive) || new.HasMark(marks.Sensitive) {
|
|
|
|
|
p.buf.WriteString(" = (sensitive value)")
|
|
|
|
|
// Then schema of the attribute itself can be marked sensitive, or the values assigned
|
|
|
|
|
sensitive := attrWithNestedS.Sensitive || old.HasMark(marks.Sensitive) || new.HasMark(marks.Sensitive)
|
|
|
|
|
if sensitive {
|
|
|
|
|
p.buf.WriteString(" = (sensitive)")
|
|
|
|
|
|
|
|
|
|
if p.pathForcesNewResource(path) {
|
|
|
|
|
p.buf.WriteString(p.color.Color(forcesNewResourceCaption))
|
|
|
|
|
}
|
|
|
|
|
@ -475,6 +480,12 @@ func (p *blockBodyDiffPrinter) writeNestedAttrDiff(
|
|
|
|
|
p.buf.WriteString(strings.Repeat(" ", indent+2))
|
|
|
|
|
p.buf.WriteString("}")
|
|
|
|
|
|
|
|
|
|
if !new.IsKnown() {
|
|
|
|
|
p.buf.WriteString(" -> (known after apply)")
|
|
|
|
|
} else if new.IsNull() {
|
|
|
|
|
p.buf.WriteString(p.color.Color("[dark_gray] -> null[reset]"))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
case configschema.NestingList:
|
|
|
|
|
p.buf.WriteString(" = [")
|
|
|
|
|
if action != plans.NoOp && (p.pathForcesNewResource(path) || p.pathForcesNewResource(path[:len(path)-1])) {
|
|
|
|
|
@ -558,6 +569,8 @@ func (p *blockBodyDiffPrinter) writeNestedAttrDiff(
|
|
|
|
|
|
|
|
|
|
if !new.IsKnown() {
|
|
|
|
|
p.buf.WriteString(" -> (known after apply)")
|
|
|
|
|
} else if new.IsNull() {
|
|
|
|
|
p.buf.WriteString(p.color.Color("[dark_gray] -> null[reset]"))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
case configschema.NestingSet:
|
|
|
|
|
@ -636,6 +649,8 @@ func (p *blockBodyDiffPrinter) writeNestedAttrDiff(
|
|
|
|
|
|
|
|
|
|
if !new.IsKnown() {
|
|
|
|
|
p.buf.WriteString(" -> (known after apply)")
|
|
|
|
|
} else if new.IsNull() {
|
|
|
|
|
p.buf.WriteString(p.color.Color("[dark_gray] -> null[reset]"))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
case configschema.NestingMap:
|
|
|
|
|
@ -711,6 +726,8 @@ func (p *blockBodyDiffPrinter) writeNestedAttrDiff(
|
|
|
|
|
p.buf.WriteString("}")
|
|
|
|
|
if !new.IsKnown() {
|
|
|
|
|
p.buf.WriteString(" -> (known after apply)")
|
|
|
|
|
} else if new.IsNull() {
|
|
|
|
|
p.buf.WriteString(p.color.Color("[dark_gray] -> null[reset]"))
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|