chore: establish local platform baseline
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"flag"
|
||||
"fmt"
|
||||
"os"
|
||||
|
||||
"data-terminal-cloud/internal/releaseevidence"
|
||||
)
|
||||
|
||||
type repeatedStringFlag []string
|
||||
|
||||
func (value *repeatedStringFlag) String() string { return fmt.Sprint([]string(*value)) }
|
||||
func (value *repeatedStringFlag) Set(input string) error {
|
||||
*value = append(*value, input)
|
||||
return nil
|
||||
}
|
||||
|
||||
func main() {
|
||||
root := flag.String("root", ".", "project root")
|
||||
candidateVersion := flag.String("candidate-version", "", "candidate version")
|
||||
buildDigest := flag.String("build-digest", "", "sha256 image or immutable build digest")
|
||||
sourceCommit := flag.String("source-commit", "", "source commit; LAB may use an explicit local label")
|
||||
acceptanceSnapshot := flag.String("acceptance-snapshot", "", "technical acceptance snapshot JSON")
|
||||
evidenceIndex := flag.String("evidence-index", "", "external evidence index JSON")
|
||||
var pilotDailySnapshots repeatedStringFlag
|
||||
flag.Var(&pilotDailySnapshots, "pilot-daily-snapshot", "PILOT daily snapshot JSON; repeat exactly seven times for a PILOT bundle")
|
||||
pilotWeeklySnapshot := flag.String("pilot-weekly-snapshot", "", "completed PILOT weekly snapshot JSON")
|
||||
output := flag.String("out", "", "output ZIP path")
|
||||
flag.Parse()
|
||||
result, err := releaseevidence.Build(releaseevidence.Options{
|
||||
Root: *root, CandidateVersion: *candidateVersion, BuildDigest: *buildDigest, SourceCommit: *sourceCommit,
|
||||
AcceptanceSnapshotPath: *acceptanceSnapshot, EvidenceIndexPath: *evidenceIndex,
|
||||
PilotDailySnapshotPaths: []string(pilotDailySnapshots), PilotWeeklySnapshotPath: *pilotWeeklySnapshot, OutputPath: *output,
|
||||
})
|
||||
if err != nil {
|
||||
fmt.Fprintln(os.Stderr, "release evidence bundle failed:", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
encoded, _ := json.Marshal(result)
|
||||
fmt.Println(string(encoded))
|
||||
}
|
||||
Reference in New Issue
Block a user