mirror of
https://github.com/yunionio/cloudpods.git
synced 2026-09-24 16:03:43 +08:00
fix(esxi-agent): vmware hostname (#18122)
This commit is contained in:
@@ -83,7 +83,7 @@ require (
|
||||
k8s.io/client-go v0.19.3
|
||||
k8s.io/cluster-bootstrap v0.19.3
|
||||
moul.io/http2curl/v2 v2.3.0
|
||||
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230920120331-bc6c02f3d5dc
|
||||
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230921121036-ab3056658f2f
|
||||
yunion.io/x/executor v0.0.0-20230705125604-c5ac3141db32
|
||||
yunion.io/x/jsonutils v1.0.1-0.20230613121553-0f3b41e2ef19
|
||||
yunion.io/x/log v1.0.1-0.20230411060016-feb3f46ab361
|
||||
|
||||
@@ -1174,8 +1174,8 @@ sigs.k8s.io/structured-merge-diff/v4 v4.0.1/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK
|
||||
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=
|
||||
sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q=
|
||||
sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc=
|
||||
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230920120331-bc6c02f3d5dc h1:EsuxH+yW4w0taqZMGD8AZVFspx5rI0LAqKuqFE6J0tU=
|
||||
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230920120331-bc6c02f3d5dc/go.mod h1:2sgCN7nRPQL3woLfdgqLDd92vwAHqtlz3KKiHxC5BAw=
|
||||
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230921121036-ab3056658f2f h1:BDjzB7nOkoLxEdcTiIUFoocafFaIEulvAnxi5grRycY=
|
||||
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230921121036-ab3056658f2f/go.mod h1:2sgCN7nRPQL3woLfdgqLDd92vwAHqtlz3KKiHxC5BAw=
|
||||
yunion.io/x/executor v0.0.0-20230705125604-c5ac3141db32 h1:v7POYkQwo1XzOxBoIoRVr/k0V9Y5JyjpshlIFa9raug=
|
||||
yunion.io/x/executor v0.0.0-20230705125604-c5ac3141db32/go.mod h1:Uxuou9WQIeJXNpy7t2fPLL0BYLvLiMvGQwY7Qc6aSws=
|
||||
yunion.io/x/jsonutils v0.0.0-20190625054549-a964e1e8a051/go.mod h1:4N0/RVzsYL3kH3WE/H1BjUQdFiWu50JGCFQuuy+Z634=
|
||||
|
||||
Vendored
+1
-1
@@ -1432,7 +1432,7 @@ sigs.k8s.io/structured-merge-diff/v4/value
|
||||
# sigs.k8s.io/yaml v1.2.0
|
||||
## explicit; go 1.12
|
||||
sigs.k8s.io/yaml
|
||||
# yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230920120331-bc6c02f3d5dc
|
||||
# yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230921121036-ab3056658f2f
|
||||
## explicit; go 1.18
|
||||
yunion.io/x/cloudmux/pkg/apis
|
||||
yunion.io/x/cloudmux/pkg/apis/billing
|
||||
|
||||
+20
-6
@@ -21,6 +21,7 @@ import (
|
||||
"sort"
|
||||
"strings"
|
||||
"time"
|
||||
"unicode"
|
||||
|
||||
"github.com/vmware/govmomi/nfc"
|
||||
"github.com/vmware/govmomi/object"
|
||||
@@ -1408,20 +1409,30 @@ func (svm *SVirtualMachine) DoCustomize(ctx context.Context, params jsonutils.JS
|
||||
spec.NicSettingMap = maps
|
||||
|
||||
var (
|
||||
osName string
|
||||
name = "yunionhost"
|
||||
osName string
|
||||
name = "yunionhost"
|
||||
hostname = name
|
||||
)
|
||||
if params.Contains("os_name") {
|
||||
osName, _ = params.GetString("os_name")
|
||||
}
|
||||
if params.Contains("name") {
|
||||
name, _ = params.GetString("name")
|
||||
hostname = name
|
||||
}
|
||||
if params.Contains("hostname") {
|
||||
hostname, _ = params.GetString("hostname")
|
||||
}
|
||||
// avoid spec.identity.hostName error
|
||||
hostname := strings.ReplaceAll(name, "_", "")
|
||||
if len(hostname) > 15 {
|
||||
hostname = hostname[:15]
|
||||
}
|
||||
hostname = func() string {
|
||||
ret := ""
|
||||
for _, s := range hostname {
|
||||
if unicode.IsDigit(s) || unicode.IsLetter(s) || s == '-' {
|
||||
ret += string(s)
|
||||
}
|
||||
}
|
||||
return ret
|
||||
}()
|
||||
if osName == "Linux" {
|
||||
linuxPrep := types.CustomizationLinuxPrep{
|
||||
HostName: &types.CustomizationFixedName{Name: hostname},
|
||||
@@ -1430,6 +1441,9 @@ func (svm *SVirtualMachine) DoCustomize(ctx context.Context, params jsonutils.JS
|
||||
}
|
||||
spec.Identity = &linuxPrep
|
||||
} else if osName == "Windows" {
|
||||
if len(hostname) > 15 {
|
||||
hostname = hostname[:15]
|
||||
}
|
||||
sysPrep := types.CustomizationSysprep{
|
||||
GuiUnattended: types.CustomizationGuiUnattended{
|
||||
TimeZone: 210,
|
||||
|
||||
Reference in New Issue
Block a user