@@ -65,6 +65,7 @@ type ChartService interface {
65
65
CheckIfChartRefUserUploadedByAppId (id int ) (bool , error )
66
66
PatchEnvOverrides (values json.RawMessage , oldChartType string , newChartType string ) (json.RawMessage , error )
67
67
68
+ ChartRefAutocompleteGlobalData () (* chartRefBean.ChartRefAutocompleteResponse , error )
68
69
ChartRefAutocompleteForAppOrEnv (appId int , envId int ) (* chartRefBean.ChartRefAutocompleteResponse , error )
69
70
70
71
ConfigureGitOpsRepoUrlForApp (appId int , repoUrl , chartLocation string , isCustomRepo bool , userId int32 ) (* bean2.DeploymentConfig , error )
@@ -814,22 +815,45 @@ func (impl *ChartServiceImpl) IsReadyToTrigger(appId int, envId int, pipelineId
814
815
}
815
816
816
817
func (impl * ChartServiceImpl ) ChartRefAutocompleteForAppOrEnv (appId int , envId int ) (* chartRefBean.ChartRefAutocompleteResponse , error ) {
817
- chartRefResponse := & chartRefBean.ChartRefAutocompleteResponse {}
818
- var chartRefs []chartRefBean.ChartRefAutocompleteDto
818
+ chartRefResponse , err := impl .ChartRefAutocompleteGlobalData ()
819
+ if err != nil {
820
+ impl .logger .Errorw ("error, ChartRefAutocompleteGlobalData" , "err" , err )
821
+ return nil , err
822
+ }
823
+ chart , err := impl .chartRepository .FindLatestChartForAppByAppId (appId )
824
+ if err != nil && err != pg .ErrNoRows {
825
+ impl .logger .Errorw ("error in fetching latest chart" , "err" , err )
826
+ return chartRefResponse , err
827
+ }
828
+ chartRefResponse .LatestAppChartRef = chart .ChartRefId
829
+ if envId > 0 {
830
+ envOverride , err := impl .envConfigOverrideReadService .FindLatestChartForAppByAppIdAndEnvId (appId , envId )
831
+ if err != nil && ! errors .IsNotFound (err ) {
832
+ impl .logger .Errorw ("error in fetching latest chart" , "err" , err )
833
+ return chartRefResponse , err
834
+ }
835
+ if envOverride != nil && envOverride .Chart != nil {
836
+ chartRefResponse .LatestEnvChartRef = envOverride .Chart .ChartRefId
837
+ } else {
838
+ chartRefResponse .LatestEnvChartRef = chart .ChartRefId
839
+ }
840
+ }
841
+ return chartRefResponse , nil
842
+ }
819
843
844
+ func (impl * ChartServiceImpl ) ChartRefAutocompleteGlobalData () (* chartRefBean.ChartRefAutocompleteResponse , error ) {
820
845
results , err := impl .chartRefService .GetAll ()
821
846
if err != nil {
822
847
impl .logger .Errorw ("error in fetching chart ref" , "err" , err )
823
- return chartRefResponse , err
848
+ return nil , err
824
849
}
825
-
826
850
resultsMetadataMap , err := impl .chartRefService .GetAllChartMetadata ()
827
851
if err != nil {
828
852
impl .logger .Errorw ("error in fetching chart metadata" , "err" , err )
829
- return chartRefResponse , err
853
+ return nil , err
830
854
}
831
- chartRefResponse . ChartsMetadata = resultsMetadataMap
832
- var LatestAppChartRef int
855
+ var latestChartRef int
856
+ chartRefs := make ([]chartRefBean. ChartRefAutocompleteDto , 0 , len ( results ))
833
857
for _ , result := range results {
834
858
chartRefs = append (chartRefs , chartRefBean.ChartRefAutocompleteDto {
835
859
Id : result .Id ,
@@ -840,32 +864,14 @@ func (impl *ChartServiceImpl) ChartRefAutocompleteForAppOrEnv(appId int, envId i
840
864
IsAppMetricsSupported : result .IsAppMetricsSupported ,
841
865
})
842
866
if result .Default == true {
843
- LatestAppChartRef = result .Id
844
- }
845
- }
846
-
847
- chart , err := impl .chartRepository .FindLatestChartForAppByAppId (appId )
848
- if err != nil && err != pg .ErrNoRows {
849
- impl .logger .Errorw ("error in fetching latest chart" , "err" , err )
850
- return chartRefResponse , err
851
- }
852
-
853
- if envId > 0 {
854
- envOverride , err := impl .envConfigOverrideReadService .FindLatestChartForAppByAppIdAndEnvId (appId , envId )
855
- if err != nil && ! errors .IsNotFound (err ) {
856
- impl .logger .Errorw ("error in fetching latest chart" , "err" , err )
857
- return chartRefResponse , err
858
- }
859
- if envOverride != nil && envOverride .Chart != nil {
860
- chartRefResponse .LatestEnvChartRef = envOverride .Chart .ChartRefId
861
- } else {
862
- chartRefResponse .LatestEnvChartRef = chart .ChartRefId
867
+ latestChartRef = result .Id
863
868
}
864
869
}
865
- chartRefResponse .LatestAppChartRef = chart .ChartRefId
866
- chartRefResponse .ChartRefs = chartRefs
867
- chartRefResponse .LatestChartRef = LatestAppChartRef
868
- return chartRefResponse , nil
870
+ return & chartRefBean.ChartRefAutocompleteResponse {
871
+ ChartsMetadata : resultsMetadataMap ,
872
+ ChartRefs : chartRefs ,
873
+ LatestChartRef : latestChartRef ,
874
+ }, nil
869
875
}
870
876
871
877
func (impl * ChartServiceImpl ) FindPreviousChartByAppId (appId int ) (chartTemplate * TemplateRequest , err error ) {
0 commit comments