diff options
| author | 2023-04-28 01:36:55 +0800 | |
|---|---|---|
| committer | 2023-04-28 01:36:55 +0800 | |
| commit | fc8c5fdce62fb229202659408798a7b6c98f6e8b (patch) | |
| tree | 7554f80e50de4af6fd255afa7c21bcdd58a7af34 /cli/internal/runsummary/format_json.go | |
| parent | dd84b9d64fb98746a230cd24233ff50a562c39c9 (diff) | |
| download | HydroRoll-fc8c5fdce62fb229202659408798a7b6c98f6e8b.tar.gz HydroRoll-fc8c5fdce62fb229202659408798a7b6c98f6e8b.zip | |
Diffstat (limited to 'cli/internal/runsummary/format_json.go')
| -rw-r--r-- | cli/internal/runsummary/format_json.go | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/cli/internal/runsummary/format_json.go b/cli/internal/runsummary/format_json.go deleted file mode 100644 index 76a0a40..0000000 --- a/cli/internal/runsummary/format_json.go +++ /dev/null @@ -1,66 +0,0 @@ -package runsummary - -import ( - "encoding/json" - - "github.com/pkg/errors" - "github.com/segmentio/ksuid" - "github.com/vercel/turbo/cli/internal/util" -) - -// FormatJSON returns a json string representing a RunSummary -func (rsm *Meta) FormatJSON() ([]byte, error) { - rsm.normalize() // normalize data - - var bytes []byte - var err error - - if rsm.singlePackage { - bytes, err = json.MarshalIndent(nonMonorepoRunSummary(*rsm.RunSummary), "", " ") - } else { - bytes, err = json.MarshalIndent(rsm.RunSummary, "", " ") - } - - if err != nil { - return nil, errors.Wrap(err, "failed to render JSON") - } - return bytes, nil -} - -func (rsm *Meta) normalize() { - for _, t := range rsm.RunSummary.Tasks { - t.EnvVars.Global = rsm.RunSummary.GlobalHashSummary.envVars - t.EnvVars.GlobalPassthrough = rsm.RunSummary.GlobalHashSummary.passthroughEnvVars - } - - // Remove execution summary for dry runs - if rsm.runType == runTypeDryJSON { - rsm.RunSummary.ExecutionSummary = nil - } - - // For single packages, we don't need the Packages - // and each task summary needs some cleaning. - if rsm.singlePackage { - rsm.RunSummary.Packages = []string{} - - for _, task := range rsm.RunSummary.Tasks { - task.cleanForSinglePackage() - } - } -} - -// nonMonorepoRunSummary is an exact copy of RunSummary, but the JSON tags are structured -// for rendering a single-package run of turbo. Notably, we want to always omit packages -// since there is no concept of packages in a single-workspace repo. -// This struct exists solely for the purpose of serializing to JSON and should not be -// used anywhere else. -type nonMonorepoRunSummary struct { - ID ksuid.KSUID `json:"id"` - Version string `json:"version"` - TurboVersion string `json:"turboVersion"` - GlobalHashSummary *GlobalHashSummary `json:"globalCacheInputs"` - Packages []string `json:"-"` - EnvMode util.EnvMode `json:"envMode"` - ExecutionSummary *executionSummary `json:"execution,omitempty"` - Tasks []*TaskSummary `json:"tasks"` -} |
