ctop/config/main.go

47 lines
980 B
Go
Raw Normal View History

2017-02-07 04:33:09 +01:00
package config
2017-01-03 18:37:09 +01:00
2017-01-04 18:50:49 +01:00
import (
"fmt"
2017-01-04 18:50:49 +01:00
"os"
"sync"
"github.com/bcicen/ctop/logging"
2017-01-04 18:50:49 +01:00
)
2017-02-09 04:49:46 +01:00
var (
GlobalParams []*Param
GlobalSwitches []*Switch
2020-01-02 20:28:51 +01:00
GlobalColumns []*Column
lock sync.RWMutex
log = logging.Init()
2017-02-09 04:49:46 +01:00
)
func Init() {
for _, p := range defaultParams {
GlobalParams = append(GlobalParams, p)
2020-01-02 20:28:51 +01:00
log.Infof("loaded default config param [%s]: %s", quote(p.Key), quote(p.Val))
2017-01-03 18:37:09 +01:00
}
for _, s := range defaultSwitches {
GlobalSwitches = append(GlobalSwitches, s)
2020-01-02 20:28:51 +01:00
log.Infof("loaded default config switch [%s]: %t", quote(s.Key), s.Val)
}
2020-01-02 20:28:51 +01:00
for _, c := range defaultColumns {
x := c
GlobalColumns = append(GlobalColumns, &x)
log.Infof("loaded default widget config [%s]: %t", quote(x.Name), x.Enabled)
}
2017-01-03 18:37:09 +01:00
}
func quote(s string) string {
return fmt.Sprintf("\"%s\"", s)
}
// Return env var value if set, else return defaultVal
func getEnv(key, defaultVal string) string {
val := os.Getenv(key)
if val != "" {
return val
}
return defaultVal
}