4
4
"context"
5
5
"encoding/json"
6
6
"errors"
7
+ "github.com/devtron-labs/devtron/api/helm-app/bean"
8
+ service2 "github.com/devtron-labs/devtron/api/helm-app/service"
9
+ "github.com/devtron-labs/devtron/pkg/appStore/deployment/service"
7
10
"net/http"
8
11
"strconv"
9
12
"strings"
@@ -14,8 +17,6 @@ import (
14
17
openapi2 "github.com/devtron-labs/devtron/api/openapi/openapiClient"
15
18
"github.com/devtron-labs/devtron/api/restHandler/common"
16
19
"github.com/devtron-labs/devtron/internal/util"
17
- appStoreBean "github.com/devtron-labs/devtron/pkg/appStore/bean"
18
- appStoreDeploymentCommon "github.com/devtron-labs/devtron/pkg/appStore/deployment/common"
19
20
"github.com/devtron-labs/devtron/pkg/attributes"
20
21
"github.com/devtron-labs/devtron/pkg/auth/authorisation/casbin"
21
22
"github.com/devtron-labs/devtron/pkg/auth/user"
@@ -43,31 +44,32 @@ const HELM_APP_ACCESS_COUNTER = "HelmAppAccessCounter"
43
44
const HELM_APP_UPDATE_COUNTER = "HelmAppUpdateCounter"
44
45
45
46
type HelmAppRestHandlerImpl struct {
46
- logger * zap.SugaredLogger
47
- helmAppService HelmAppService
48
- enforcer casbin.Enforcer
49
- clusterService cluster.ClusterService
50
- enforcerUtil rbac.EnforcerUtilHelm
51
- appStoreDeploymentCommonService appStoreDeploymentCommon. AppStoreDeploymentCommonService
52
- userAuthService user.UserService
53
- attributesService attributes.AttributesService
54
- serverEnvConfig * serverEnvConfig.ServerEnvConfig
47
+ logger * zap.SugaredLogger
48
+ helmAppService service2. HelmAppService
49
+ enforcer casbin.Enforcer
50
+ clusterService cluster.ClusterService
51
+ enforcerUtil rbac.EnforcerUtilHelm
52
+ appStoreDeploymentService service. AppStoreDeploymentService
53
+ userAuthService user.UserService
54
+ attributesService attributes.AttributesService
55
+ serverEnvConfig * serverEnvConfig.ServerEnvConfig
55
56
}
56
57
57
58
func NewHelmAppRestHandlerImpl (logger * zap.SugaredLogger ,
58
- helmAppService HelmAppService , enforcer casbin.Enforcer ,
59
- clusterService cluster.ClusterService , enforcerUtil rbac.EnforcerUtilHelm , appStoreDeploymentCommonService appStoreDeploymentCommon.AppStoreDeploymentCommonService ,
59
+ helmAppService service2.HelmAppService , enforcer casbin.Enforcer ,
60
+ clusterService cluster.ClusterService , enforcerUtil rbac.EnforcerUtilHelm ,
61
+ appStoreDeploymentService service.AppStoreDeploymentService ,
60
62
userAuthService user.UserService , attributesService attributes.AttributesService , serverEnvConfig * serverEnvConfig.ServerEnvConfig ) * HelmAppRestHandlerImpl {
61
63
return & HelmAppRestHandlerImpl {
62
- logger : logger ,
63
- helmAppService : helmAppService ,
64
- enforcer : enforcer ,
65
- clusterService : clusterService ,
66
- enforcerUtil : enforcerUtil ,
67
- appStoreDeploymentCommonService : appStoreDeploymentCommonService ,
68
- userAuthService : userAuthService ,
69
- attributesService : attributesService ,
70
- serverEnvConfig : serverEnvConfig ,
64
+ logger : logger ,
65
+ helmAppService : helmAppService ,
66
+ enforcer : enforcer ,
67
+ clusterService : clusterService ,
68
+ enforcerUtil : enforcerUtil ,
69
+ appStoreDeploymentService : appStoreDeploymentService ,
70
+ userAuthService : userAuthService ,
71
+ attributesService : attributesService ,
72
+ serverEnvConfig : serverEnvConfig ,
71
73
}
72
74
}
73
75
@@ -118,15 +120,15 @@ func (handler *HelmAppRestHandlerImpl) GetApplicationDetail(w http.ResponseWrite
118
120
return
119
121
}
120
122
121
- installedApp , err := handler .appStoreDeploymentCommonService .GetInstalledAppByClusterNamespaceAndName (appIdentifier .ClusterId , appIdentifier .Namespace , appIdentifier .ReleaseName )
123
+ installedApp , err := handler .appStoreDeploymentService .GetInstalledAppByClusterNamespaceAndName (appIdentifier .ClusterId , appIdentifier .Namespace , appIdentifier .ReleaseName )
122
124
if err != nil {
123
125
common .WriteJsonResp (w , err , nil , http .StatusInternalServerError )
124
126
return
125
127
}
126
128
127
- res := & AppDetailAndInstalledAppInfo {
129
+ res := & bean. AppDetailAndInstalledAppInfo {
128
130
AppDetail : appdetail ,
129
- InstalledAppInfo : convertToInstalledAppInfo (installedApp ),
131
+ InstalledAppInfo : bean . ConvertToInstalledAppInfo (installedApp ),
130
132
}
131
133
132
134
common .WriteJsonResp (w , err , res , http .StatusOK )
@@ -219,15 +221,15 @@ func (handler *HelmAppRestHandlerImpl) GetReleaseInfo(w http.ResponseWriter, r *
219
221
common .WriteJsonResp (w , err , nil , http .StatusInternalServerError )
220
222
return
221
223
}
222
-
223
- installedApp , err := handler .appStoreDeploymentCommonService .GetInstalledAppByClusterNamespaceAndName (appIdentifier .ClusterId , appIdentifier .Namespace , appIdentifier .ReleaseName )
224
+ installedApp , err := handler .appStoreDeploymentService .GetInstalledAppByClusterNamespaceAndName (appIdentifier .ClusterId , appIdentifier .Namespace , appIdentifier .ReleaseName )
224
225
if err != nil {
225
226
common .WriteJsonResp (w , err , nil , http .StatusInternalServerError )
226
227
return
227
228
}
228
- res := & ReleaseAndInstalledAppInfo {
229
+
230
+ res := & bean.ReleaseAndInstalledAppInfo {
229
231
ReleaseInfo : releaseInfo ,
230
- InstalledAppInfo : convertToInstalledAppInfo (installedApp ),
232
+ InstalledAppInfo : bean . ConvertToInstalledAppInfo (installedApp ),
231
233
}
232
234
233
235
common .WriteJsonResp (w , err , res , http .StatusOK )
@@ -306,7 +308,7 @@ func (handler *HelmAppRestHandlerImpl) DeleteApplication(w http.ResponseWriter,
306
308
// validate if the devtron-operator helm release, block that for deletion
307
309
if appIdentifier .ReleaseName == handler .serverEnvConfig .DevtronHelmReleaseName &&
308
310
appIdentifier .Namespace == handler .serverEnvConfig .DevtronHelmReleaseNamespace &&
309
- appIdentifier .ClusterId == DEFAULT_CLUSTER_ID {
311
+ appIdentifier .ClusterId == bean . DEFAULT_CLUSTER_ID {
310
312
common .WriteJsonResp (w , errors .New ("cannot delete this default helm app" ), nil , http .StatusForbidden )
311
313
return
312
314
}
@@ -323,7 +325,7 @@ func (handler *HelmAppRestHandlerImpl) DeleteApplication(w http.ResponseWriter,
323
325
}
324
326
325
327
func (handler * HelmAppRestHandlerImpl ) UpdateApplication (w http.ResponseWriter , r * http.Request ) {
326
- request := & UpdateApplicationRequestDto {}
328
+ request := & bean. UpdateApplicationRequestDto {}
327
329
decoder := json .NewDecoder (r .Body )
328
330
err := decoder .Decode (request )
329
331
if err != nil {
@@ -346,7 +348,7 @@ func (handler *HelmAppRestHandlerImpl) UpdateApplication(w http.ResponseWriter,
346
348
return
347
349
}
348
350
//RBAC enforcer Ends
349
- request .SourceAppType = SOURCE_EXTERNAL_HELM_APP
351
+ request .SourceAppType = bean . SOURCE_EXTERNAL_HELM_APP
350
352
// update application externally
351
353
res , err := handler .helmAppService .UpdateApplication (r .Context (), appIdentifier , request )
352
354
if err != nil {
@@ -422,57 +424,3 @@ func (handler *HelmAppRestHandlerImpl) SaveHelmAppDetailsViewedTelemetryData(w h
422
424
common .WriteJsonResp (w , err , nil , http .StatusOK )
423
425
424
426
}
425
-
426
- func convertToInstalledAppInfo (installedApp * appStoreBean.InstallAppVersionDTO ) * InstalledAppInfo {
427
- if installedApp == nil {
428
- return nil
429
- }
430
-
431
- chartInfo := installedApp .InstallAppVersionChartDTO
432
-
433
- return & InstalledAppInfo {
434
- AppId : installedApp .AppId ,
435
- EnvironmentName : installedApp .EnvironmentName ,
436
- AppOfferingMode : installedApp .AppOfferingMode ,
437
- InstalledAppId : installedApp .InstalledAppId ,
438
- InstalledAppVersionId : installedApp .InstalledAppVersionId ,
439
- AppStoreChartId : chartInfo .AppStoreChartId ,
440
- ClusterId : installedApp .ClusterId ,
441
- EnvironmentId : installedApp .EnvironmentId ,
442
- AppStoreChartRepoName : chartInfo .InstallAppVersionChartRepoDTO .RepoName ,
443
- AppStoreChartName : chartInfo .ChartName ,
444
- TeamId : installedApp .TeamId ,
445
- TeamName : installedApp .TeamName ,
446
- }
447
- }
448
-
449
- type AppDetailAndInstalledAppInfo struct {
450
- InstalledAppInfo * InstalledAppInfo `json:"installedAppInfo"`
451
- AppDetail * AppDetail `json:"appDetail"`
452
- }
453
-
454
- type ReleaseAndInstalledAppInfo struct {
455
- InstalledAppInfo * InstalledAppInfo `json:"installedAppInfo"`
456
- ReleaseInfo * ReleaseInfo `json:"releaseInfo"`
457
- }
458
-
459
- type DeploymentHistoryAndInstalledAppInfo struct {
460
- InstalledAppInfo * InstalledAppInfo `json:"installedAppInfo"`
461
- DeploymentHistory []* HelmAppDeploymentDetail `json:"deploymentHistory"`
462
- }
463
-
464
- type InstalledAppInfo struct {
465
- AppId int `json:"appId"`
466
- InstalledAppId int `json:"installedAppId"`
467
- InstalledAppVersionId int `json:"installedAppVersionId"`
468
- AppStoreChartId int `json:"appStoreChartId"`
469
- EnvironmentName string `json:"environmentName"`
470
- AppOfferingMode string `json:"appOfferingMode"`
471
- ClusterId int `json:"clusterId"`
472
- EnvironmentId int `json:"environmentId"`
473
- AppStoreChartRepoName string `json:"appStoreChartRepoName"`
474
- AppStoreChartName string `json:"appStoreChartName"`
475
- TeamId int `json:"teamId"`
476
- TeamName string `json:"teamName"`
477
- DeploymentType string `json:"deploymentType"`
478
- }
0 commit comments