github.com/crowdsecurity/crowdsec@v1.6.1/pkg/csconfig/cscli.go (about) 1 package csconfig 2 3 import ( 4 "fmt" 5 ) 6 7 /*cscli specific config, such as hub directory*/ 8 type CscliCfg struct { 9 Output string `yaml:"output,omitempty"` 10 Color string `yaml:"color,omitempty"` 11 HubBranch string `yaml:"hub_branch"` 12 HubURLTemplate string `yaml:"__hub_url_template__,omitempty"` 13 SimulationConfig *SimulationConfig `yaml:"-"` 14 DbConfig *DatabaseCfg `yaml:"-"` 15 16 SimulationFilePath string `yaml:"-"` 17 PrometheusUrl string `yaml:"prometheus_uri"` 18 } 19 20 const defaultHubURLTemplate = "https://hub-cdn.crowdsec.net/%s/%s" 21 22 func (c *Config) loadCSCLI() error { 23 if c.Cscli == nil { 24 c.Cscli = &CscliCfg{} 25 } 26 27 if c.Prometheus.ListenAddr != "" && c.Prometheus.ListenPort != 0 { 28 c.Cscli.PrometheusUrl = fmt.Sprintf("http://%s:%d/metrics", c.Prometheus.ListenAddr, c.Prometheus.ListenPort) 29 } 30 31 if c.Cscli.HubURLTemplate == "" { 32 c.Cscli.HubURLTemplate = defaultHubURLTemplate 33 } 34 35 return nil 36 }