Skip to content

Commit 2c16fa1

Browse files
committed
* [fix] imp upgrade
1 parent c63f5fc commit 2c16fa1

File tree

5 files changed

+21
-20
lines changed

5 files changed

+21
-20
lines changed

internal/pkg/cli/helm/helm.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ func chartUpgrade(f factory.Factory) *cobra.Command {
194194
return errors.Errorf("helm create go client err: %v", err)
195195
}
196196
values, _ := exhelm.MergeValues(p)
197-
_, err = hc.Upgrade(name, repoName, chartName, chartVersion, values)
197+
_, err = hc.Upgrade(name, repoName, chartName, chartVersion, values, true)
198198
return err
199199
},
200200
}

internal/pkg/cli/tool/domain.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ func domainAdd(f factory.Factory) *cobra.Command {
151151
strvals.ParseInto(value, base)
152152
}
153153
defaultValue = exmap.MergeMaps(defaultValue, base)
154-
if _, err := helmClient.Upgrade(common.DefaultQuchengName, common.DefaultHelmRepoName, common.DefaultQuchengName, "", defaultValue); err != nil {
154+
if _, err := helmClient.Upgrade(common.DefaultQuchengName, common.DefaultHelmRepoName, common.DefaultQuchengName, "", defaultValue, false); err != nil {
155155
log.Warnf("upgrade %s failed, reason: %v", common.DefaultQuchengName, err)
156156
} else {
157157
log.Donef("upgrade %s success", common.DefaultQuchengName)

internal/pkg/util/helm/helm.go

+7-5
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ func (c Client) GetDetail(name string) (*release.Release, error) {
103103
return result, nil
104104
}
105105

106-
func (c Client) Upgrade(name, repoName, chartName, chartVersion string, values map[string]interface{}) (*release.Release, error) {
106+
func (c Client) Upgrade(name, repoName, chartName, chartVersion string, values map[string]interface{}, fetch bool) (*release.Release, error) {
107107
repos, err := c.ListRepo()
108108
if err != nil {
109109
return nil, err
@@ -148,11 +148,13 @@ func (c Client) Upgrade(name, repoName, chartName, chartVersion string, values m
148148
if err != nil {
149149
return nil, errors.Wrap(err, fmt.Sprintf("load chart %s failed: %v", chartName, err))
150150
}
151-
releaseValue, err := c.GetDetail(name)
152-
if err != nil {
153-
return nil, errors.Errorf("fetch %s chart release value failed, %v", name, err)
151+
if fetch {
152+
releaseValue, err := c.GetDetail(name)
153+
if err != nil {
154+
return nil, errors.Errorf("fetch %s chart release value failed, %v", name, err)
155+
}
156+
values = MergeMaps(releaseValue.Config, values)
154157
}
155-
values = MergeMaps(releaseValue.Config, values)
156158
release, err := client.Run(name, ct, values)
157159
if err != nil {
158160
return release, errors.Wrap(err, fmt.Sprintf("upgrade tool %s with chart %s failed: %v", name, chartName, err))

pkg/qucheng/upgrade/upgrade.go

+7-8
Original file line numberDiff line numberDiff line change
@@ -110,8 +110,6 @@ func Upgrade(flagVersion string, testmode bool, log log.Logger) error {
110110
if devops && cv.Name == common.DefaultZentaoPaasName {
111111
deploy := defaultValue["deploy"]
112112
product := deploy.(map[string]interface{})["product"]
113-
versions := deploy.(map[string]interface{})["versions"]
114-
appoldVersion := versions.(map[string]interface{})[product.(string)]
115113
switch product {
116114
case common.ZenTaoBizType.String():
117115
selectItems = selectItems[1:]
@@ -120,7 +118,7 @@ func Upgrade(flagVersion string, testmode bool, log log.Logger) error {
120118
case common.ZenTaoIPDType.String():
121119
selectItems = selectItems[3:]
122120
}
123-
log.Infof("current version: %v(%v)", product, appoldVersion)
121+
log.Infof("current version: %v", product)
124122
selectApp := promptui.Select{
125123
Label: "select upgrade version",
126124
Items: selectItems,
@@ -134,17 +132,18 @@ func Upgrade(flagVersion string, testmode bool, log log.Logger) error {
134132
}
135133
it, _, _ := selectApp.Run()
136134
newProduct := selectItems[it].Key.String()
137-
defaultValue["deploy"].(map[string]interface{})["product"] = newProduct
138135
appnewVersion := common.GetVersion(true, newProduct, "")
139136
if !(selectItems[it].Key == common.ZenTaoOSSType || selectItems[it].Key == common.ZenTaoOldOSSType) {
140137
appnewVersion = fmt.Sprintf("%s%s.k8s", newProduct, common.GetVersion(true, newProduct, ""))
141138
if newProduct != product.(string) {
142139
log.Warn("切换版本升级(如开源版升级到企业版), 可能导致因版本授权问题无法正常使用, 如有问题请联系技术支持!")
143140
}
144141
}
145-
defaultValue["deploy"].(map[string]interface{})["versions"].(map[string]interface{})[product.(string)] = appnewVersion
146-
log.Infof("devops mode, product: %v, oldversion: %v, newversion: %v", product, appoldVersion, appnewVersion)
147-
msg := fmt.Sprintf("Are you sure to upgrade from %v(%v) to %v(%v)", product, appoldVersion, selectItems[it].Key.String(), appnewVersion)
142+
defaultValue["deploy"] = map[string]any{
143+
"product": newProduct,
144+
}
145+
log.Debugf("devops mode, product: %v, version: %v", product, appnewVersion)
146+
msg := fmt.Sprintf("Are you sure to upgrade to %v(%v)", selectItems[it].Key.String(), appnewVersion)
148147
status, _ := confirm.Confirm(msg)
149148
if !status {
150149
log.Warnf("upgrade %s canceled", cv.Name)
@@ -156,7 +155,7 @@ func Upgrade(flagVersion string, testmode bool, log log.Logger) error {
156155
}
157156
}
158157
}
159-
if _, err := helmClient.Upgrade(cv.Name, common.DefaultHelmRepoName, cv.Name, "", defaultValue); err != nil {
158+
if _, err := helmClient.Upgrade(cv.Name, common.DefaultHelmRepoName, cv.Name, "", defaultValue, false); err != nil {
160159
log.Warnf("upgrade %s failed, reason: %v", cv.Name, err)
161160
} else {
162161
log.Donef("upgrade %s success", cv.Name)

pkg/quickon/quickon.go

+5-5
Original file line numberDiff line numberDiff line change
@@ -362,11 +362,11 @@ func (m *Meta) Init() error {
362362
if m.DevopsMode {
363363
// 指定类型
364364
helmargs = append(helmargs, "--set", fmt.Sprintf("deploy.product=%s", m.Type))
365-
deployVersion := fmt.Sprintf("deploy.versions.%s=%s%s.k8s", m.Type, m.Type, installVersion)
366-
if m.Type == common.ZenTaoOSSType.String() {
367-
deployVersion = fmt.Sprintf("deploy.versions.%s=%s", m.Type, installVersion)
368-
}
369-
helmargs = append(helmargs, "--set", deployVersion)
365+
// deployVersion := fmt.Sprintf("deploy.versions.%s=%s%s.k8s", m.Type, m.Type, installVersion)
366+
// if m.Type == common.ZenTaoOSSType.String() {
367+
// deployVersion = fmt.Sprintf("deploy.versions.%s=%s", m.Type, installVersion)
368+
// }
369+
// helmargs = append(helmargs, "--set", deployVersion)
370370
if helmchan != "stable" {
371371
helmargs = append(helmargs, "--set", "image.repository=test/zentao")
372372
}

0 commit comments

Comments
 (0)