in container/go/cmd/update_deps/update_deps.go [68:119]
func main() {
flag.Parse()
if *repository == "" {
log.Fatalln("Required option -repository was not specified.")
}
if *output == "" {
log.Fatalln("Required option -output was not specified.")
}
options := []crane.Option{}
options = append(options, crane.WithPlatform(&v1.Platform{Architecture: "amd64", OS: "linux"}))
latest := *repository + ":latest"
latestDigest, err := crane.Digest(latest, options...)
if err != nil {
log.Fatalf("Computing digest for %s: %v", latest, err)
}
debug := *repository + ":debug"
debugDigest, err := crane.Digest(debug, options...)
if err != nil {
if !strings.Contains(err.Error(), "MANIFEST_UNKNOWN: Failed to fetch") {
log.Fatalf("Computing digest for %s: %v", debug, err)
}
debugDigest = latestDigest
}
now := time.Now()
// Jan 2 15:04:05 2006 MST
date := now.Format("2006-01-02 15:04 -0700")
t := template.Must(template.New("digestTemplate").Parse(digestTemplate))
r := Data{
DebugTag: debugDigest,
LatestTag: latestDigest,
Debug: debug,
Latest: latest,
Date: date,
}
f, err := os.Create(*output)
if err != nil {
log.Fatalf("Failed to open file %s: %s", *output, err)
}
defer f.Close()
err = t.Execute(f, r)
if err != nil {
log.Fatalf("Executing template:", err)
}
}