feat: use default port for bootstrap master
This commit is contained in:
parent
8f48ab6491
commit
282e54f831
1 changed files with 22 additions and 16 deletions
|
|
@ -7,6 +7,7 @@ import (
|
|||
"os/signal"
|
||||
"path/filepath"
|
||||
"strconv"
|
||||
"strings"
|
||||
"syscall"
|
||||
|
||||
"git.wzray.com/homelab/hivemind/internal/config"
|
||||
|
|
@ -27,8 +28,8 @@ import (
|
|||
)
|
||||
|
||||
var (
|
||||
configFile = "/etc/hivemind/config.toml"
|
||||
registryFile = "/var/lib/hivemind/registry"
|
||||
configFile = "/etc/hivemind/config.toml"
|
||||
registryFile = "/var/lib/hivemind/registry"
|
||||
)
|
||||
|
||||
func levelToZerolog(l config.LogLevel) zerolog.Level {
|
||||
|
|
@ -64,22 +65,22 @@ func init() {
|
|||
}
|
||||
|
||||
func main() {
|
||||
config, err := config.FromFile(configFile)
|
||||
configuration, err := config.FromFile(configFile)
|
||||
if err != nil {
|
||||
log.Fatal().Err(err).Msg("unable to read config file")
|
||||
}
|
||||
|
||||
if err := config.Validate(); err != nil {
|
||||
if err := configuration.Validate(); err != nil {
|
||||
log.Fatal().Err(err).Msg("invalid configuration")
|
||||
}
|
||||
|
||||
zerolog.SetGlobalLevel(levelToZerolog(config.Node.LogLevel))
|
||||
zerolog.SetGlobalLevel(levelToZerolog(configuration.Node.LogLevel))
|
||||
|
||||
self := types.NewNode(
|
||||
config.Node.Hostname,
|
||||
config.Node.Address,
|
||||
config.Node.Port,
|
||||
config.Roles,
|
||||
configuration.Node.Hostname,
|
||||
configuration.Node.Address,
|
||||
configuration.Node.Port,
|
||||
configuration.Roles,
|
||||
)
|
||||
|
||||
filestore := registry.NewFileStorage(registryFile)
|
||||
|
|
@ -88,29 +89,29 @@ func main() {
|
|||
|
||||
state := state.New(registry, self)
|
||||
|
||||
nodeRole := node.New(state, config.Node)
|
||||
nodeRole := node.New(state, configuration.Node)
|
||||
|
||||
var builder middleware.MiddlewareBuilder
|
||||
middlewares := builder.Prepare()
|
||||
|
||||
client.Init(middlewares)
|
||||
|
||||
listenAddr := fmt.Sprintf("%v:%v", config.Node.ListenOn, config.Node.Port)
|
||||
listenAddr := fmt.Sprintf("%v:%v", configuration.Node.ListenOn, configuration.Node.Port)
|
||||
server := server.NewServer(listenAddr, middlewares)
|
||||
|
||||
roles := make([]roles.Role, 0)
|
||||
roles = append(roles, nodeRole)
|
||||
|
||||
for _, role := range config.Roles {
|
||||
for _, role := range configuration.Roles {
|
||||
switch role {
|
||||
case types.MasterRole:
|
||||
role := master.New(state, config.Configs.Master)
|
||||
role := master.New(state, configuration.Configs.Master)
|
||||
roles = append(roles, role)
|
||||
case types.DnsRole:
|
||||
role := dns.New(state, config.Configs.Dns)
|
||||
role := dns.New(state, configuration.Configs.Dns)
|
||||
roles = append(roles, role)
|
||||
case types.HostRole:
|
||||
role := host.New(state, config.Configs.Host)
|
||||
role := host.New(state, configuration.Configs.Host)
|
||||
roles = append(roles, role)
|
||||
}
|
||||
}
|
||||
|
|
@ -125,7 +126,12 @@ func main() {
|
|||
serverError <- server.Listen()
|
||||
}()
|
||||
|
||||
if err := nodeRole.Join(config.Node.BootstrapMaster); err != nil {
|
||||
bootstrapMaster := configuration.Node.BootstrapMaster
|
||||
if !strings.Contains(bootstrapMaster, ":") {
|
||||
bootstrapMaster += fmt.Sprintf(":%d", config.DefaultConfig.Node.Port)
|
||||
}
|
||||
|
||||
if err := nodeRole.Join(bootstrapMaster); err != nil {
|
||||
log.Warn().Err(err).Msg("unable to join")
|
||||
} else {
|
||||
log.Info().Msg("joined")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue