in custard/cmd/custard/main.go [129:162]
func setupFilesCmd(configFile string, pathsFile string) {
config, err := c.LoadConfig(configFile)
if err != nil {
log.Fatalln("❌ error loading the config file: ", configFile, "\n", err)
}
pathsBytes, err := os.ReadFile(pathsFile)
if err != nil {
log.Fatalln("❌ error getting the diffs: ", pathsFile, "\n", err)
}
// Trim whitespace to remove extra newline from diff output.
paths := strings.Split(strings.TrimSpace(string(pathsBytes)), "\n")
setups, errors := config.FindSetupFiles(paths)
if len(errors) > 0 {
var sb strings.Builder
sb.WriteString("❌ could not load setup files.\n")
for _, e := range errors {
sb.WriteString(e + "\n")
}
if config.CISetupHelpURL != "" {
sb.WriteString("\n")
sb.WriteString("For more information, see:\n")
sb.WriteString(fmt.Sprintf(" %v\n", config.CISetupHelpURL))
}
log.Fatalln(sb.String())
}
output, err := json.Marshal(setups)
if err != nil {
log.Fatalln("❌ error marshaling setups to JSON.\n", err)
}
fmt.Println(string(output))
}