mirror of
https://github.com/caddyserver/caddy.git
synced 2024-12-25 21:23:48 +03:00
cmd: Reject multiple configs for fmt command (#6717)
This commit is contained in:
parent
efd9251ad3
commit
fb72793269
2 changed files with 9 additions and 3 deletions
|
@ -560,10 +560,15 @@ func cmdValidateConfig(fl Flags) (int, error) {
|
|||
|
||||
func cmdFmt(fl Flags) (int, error) {
|
||||
configFile := fl.Arg(0)
|
||||
if configFile == "" {
|
||||
configFile = "Caddyfile"
|
||||
configFlag := fl.String("config")
|
||||
if (len(fl.Args()) > 1) || (configFlag != "" && configFile != "") {
|
||||
return caddy.ExitCodeFailedStartup, fmt.Errorf("fmt does not support multiple files %s %s", configFlag, strings.Join(fl.Args(), " "))
|
||||
}
|
||||
if configFile == "" && configFlag == "" {
|
||||
configFile = "Caddyfile"
|
||||
} else if configFile == "" {
|
||||
configFile = configFlag
|
||||
}
|
||||
|
||||
// as a special case, read from stdin if the file name is "-"
|
||||
if configFile == "-" {
|
||||
input, err := io.ReadAll(os.Stdin)
|
||||
|
|
|
@ -388,6 +388,7 @@ When reading from stdin, the --overwrite flag has no effect: the result
|
|||
is always printed to stdout.
|
||||
`,
|
||||
CobraFunc: func(cmd *cobra.Command) {
|
||||
cmd.Flags().StringP("config", "c", "", "Configuration file")
|
||||
cmd.Flags().BoolP("overwrite", "w", false, "Overwrite the input file with the results")
|
||||
cmd.Flags().BoolP("diff", "d", false, "Print the differences between the input file and the formatted output")
|
||||
cmd.RunE = WrapCommandFuncForCobra(cmdFmt)
|
||||
|
|
Loading…
Reference in a new issue