aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/cli/internal/runsummary/format_json.go
diff options
context:
space:
mode:
Diffstat (limited to 'cli/internal/runsummary/format_json.go')
-rw-r--r--cli/internal/runsummary/format_json.go66
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"`
-}