From 2d2f2ec2c2c794e2f2ecfbcbea0e59b7d8930018 Mon Sep 17 00:00:00 2001 From: Zexi Li Date: Sat, 29 Oct 2022 06:20:34 +0800 Subject: [PATCH] fix(baremetal): panic occured when get server ssh client (#15249) --- pkg/baremetal/manager.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/baremetal/manager.go b/pkg/baremetal/manager.go index 5d0b5266b4..ae695e41bc 100644 --- a/pkg/baremetal/manager.go +++ b/pkg/baremetal/manager.go @@ -1552,8 +1552,8 @@ func (b *SBaremetalInstance) GetServerSSHClient() (*ssh.Client, error) { } nics := s.GetNics() var errs []error - for _, nic := range nics { - if nic.LinkUp && nic.Ip != "" { + for idx, nic := range nics { + if nic.Ip != "" { for _, user := range []string{"cloudroot", "root"} { sshCli, err := ssh.NewClient(nic.Ip, 22, user, "", privateKey) if err != nil { @@ -1563,6 +1563,8 @@ func (b *SBaremetalInstance) GetServerSSHClient() (*ssh.Client, error) { return sshCli, nil } } + } else { + errs = append(errs, errors.Errorf("nic %d link_up: %v, ip: %q", idx, nic.LinkUp, nic.Ip)) } }