Centralize deterministic JSON file writing

This commit is contained in:
2026-05-24 14:57:12 +00:00
parent ab4b252b08
commit c8efdb53d3
6 changed files with 105 additions and 54 deletions

View File

@@ -2,10 +2,9 @@ package builtin
import (
"context"
"encoding/json"
"os"
"gitea.maximumdirect.net/eric/seriatim/internal/config"
"gitea.maximumdirect.net/eric/seriatim/internal/jsonfile"
"gitea.maximumdirect.net/eric/seriatim/internal/report"
)
@@ -20,15 +19,7 @@ func (jsonOutputWriter) Write(ctx context.Context, out any, rpt report.Report, c
return nil, err
}
file, err := os.Create(cfg.OutputFile)
if err != nil {
return nil, err
}
defer file.Close()
enc := json.NewEncoder(file)
enc.SetIndent("", " ")
if err := enc.Encode(out); err != nil {
if err := jsonfile.Write(cfg.OutputFile, out); err != nil {
return nil, err
}