@@ -21,6 +21,8 @@ import (
21
21
"fmt"
22
22
"github.com/devtron-labs/devtron/pkg/build/git/gitMaterial/repository"
23
23
"github.com/devtron-labs/devtron/pkg/build/git/gitProvider"
24
+ "github.com/devtron-labs/devtron/pkg/bulkAction/bean"
25
+ "github.com/devtron-labs/devtron/pkg/bulkAction/service"
24
26
"github.com/devtron-labs/devtron/pkg/cluster/environment"
25
27
"net/http"
26
28
"strconv"
@@ -34,7 +36,6 @@ import (
34
36
"github.com/devtron-labs/devtron/pkg/appWorkflow"
35
37
"github.com/devtron-labs/devtron/pkg/auth/authorisation/casbin"
36
38
"github.com/devtron-labs/devtron/pkg/auth/user"
37
- "github.com/devtron-labs/devtron/pkg/bulkAction"
38
39
"github.com/devtron-labs/devtron/pkg/chart"
39
40
"github.com/devtron-labs/devtron/pkg/pipeline"
40
41
"github.com/devtron-labs/devtron/pkg/team"
@@ -61,7 +62,7 @@ type BulkUpdateRestHandlerImpl struct {
61
62
ciPipelineRepository pipelineConfig.CiPipelineRepository
62
63
ciHandler pipeline.CiHandler
63
64
logger * zap.SugaredLogger
64
- bulkUpdateService bulkAction .BulkUpdateService
65
+ bulkUpdateService service .BulkUpdateService
65
66
chartService chart.ChartService
66
67
propertiesConfigService pipeline.PropertiesConfigService
67
68
userAuthService user.UserService
@@ -81,7 +82,7 @@ type BulkUpdateRestHandlerImpl struct {
81
82
}
82
83
83
84
func NewBulkUpdateRestHandlerImpl (pipelineBuilder pipeline.PipelineBuilder , logger * zap.SugaredLogger ,
84
- bulkUpdateService bulkAction .BulkUpdateService ,
85
+ bulkUpdateService service .BulkUpdateService ,
85
86
chartService chart.ChartService ,
86
87
propertiesConfigService pipeline.PropertiesConfigService ,
87
88
userAuthService user.UserService ,
@@ -135,7 +136,7 @@ func (handler BulkUpdateRestHandlerImpl) FindBulkUpdateReadme(w http.ResponseWri
135
136
return
136
137
}
137
138
//auth free, only login required
138
- var responseArr []* bulkAction .BulkUpdateSeeExampleResponse
139
+ var responseArr []* bean .BulkUpdateSeeExampleResponse
139
140
responseArr = append (responseArr , response )
140
141
common .WriteJsonResp (w , nil , responseArr , http .StatusOK )
141
142
}
@@ -157,7 +158,7 @@ func (handler BulkUpdateRestHandlerImpl) CheckAuthForImpactedObjects(AppId int,
157
158
}
158
159
func (handler BulkUpdateRestHandlerImpl ) GetImpactedAppsName (w http.ResponseWriter , r * http.Request ) {
159
160
decoder := json .NewDecoder (r .Body )
160
- var script bulkAction .BulkUpdateScript
161
+ var script bean .BulkUpdateScript
161
162
err := decoder .Decode (& script )
162
163
if err != nil {
163
164
common .WriteJsonResp (w , err , nil , http .StatusBadRequest )
@@ -212,7 +213,7 @@ func (handler BulkUpdateRestHandlerImpl) CheckAuthForBulkUpdate(AppId int, EnvId
212
213
}
213
214
func (handler BulkUpdateRestHandlerImpl ) BulkUpdate (w http.ResponseWriter , r * http.Request ) {
214
215
decoder := json .NewDecoder (r .Body )
215
- var script bulkAction .BulkUpdateScript
216
+ var script bean .BulkUpdateScript
216
217
err := decoder .Decode (& script )
217
218
if err != nil {
218
219
common .WriteJsonResp (w , err , nil , http .StatusBadRequest )
@@ -255,65 +256,55 @@ func (handler BulkUpdateRestHandlerImpl) BulkUpdate(w http.ResponseWriter, r *ht
255
256
}
256
257
257
258
func (handler BulkUpdateRestHandlerImpl ) BulkHibernate (w http.ResponseWriter , r * http.Request ) {
258
- userId , err := handler .userAuthService .GetLoggedInUser (r )
259
- if userId == 0 || err != nil {
260
- common .WriteJsonResp (w , err , "Unauthorized User" , http .StatusUnauthorized )
261
- return
262
- }
263
- decoder := json .NewDecoder (r .Body )
264
- var request bulkAction.BulkApplicationForEnvironmentPayload
265
- err = decoder .Decode (& request )
266
- if err != nil {
267
- common .WriteJsonResp (w , err , nil , http .StatusBadRequest )
268
- return
269
- }
270
- request .UserId = userId
271
- err = handler .validator .Struct (request )
259
+ request , err := handler .decodeAndValidateBulkRequest (w , r )
272
260
if err != nil {
273
- handler .logger .Errorw ("validation err" , "err" , err , "request" , request )
274
- common .WriteJsonResp (w , err , nil , http .StatusBadRequest )
275
- return
261
+ return // response already written by the helper on error.
276
262
}
277
-
278
263
token := r .Header .Get ("token" )
279
- response , err := handler .bulkUpdateService .BulkHibernate (& request , r .Context (), w , token , handler .checkAuthForBulkHibernateAndUnhibernate )
264
+ response , err := handler .bulkUpdateService .BulkHibernate (request , r .Context (), w , token , handler .checkAuthForBulkHibernateAndUnhibernate )
280
265
if err != nil {
281
266
common .WriteJsonResp (w , err , nil , http .StatusInternalServerError )
282
267
return
283
268
}
284
269
common .WriteJsonResp (w , nil , response , http .StatusOK )
285
270
}
286
271
287
- func (handler BulkUpdateRestHandlerImpl ) BulkUnHibernate (w http.ResponseWriter , r * http.Request ) {
272
+ // decodeAndValidateBulkRequest is a helper to decode and validate the request.
273
+ func (handler BulkUpdateRestHandlerImpl ) decodeAndValidateBulkRequest (w http.ResponseWriter , r * http.Request ) (* bean.BulkApplicationForEnvironmentPayload , error ) {
288
274
userId , err := handler .userAuthService .GetLoggedInUser (r )
289
275
if userId == 0 || err != nil {
290
276
common .WriteJsonResp (w , err , "Unauthorized User" , http .StatusUnauthorized )
291
- return
277
+ return nil , err
292
278
}
279
+
293
280
decoder := json .NewDecoder (r .Body )
294
- var request bulkAction.BulkApplicationForEnvironmentPayload
295
- err = decoder .Decode (& request )
296
- if err != nil {
281
+ var request bean.BulkApplicationForEnvironmentPayload
282
+ if err = decoder .Decode (& request ); err != nil {
297
283
common .WriteJsonResp (w , err , nil , http .StatusBadRequest )
298
- return
284
+ return nil , err
299
285
}
300
286
request .UserId = userId
301
- err = handler .validator .Struct (request )
302
- if err != nil {
303
- handler .logger .Errorw ("validation err" , "err" , err , "request" , request )
287
+ if err = handler .validator .Struct (request ); err != nil {
288
+ handler .logger .Errorw ("validation error" , "request" , request , "err" , err )
304
289
common .WriteJsonResp (w , err , nil , http .StatusBadRequest )
305
- return
290
+ return nil , err
306
291
}
292
+ return & request , nil
293
+ }
307
294
295
+ func (handler BulkUpdateRestHandlerImpl ) BulkUnHibernate (w http.ResponseWriter , r * http.Request ) {
296
+ request , err := handler .decodeAndValidateBulkRequest (w , r )
297
+ if err != nil {
298
+ return // response already written by the helper on error.
299
+ }
308
300
token := r .Header .Get ("token" )
309
- response , err := handler .bulkUpdateService .BulkUnHibernate (& request , r .Context (), w , token , handler .checkAuthForBulkHibernateAndUnhibernate )
301
+ response , err := handler .bulkUpdateService .BulkUnHibernate (request , r .Context (), w , token , handler .checkAuthForBulkHibernateAndUnhibernate )
310
302
if err != nil {
311
303
common .WriteJsonResp (w , err , nil , http .StatusInternalServerError )
312
304
return
313
305
}
314
306
common .WriteJsonResp (w , nil , response , http .StatusOK )
315
307
}
316
-
317
308
func (handler BulkUpdateRestHandlerImpl ) BulkDeploy (w http.ResponseWriter , r * http.Request ) {
318
309
token := r .Header .Get ("token" )
319
310
userId , err := handler .userAuthService .GetLoggedInUser (r )
@@ -322,7 +313,7 @@ func (handler BulkUpdateRestHandlerImpl) BulkDeploy(w http.ResponseWriter, r *ht
322
313
return
323
314
}
324
315
decoder := json .NewDecoder (r .Body )
325
- var request bulkAction .BulkApplicationForEnvironmentPayload
316
+ var request bean .BulkApplicationForEnvironmentPayload
326
317
err = decoder .Decode (& request )
327
318
if err != nil {
328
319
common .WriteJsonResp (w , err , nil , http .StatusBadRequest )
@@ -350,7 +341,7 @@ func (handler BulkUpdateRestHandlerImpl) BulkBuildTrigger(w http.ResponseWriter,
350
341
return
351
342
}
352
343
decoder := json .NewDecoder (r .Body )
353
- var request bulkAction .BulkApplicationForEnvironmentPayload
344
+ var request bean .BulkApplicationForEnvironmentPayload
354
345
err = decoder .Decode (& request )
355
346
if err != nil {
356
347
common .WriteJsonResp (w , err , nil , http .StatusBadRequest )
@@ -399,7 +390,7 @@ func (handler BulkUpdateRestHandlerImpl) HandleCdPipelineBulkAction(w http.Respo
399
390
common .WriteJsonResp (w , err , "Unauthorized User" , http .StatusUnauthorized )
400
391
return
401
392
}
402
- var cdPipelineBulkActionReq bulkAction .CdBulkActionRequestDto
393
+ var cdPipelineBulkActionReq bean .CdBulkActionRequestDto
403
394
err = decoder .Decode (& cdPipelineBulkActionReq )
404
395
cdPipelineBulkActionReq .UserId = userId
405
396
if err != nil {
0 commit comments