func loadCaddyfile() (caddy.Input, error) { // First try stdin pipe cdyfile, err := caddy.CaddyfileFromPipe(os.Stdin) if err != nil { return nil, err } if cdyfile != nil { // it is an error if -conf is also specified because, which to use? if conf != "" { return nil, errors.New("load: can't choose between stdin pipe and -conf flag") } return cdyfile, err } // -conf flag if conf != "" { contents, err := ioutil.ReadFile(conf) if err != nil { return nil, err } return caddy.CaddyfileInput{ Contents: contents, Filepath: conf, RealFile: true, }, nil } // command line args if flag.NArg() > 0 { confBody := caddy.Host + ":" + caddy.Port + "\n" + strings.Join(flag.Args(), "\n") return caddy.CaddyfileInput{ Contents: []byte(confBody), Filepath: "args", }, nil } // Caddyfile in cwd contents, err := ioutil.ReadFile(caddy.DefaultConfigFile) if err != nil { if os.IsNotExist(err) { return caddy.DefaultInput(), nil } return nil, err } return caddy.CaddyfileInput{ Contents: contents, Filepath: caddy.DefaultConfigFile, RealFile: true, }, nil }
func loadCaddyfile() (caddy.Input, error) { // Try -conf flag if conf != "" { if conf == "stdin" { return caddy.CaddyfileFromPipe(os.Stdin) } contents, err := ioutil.ReadFile(conf) if err != nil { return nil, err } return caddy.CaddyfileInput{ Contents: contents, Filepath: conf, RealFile: true, }, nil } // command line args if flag.NArg() > 0 { confBody := caddy.Host + ":" + caddy.Port + "\n" + strings.Join(flag.Args(), "\n") return caddy.CaddyfileInput{ Contents: []byte(confBody), Filepath: "args", }, nil } // Caddyfile in cwd contents, err := ioutil.ReadFile(caddy.DefaultConfigFile) if err != nil { if os.IsNotExist(err) { return caddy.DefaultInput(), nil } return nil, err } return caddy.CaddyfileInput{ Contents: contents, Filepath: caddy.DefaultConfigFile, RealFile: true, }, nil }