Skip to content

Commit ab42685

Browse files
committed
fix chart location
1 parent 7f16d00 commit ab42685

File tree

1 file changed

+17
-6
lines changed

1 file changed

+17
-6
lines changed

pkg/chart/ChartService.go

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ import (
3939
"github.com/devtron-labs/devtron/pkg/deployment/manifest/deployedAppMetrics/bean"
4040
"github.com/devtron-labs/devtron/pkg/deployment/manifest/deploymentTemplate"
4141
"github.com/devtron-labs/devtron/pkg/deployment/manifest/deploymentTemplate/adapter"
42+
bean4 "github.com/devtron-labs/devtron/pkg/deployment/manifest/deploymentTemplate/bean"
4243
"github.com/devtron-labs/devtron/pkg/deployment/manifest/deploymentTemplate/chartRef"
4344
chartRefBean "github.com/devtron-labs/devtron/pkg/deployment/manifest/deploymentTemplate/chartRef/bean"
4445
"github.com/devtron-labs/devtron/pkg/deployment/manifest/deploymentTemplate/read"
@@ -370,20 +371,30 @@ func (impl *ChartServiceImpl) updateChartLocationForEnvironmentConfigs(ctx conte
370371
impl.logger.Errorw("error in getting all overrides for app", "appId", appId, "err", err)
371372
return err
372373
}
373-
uniqueEnvMap := make(map[int]bool)
374-
for _, override := range envOverrides {
375-
if _, ok := uniqueEnvMap[override.TargetEnvironment]; !ok && !override.IsOverride && override.Latest {
376-
uniqueEnvMap[override.TargetEnvironment] = true
377-
err := impl.deploymentConfigService.UpdateChartLocationInDeploymentConfig(tx, appId, override.TargetEnvironment, chartRefId, userId, version)
374+
375+
envOverriddenMap := impl.getEnvOverriddenMap(envOverrides)
376+
for envId, override := range envOverriddenMap {
377+
if !override {
378+
err := impl.deploymentConfigService.UpdateChartLocationInDeploymentConfig(tx, appId, envId, chartRefId, userId, version)
378379
if err != nil {
379-
impl.logger.Errorw("error in updating chart location for env level deployment configs", "appId", appId, "envId", override.TargetEnvironment, "err", err)
380+
impl.logger.Errorw("error in updating chart location for env level deployment configs", "appId", appId, "envId", envId, "err", err)
380381
return err
381382
}
382383
}
383384
}
384385
return nil
385386
}
386387

388+
func (impl *ChartServiceImpl) getEnvOverriddenMap(overrides []*bean4.EnvConfigOverride) map[int]bool {
389+
envMap := make(map[int]bool)
390+
for _, override := range overrides {
391+
if override.IsOverride && override.Latest {
392+
envMap[override.TargetEnvironment] = true
393+
}
394+
}
395+
return envMap
396+
}
397+
387398
func (impl *ChartServiceImpl) CreateChartFromEnvOverride(ctx context.Context, templateRequest bean3.TemplateRequest) (*bean3.TemplateRequest, error) {
388399
_, span := otel.Tracer("orchestrator").Start(ctx, "ChartServiceImpl.CreateChartFromEnvOverride")
389400
defer span.End()

0 commit comments

Comments
 (0)