|
|
@ -7,7 +7,6 @@ import ( |
|
|
|
"net/http" |
|
|
|
"net/http" |
|
|
|
"os" |
|
|
|
"os" |
|
|
|
"path" |
|
|
|
"path" |
|
|
|
"runtime" |
|
|
|
|
|
|
|
"strings" |
|
|
|
"strings" |
|
|
|
"time" |
|
|
|
"time" |
|
|
|
|
|
|
|
|
|
|
@ -250,19 +249,24 @@ func (u *UpgradeService) loadReleaseNotes(path string) (string, error) { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func loadArch() (string, error) { |
|
|
|
func loadArch() (string, error) { |
|
|
|
switch runtime.GOARCH { |
|
|
|
std, err := cmd.Exec("uname -a") |
|
|
|
case "amd64", "ppc64le", "s390x", "arm64": |
|
|
|
if err != nil { |
|
|
|
return runtime.GOARCH, nil |
|
|
|
return "", fmt.Errorf("std: %s, err: %s", std, err.Error()) |
|
|
|
case "arm": |
|
|
|
} |
|
|
|
std, err := cmd.Exec("uname -m") |
|
|
|
if strings.Contains(std, "x86_64") { |
|
|
|
if err != nil { |
|
|
|
return "amd64", nil |
|
|
|
return "", fmt.Errorf("std: %s, err: %s", std, err.Error()) |
|
|
|
} |
|
|
|
} |
|
|
|
if strings.Contains(std, "arm64") || strings.Contains(std, "aarch64") { |
|
|
|
if std == "armv7l\n" { |
|
|
|
return "arm64", nil |
|
|
|
return "armv7", nil |
|
|
|
} |
|
|
|
} |
|
|
|
if strings.Contains(std, "armv7l") { |
|
|
|
return "", fmt.Errorf("unsupported such arch: arm-%s", std) |
|
|
|
return "armv7", nil |
|
|
|
default: |
|
|
|
} |
|
|
|
return "", fmt.Errorf("unsupported such arch: %s", runtime.GOARCH) |
|
|
|
if strings.Contains(std, "ppc64le") { |
|
|
|
|
|
|
|
return "ppc64le", nil |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if strings.Contains(std, "s390x") { |
|
|
|
|
|
|
|
return "s390x", nil |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
return "", fmt.Errorf("unsupported such arch: %s", std) |
|
|
|
} |
|
|
|
} |
|
|
|