@@ -356,7 +356,13 @@ export default function CDPipeline({
356
356
} )
357
357
sortObjectArrayAlphabetically ( list , 'name' )
358
358
form . environments = list
359
- setFormData ( form )
359
+ setFormData ( ( prevState ) => {
360
+ return {
361
+ ...form ,
362
+ // Can retain the release mode since this method is called only when creating a new pipeline
363
+ releaseMode : prevState . releaseMode ,
364
+ }
365
+ } )
360
366
setPageState ( ViewType . FORM )
361
367
setIsAdvanced ( false )
362
368
} )
@@ -827,6 +833,9 @@ export default function CDPipeline({
827
833
setSelectedTaskIndex ( _formData [ activeStageName ] . steps . length - 1 )
828
834
}
829
835
836
+ /**
837
+ * @description This method is called only in case when we render basic view, i.e, CD creation first modal
838
+ */
830
839
const handleStrategy = ( value : string ) : void => {
831
840
let newSelection
832
841
newSelection = { }
@@ -838,10 +847,10 @@ export default function CDPipeline({
838
847
newSelection [ 'jsonStr' ] = JSON . stringify ( allStrategies . current [ value ] , null , 4 )
839
848
newSelection [ 'yamlStr' ] = YAMLStringify ( allStrategies . current [ value ] )
840
849
841
- const _form = { ... formData }
842
- _form . savedStrategies . push ( newSelection )
843
- _form . savedStrategies = [ newSelection ]
844
- setFormData ( _form )
850
+ setFormData ( ( prevState ) => ( {
851
+ ... prevState ,
852
+ savedStrategies : [ newSelection ] ,
853
+ } ) )
845
854
}
846
855
847
856
const handleValidateMandatoryPlugins : PipelineContext [ 'handleValidateMandatoryPlugins' ] = ( {
@@ -1411,7 +1420,7 @@ export default function CDPipeline({
1411
1420
</ button >
1412
1421
</ div >
1413
1422
1414
- { ! isAdvanced && (
1423
+ { ! isAdvanced && ! isTemplateView && (
1415
1424
< div className = "px-20" >
1416
1425
< TabGroup
1417
1426
tabs = { [
@@ -1425,18 +1434,16 @@ export default function CDPipeline({
1425
1434
'data-testid' : 'new-deployment-tab' ,
1426
1435
} ,
1427
1436
} ,
1428
- ...( isTemplateView
1429
- ? [ ]
1430
- : [ {
1431
- tabType : 'button' as const ,
1432
- active : formData . releaseMode === ReleaseMode . MIGRATE_EXTERNAL_APPS ,
1433
- label : 'Migrate to Devtron' ,
1434
- id : ReleaseMode . MIGRATE_EXTERNAL_APPS ,
1435
- props : {
1436
- onClick : handleSelectMigrateToDevtron ,
1437
- 'data-testid' : 'migrate-to-devtron-tab' ,
1438
- } ,
1439
- } ] ) ,
1437
+ {
1438
+ tabType : 'button' as const ,
1439
+ active : formData . releaseMode === ReleaseMode . MIGRATE_EXTERNAL_APPS ,
1440
+ label : 'Migrate to Devtron' ,
1441
+ id : ReleaseMode . MIGRATE_EXTERNAL_APPS ,
1442
+ props : {
1443
+ onClick : handleSelectMigrateToDevtron ,
1444
+ 'data-testid' : 'migrate-to-devtron-tab' ,
1445
+ } ,
1446
+ } ,
1440
1447
] }
1441
1448
/>
1442
1449
</ div >
0 commit comments