mirror of
https://github.com/opentffoundation/opentf.git
synced 2025-12-21 10:47:34 -05:00
39 lines
1013 B
Go
39 lines
1013 B
Go
// Copyright (c) The OpenTofu Authors
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
// Copyright (c) 2023 HashiCorp, Inc.
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
package renderers
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/opentofu/opentofu/internal/command/jsonformat/computed"
|
|
|
|
"github.com/opentofu/opentofu/internal/plans"
|
|
)
|
|
|
|
var _ computed.DiffRenderer = (*unknownRenderer)(nil)
|
|
|
|
func Unknown(before computed.Diff) computed.DiffRenderer {
|
|
return &unknownRenderer{
|
|
before: before,
|
|
}
|
|
}
|
|
|
|
type unknownRenderer struct {
|
|
NoWarningsRenderer
|
|
|
|
before computed.Diff
|
|
}
|
|
|
|
func (renderer unknownRenderer) RenderHuman(diff computed.Diff, indent int, opts computed.RenderHumanOpts) string {
|
|
if diff.Action == plans.Create {
|
|
return fmt.Sprintf("(known after apply)%s", forcesReplacement(diff.Replace, opts))
|
|
}
|
|
|
|
// Never render null suffix for children of unknown changes.
|
|
opts.OverrideNullSuffix = true
|
|
return fmt.Sprintf("%s -> (known after apply)%s", renderer.before.RenderHuman(indent, opts), forcesReplacement(diff.Replace, opts))
|
|
}
|