boulder/cmd/boulder-observer/main.go

46 lines
1.0 KiB
Go

package notmain
import (
"flag"
"os"
"github.com/letsencrypt/boulder/cmd"
"github.com/letsencrypt/boulder/observer"
"github.com/letsencrypt/boulder/strictyaml"
)
func main() {
debugAddr := flag.String("debug-addr", "", "Debug server address override")
configPath := flag.String(
"config", "config.yml", "Path to boulder-observer configuration file")
flag.Parse()
configYAML, err := os.ReadFile(*configPath)
cmd.FailOnError(err, "failed to read config file")
// Parse the YAML config file.
var config observer.ObsConf
err = strictyaml.Unmarshal(configYAML, &config)
if *debugAddr != "" {
config.DebugAddr = *debugAddr
}
if err != nil {
cmd.FailOnError(err, "failed to parse YAML config")
}
// Make an `Observer` object.
observer, err := config.MakeObserver()
if err != nil {
cmd.FailOnError(err, "config failed validation")
}
// Start the `Observer` daemon.
observer.Start()
}
func init() {
cmd.RegisterCommand("boulder-observer", main, &cmd.ConfigValidator{Config: &observer.ObsConf{}})
}