From 991e08fa7162b8484d495c0911aede9bc4f2ef7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E7=A5=A5=E8=B6=85?= Date: Fri, 18 Nov 2022 15:57:06 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=9C=E7=A8=8B=E5=AE=89=E8=A3=85=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E6=97=B6uname=E8=AF=BB=E5=8F=96=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=E6=97=B6=E8=87=AA=E5=8A=A8=E9=87=8D=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/installers/installer_base.go | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/internal/installers/installer_base.go b/internal/installers/installer_base.go index 083b24c5..3b171f89 100644 --- a/internal/installers/installer_base.go +++ b/internal/installers/installer_base.go @@ -147,13 +147,23 @@ func (this *BaseInstaller) LookupLatestInstaller(filePrefix string) (string, err // InstallHelper 上传安装助手 func (this *BaseInstaller) InstallHelper(targetDir string, role nodeconfigs.NodeRole) (env *Env, err error) { - uname, stderr, err := this.client.Exec("/usr/bin/uname -a") + var unameRetries = 3 + var uname string + for i := 0; i < unameRetries; i++ { + uname, _, err = this.client.Exec("/usr/bin/uname -a") + if len(uname) == 0 { + continue + } + if err == nil { + break + } + } if err != nil { - return env, err + return env, errors.New("unable to execute 'uname -a' on this system: " + err.Error()) } if len(uname) == 0 { - return nil, errors.New("unable to execute 'uname -a' on this system: " + stderr) + return nil, errors.New("unable to execute 'uname -a' on this system") } osName := ""