mirror of
https://github.com/safing/portbase
synced 2025-09-02 02:29:59 +00:00
Update listen api address config override handling
This commit is contained in:
parent
05bead1890
commit
79a4219487
3 changed files with 16 additions and 16 deletions
|
@ -17,41 +17,41 @@ func init() {
|
||||||
flag.StringVar(&listenAddressFlag, "api-address", "", "override api listen address")
|
flag.StringVar(&listenAddressFlag, "api-address", "", "override api listen address")
|
||||||
}
|
}
|
||||||
|
|
||||||
func checkFlags() error {
|
func logFlagOverrides() {
|
||||||
if listenAddressFlag != "" {
|
if listenAddressFlag != "" {
|
||||||
log.Warning("api: api/listenAddress config is being overridden by -api-address flag")
|
log.Warning("api: api/listenAddress default config is being overridden by -api-address flag")
|
||||||
}
|
}
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetAPIAddress() string {
|
func getDefaultListenAddress() string {
|
||||||
|
// check if overridden
|
||||||
if listenAddressFlag != "" {
|
if listenAddressFlag != "" {
|
||||||
return listenAddressFlag
|
return listenAddressFlag
|
||||||
}
|
}
|
||||||
return listenAddressConfig()
|
// return internal default
|
||||||
|
return defaultListenAddress
|
||||||
}
|
}
|
||||||
|
|
||||||
func registerConfig() error {
|
func registerConfig() error {
|
||||||
err := config.Register(&config.Option{
|
err := config.Register(&config.Option{
|
||||||
Name: "API Address",
|
Name: "API Address",
|
||||||
Key: "api/listenAddress",
|
Key: "api/listenAddress",
|
||||||
Description: "Define on what IP and port the API should listen on. Be careful, changing this may become a security issue.",
|
Description: "Define on which IP and port the API should listen on.",
|
||||||
ExpertiseLevel: config.ExpertiseLevelExpert,
|
ExpertiseLevel: config.ExpertiseLevelDeveloper,
|
||||||
OptType: config.OptTypeString,
|
OptType: config.OptTypeString,
|
||||||
DefaultValue: defaultListenAddress,
|
DefaultValue: getDefaultListenAddress(),
|
||||||
ValidationRegex: "^([0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}:[0-9]{1,5}|\\[[:0-9A-Fa-f]+\\]:[0-9]{1,5})$",
|
ValidationRegex: "^([0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}:[0-9]{1,5}|\\[[:0-9A-Fa-f]+\\]:[0-9]{1,5})$",
|
||||||
|
RequiresRestart: true,
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
listenAddressConfig = config.GetAsString("api/listenAddress", defaultListenAddress)
|
listenAddressConfig = config.GetAsString("api/listenAddress", getDefaultListenAddress())
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// SetDefaultAPIListenAddress sets the default listen address for the API.
|
// SetDefaultAPIListenAddress sets the default listen address for the API.
|
||||||
func SetDefaultAPIListenAddress(address string) {
|
func SetDefaultAPIListenAddress(address string) {
|
||||||
if defaultListenAddress == "" {
|
defaultListenAddress = address
|
||||||
defaultListenAddress = address
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,14 +17,14 @@ func init() {
|
||||||
}
|
}
|
||||||
|
|
||||||
func prep() error {
|
func prep() error {
|
||||||
err := checkFlags()
|
if getDefaultListenAddress() == "" {
|
||||||
if err != nil {
|
return errors.New("no listen address for api available")
|
||||||
return err
|
|
||||||
}
|
}
|
||||||
return registerConfig()
|
return registerConfig()
|
||||||
}
|
}
|
||||||
|
|
||||||
func start() error {
|
func start() error {
|
||||||
|
logFlagOverrides()
|
||||||
go Serve()
|
go Serve()
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,7 +51,7 @@ func RegisterMiddleware(middleware Middleware) {
|
||||||
// Serve starts serving the API endpoint.
|
// Serve starts serving the API endpoint.
|
||||||
func Serve() {
|
func Serve() {
|
||||||
// configure server
|
// configure server
|
||||||
server.Addr = GetAPIAddress()
|
server.Addr = listenAddressConfig()
|
||||||
server.Handler = middlewareHandler
|
server.Handler = middlewareHandler
|
||||||
|
|
||||||
// start serving
|
// start serving
|
||||||
|
|
Loading…
Add table
Reference in a new issue