250bcb9751
This change adds a --json flag to the preview command, enabling basic JSON serialization of preview plans. This effectively flattens the engine event stream into a preview structure that contains a list of steps, diagnostics, and summary information. Each step contains the deep serialization of resource state, in addition to metadata about the step, such as what kind of operation it entails. This is a partial implementation of pulumi/pulumi#2390. In particular, we only support --json on the `preview` command itself, and not `up`, meaning that it isn't possible to serialize the result of an actual deployment yet (thereby limiting what you can do with outputs, etc).
32 lines
1.7 KiB
Go
32 lines
1.7 KiB
Go
// Copyright 2016-2018, Pulumi Corporation.
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
package display
|
|
|
|
import "github.com/pulumi/pulumi/pkg/diag/colors"
|
|
|
|
// Options controls how the output of events are rendered
|
|
type Options struct {
|
|
Color colors.Colorization // colorization to apply to events.
|
|
ShowConfig bool // true if we should show configuration information.
|
|
ShowReplacementSteps bool // true to show the replacement steps in the plan.
|
|
ShowSameResources bool // true to show the resources that aren't updated in addition to updates.
|
|
SuppressOutputs bool // true to suppress output summarization, e.g. if contains sensitive info.
|
|
SummaryDiff bool // true if diff display should be summarized.
|
|
IsInteractive bool // true if we should display things interactively.
|
|
DiffDisplay bool // true if we should display things as a rich diff.
|
|
JSONDisplay bool // true if we should emit the entire diff as JSON.
|
|
Debug bool // true to enable debug output.
|
|
}
|