Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
remove ValuesYaml in env render
Browse files Browse the repository at this point in the history
Signed-off-by: Patrick Zhao <zhaoyu@koderover.com>
PetrusZ committed Jan 21, 2025
1 parent 3769f14 commit 3a59cdb
Showing 9 changed files with 48 additions and 20 deletions.
Original file line number Diff line number Diff line change
@@ -369,7 +369,7 @@ func (p *Product) LintServices() {
svcMap[key] = svc
return true
}
log.Warnf("service %s has older revision %d, drop it", key, svc.Revision)
log.Warnf("%s/%s's service %s has older revision %d, drop it", p.ProductName, p.EnvName, key, svc.Revision)
return false
}
svcMap[key] = svc
Original file line number Diff line number Diff line change
@@ -144,7 +144,7 @@ type ServiceRender struct {
ChartRepo string `bson:"chart_repo,omitempty" json:"chart_repo,omitempty"`
ChartName string `bson:"chart_name,omitempty" json:"chart_name,omitempty"`
ChartVersion string `bson:"chart_version,omitempty" json:"chart_version,omitempty"`
ValuesYaml string `bson:"values_yaml,omitempty" json:"values_yaml,omitempty"` // full helm service values yaml, only record, not actually used in calculation
// ValuesYaml string `bson:"values_yaml,omitempty" json:"values_yaml,omitempty"` // full helm service values yaml, only record, not actually used in calculation
OverrideValues string `bson:"override_values,omitempty" json:"override_values,omitempty"` // used for helm services, json-encoded string of kv value
// ---- for helm services end ----

2 changes: 1 addition & 1 deletion pkg/microservice/aslan/core/common/service/environment.go
Original file line number Diff line number Diff line change
@@ -75,7 +75,7 @@ func FillProductTemplateValuesYamls(tmpl *templatemodels.Product, production boo
tmpl.ChartInfos = append(tmpl.ChartInfos, &templatemodels.ServiceRender{
ServiceName: svc.ServiceName,
ChartVersion: svc.HelmChart.Version,
ValuesYaml: svc.HelmChart.ValuesYaml,
// ValuesYaml: svc.HelmChart.ValuesYaml,
})
}
return nil
4 changes: 2 additions & 2 deletions pkg/microservice/aslan/core/common/service/render.go
Original file line number Diff line number Diff line change
@@ -143,10 +143,10 @@ func (args *HelmSvcRenderArg) fromCustomValueYaml(customValuesYaml *templatemode
}

// FillRenderChartModel fill render chart model
func (args *HelmSvcRenderArg) FillRenderChartModel(chart *templatemodels.ServiceRender, version, valuesYaml string) {
func (args *HelmSvcRenderArg) FillRenderChartModel(chart *templatemodels.ServiceRender, version string) {
chart.ServiceName = args.ServiceName
chart.ChartVersion = version
chart.ValuesYaml = valuesYaml
// chart.ValuesYaml = valuesYaml
chart.OverrideValues = args.ToOverrideValueString()
chart.OverrideYaml = args.toCustomValuesYaml()
}
Original file line number Diff line number Diff line change
@@ -91,7 +91,7 @@ func GetLatestRenderSetFromHelmProject(productName string, isProduction bool) (*
chartInfo = append(chartInfo, &templatemodels.ServiceRender{
ServiceName: service.ServiceName,
ChartVersion: service.HelmChart.Version,
ValuesYaml: service.HelmChart.ValuesYaml,
// ValuesYaml: service.HelmChart.ValuesYaml,
})
}

2 changes: 1 addition & 1 deletion pkg/microservice/aslan/core/common/util/openapi.go
Original file line number Diff line number Diff line change
@@ -41,7 +41,7 @@ func ConvertProductServiceToOpenAPIEnvService(productService *models.ProductServ
ReleaseName: productService.ReleaseName,
RenderedYaml: productService.RenderedYaml,
Containers: ConvertContainerToOpenAPIContainer(productService.Containers),
ValuesYaml: productService.GetServiceRender().ValuesYaml,
// ValuesYaml: productService.GetServiceRender().ValuesYaml,
OverrideValues: productService.GetServiceRender().OverrideValues,
UpdateTime: productService.UpdateTime,
}
44 changes: 36 additions & 8 deletions pkg/microservice/aslan/core/environment/service/environment.go
Original file line number Diff line number Diff line change
@@ -1076,7 +1076,7 @@ func updateHelmProduct(productName, envName, username, requestID string, overrid

if svr.Render == nil {
svr.GetServiceRender().ChartVersion = templateSvcMap[svr.ServiceName].HelmChart.Version
svr.GetServiceRender().ValuesYaml = templateSvcMap[svr.ServiceName].HelmChart.ValuesYaml
// svr.GetServiceRender().ValuesYaml = templateSvcMap[svr.ServiceName].HelmChart.ValuesYaml
}
svr.ReleaseName = releaseName
}
@@ -1317,8 +1317,8 @@ func updateHelmChartProduct(productName, envName, username, requestID string, ov
return nil
}

func genImageFromYaml(c *commonmodels.Container, valuesYaml, defaultValues, overrideYaml, overrideValues string) (string, error) {
mergeYaml, err := helmtool.MergeOverrideValues(valuesYaml, defaultValues, overrideYaml, overrideValues, nil)
func genImageFromYaml(c *commonmodels.Container, serviceValuesYaml, defaultValues, overrideYaml, overrideValues string) (string, error) {
mergeYaml, err := helmtool.MergeOverrideValues(serviceValuesYaml, defaultValues, overrideYaml, overrideValues, nil)
if err != nil {
return "", err
}
@@ -1339,6 +1339,34 @@ func genImageFromYaml(c *commonmodels.Container, valuesYaml, defaultValues, over
return image, nil
}

// func genImageFromYaml2(prodSvc *commonmodels.ProductService, c *commonmodels.Container, valuesYaml, defaultValues string) (string, error) {
// helmDeploySvc := helmservice.NewHelmDeployService()
// // newEnvSvc, tmplSvc, err := helmDeploySvc.GenNewEnvService(env, serviceName, true)
// // if err != nil {
// // return "", fmt.Errorf("failed to generate new env service, error: %v", err)
// // }
// mergedValues, err := helmDeploySvc.NewGeneMergedValues(prodSvc, defaultValues, nil)
// if err != nil {
// return "", fmt.Errorf("failed to generate merged values, error: %v", err)
// }
// helmDeploySvc.GeneFullValues()
// mergedValuesYamlFlattenMap, err := converter.YamlToFlatMap([]byte(mergeYaml))
// if err != nil {
// return "", err
// }
// imageRule := templatemodels.ImageSearchingRule{
// Repo: c.ImagePath.Repo,
// Namespace: c.ImagePath.Namespace,
// Image: c.ImagePath.Image,
// Tag: c.ImagePath.Tag,
// }
// image, err := commonutil.GeneImageURI(imageRule.GetSearchingPattern(), mergedValuesYamlFlattenMap)
// if err != nil {
// return "", err
// }
// return image, nil
// }

func prepareEstimateDataForEnvCreation(productName, serviceName string, production bool, isHelmChartDeploy bool, log *zap.SugaredLogger) (*commonmodels.ProductService, *commonmodels.Service, error) {
if isHelmChartDeploy {
prodSvc := &commonmodels.ProductService{
@@ -1375,7 +1403,7 @@ func prepareEstimateDataForEnvCreation(productName, serviceName string, producti
Render: &templatemodels.ServiceRender{
ServiceName: serviceName,
OverrideYaml: &templatemodels.CustomYaml{},
ValuesYaml: templateService.HelmChart.ValuesYaml,
// ValuesYaml: templateService.HelmChart.ValuesYaml,
},
}

@@ -1449,7 +1477,7 @@ func prepareEstimateDataForEnvUpdate(productName, envName, serviceOrReleaseName,
OverrideYaml: &templatemodels.CustomYaml{},
}
}
prodSvc.Render.ValuesYaml = templateService.HelmChart.ValuesYaml
// prodSvc.Render.ValuesYaml = templateService.HelmChart.ValuesYaml
prodSvc.Render.ChartVersion = templateService.HelmChart.Version
}

@@ -1722,7 +1750,7 @@ func UpdateHelmProductCharts(productName, envName, userName, requestID string, p
return e.ErrUpdateEnv.AddDesc(fmt.Sprintf("failed to find current chart values for service: %s", serviceName))
}

arg.FillRenderChartModel(rcValues, rcValues.ChartVersion, rcValues.ValuesYaml)
arg.FillRenderChartModel(rcValues, rcValues.ChartVersion)
changedCharts = append(changedCharts, arg)
updatedRcMap[serviceName] = rcValues
}
@@ -2945,10 +2973,10 @@ func diffRenderSet(username, productName, envName string, productResp *commonmod

productSvc := productResp.GetServiceMap()[serviceName]
if productSvc != nil {
renderChartArgMap[serviceName].FillRenderChartModel(productSvc.GetServiceRender(), productSvc.GetServiceRender().ChartVersion, latestChartInfo.ValuesYaml)
renderChartArgMap[serviceName].FillRenderChartModel(productSvc.GetServiceRender(), productSvc.GetServiceRender().ChartVersion)
newChartInfos = append(newChartInfos, productSvc.GetServiceRender())
} else {
renderChartArgMap[serviceName].FillRenderChartModel(latestChartInfo, latestChartInfo.ChartVersion, latestChartInfo.ValuesYaml)
renderChartArgMap[serviceName].FillRenderChartModel(latestChartInfo, latestChartInfo.ChartVersion)
newChartInfos = append(newChartInfos, latestChartInfo)
}
}
Original file line number Diff line number Diff line change
@@ -59,7 +59,7 @@ func prepareHelmProductCreation(templateProduct *templatemodels.Product, product
return fmt.Errorf("failed to find chart info in product, serviceName: %s productName: %s", singleCV.ServiceName, templateProduct.ProjectName)
}
chartInfo := &templatemodels.ServiceRender{}
singleCV.FillRenderChartModel(chartInfo, tc.ChartVersion, tc.ValuesYaml)
singleCV.FillRenderChartModel(chartInfo, tc.ChartVersion)
cvMap[singleCV.ServiceName] = chartInfo
productObj.ServiceRenders = append(productObj.ServiceRenders, chartInfo)
serviceDeployStrategy[singleCV.ServiceName] = singleCV.DeployStrategy
@@ -85,7 +85,7 @@ func prepareHelmProductCreation(templateProduct *templatemodels.Product, product
if !ok {
return e.ErrCreateEnv.AddDesc(fmt.Sprintf("failed to find service info in template_service, serviceName: %s", serviceName))
}
rc.ValuesYaml = serviceTmpl.HelmChart.ValuesYaml
// rc.ValuesYaml = serviceTmpl.HelmChart.ValuesYaml

serviceResp := &commonmodels.ProductService{
ServiceName: serviceTmpl.ServiceName,
@@ -97,7 +97,7 @@ func prepareHelmProductCreation(templateProduct *templatemodels.Product, product
}
serviceResp.Containers = make([]*commonmodels.Container, 0)
for _, c := range serviceTmpl.Containers {
image, err := genImageFromYaml(c, rc.ValuesYaml, defaultValuesYaml, rc.GetOverrideYaml(), rc.OverrideValues)
image, err := genImageFromYaml(c, serviceTmpl.HelmChart.ValuesYaml, defaultValuesYaml, rc.GetOverrideYaml(), rc.OverrideValues)
if err != nil {
errMsg := fmt.Sprintf("genImageFromYaml product template %s,service name:%s,error:%s", productObj.ProductName, rc.ServiceName, err)
log.Error(errMsg)
4 changes: 2 additions & 2 deletions pkg/microservice/aslan/core/service/service/helm.go
Original file line number Diff line number Diff line change
@@ -1115,7 +1115,7 @@ func CreateOrUpdateHelmServiceFromGitRepo(projectName string, args *HelmServiceC
helmRenderCharts = append(helmRenderCharts, &templatemodels.ServiceRender{
ServiceName: serviceName,
ChartVersion: svc.HelmChart.Version,
ValuesYaml: svc.HelmChart.ValuesYaml,
// ValuesYaml: svc.HelmChart.ValuesYaml,
})
})
}
@@ -1334,7 +1334,7 @@ func handleSingleService(projectName string, repoConfig *commonservice.RepoConfi
return &templatemodels.ServiceRender{
ServiceName: serviceName,
ChartVersion: templateChartData.ChartVersion,
ValuesYaml: string(mergedValues),
// ValuesYaml: string(mergedValues),
}, svc, nil
}

0 comments on commit 3a59cdb

Please sign in to comment.