Browse Source

Add timeout to hostname check

pull/437/head
galal-hussein 6 years ago
parent
commit
5d8d9e610b
  1. 17
      pkg/agent/config/config.go
  2. 4
      pkg/agent/run.go

17
pkg/agent/config/config.go

@ -253,8 +253,6 @@ func get(envInfo *cmds.Agent) (*config.Node, error) {
return nil, err
}
hostnameCheck(nodeName)
nodeCertFile := filepath.Join(envInfo.DataDir, "token-node.crt")
nodeKeyFile := filepath.Join(envInfo.DataDir, "token-node.key")
nodePasswordFile := filepath.Join(envInfo.DataDir, "node-password.txt")
@ -351,13 +349,18 @@ func getConfig(info *clientaccess.Info) (*config.Control, error) {
return controlControl, json.Unmarshal(data, controlControl)
}
func hostnameCheck(hostname string) {
for {
_, err := sysnet.LookupHost(hostname)
func HostnameCheck(cfg cmds.Agent) error {
hostname, _, err := getHostnameAndIP(cfg)
if err != nil {
return err
}
for i := 0; i < 5; i++ {
_, err = sysnet.LookupHost(hostname)
if err == nil {
break
return nil
}
logrus.Infof("Waiting for hostname %s to be resolvable: %v", hostname, err)
time.Sleep(2 * time.Second)
time.Sleep(time.Second * 3)
}
return fmt.Errorf("Timed out waiting for hostname %s to be resolvable: %v", hostname, err)
}

4
pkg/agent/run.go

@ -25,6 +25,10 @@ import (
func run(ctx context.Context, cfg cmds.Agent) error {
nodeConfig := config.Get(ctx, cfg)
if err := config.HostnameCheck(cfg); err != nil {
return err
}
if !nodeConfig.NoFlannel {
if err := flannel.Prepare(ctx, nodeConfig); err != nil {
return err

Loading…
Cancel
Save