@@ -572,6 +572,59 @@ func (ch *clusterHandler) GenerateClusterCreateFlags() ([]string, error) {
572
572
flags = append (flags ,
573
573
"--subnet-ids" , subnetsFlagValue )
574
574
575
+ if ch .profile .ClusterConfig .SharedVPC {
576
+ subnetArns , err := resourcesHandler .PrepareSubnetArns (subnetsFlagValue )
577
+ if err != nil {
578
+ return flags , err
579
+ }
580
+
581
+ resourceShareName := fmt .Sprintf ("%s-%s" , sharedVPCRolePrefix , "resource-share" )
582
+ _ , err = resourcesHandler .PrepareResourceShare (resourceShareName , subnetArns )
583
+ if err != nil {
584
+ return flags , err
585
+ }
586
+
587
+ dnsDomain , err := resourcesHandler .PrepareDNSDomain (ch .profile .ClusterConfig .HCP )
588
+ if err != nil {
589
+ return flags , err
590
+ }
591
+ flags = append (flags , "--base-domain" , dnsDomain )
592
+ if ch .profile .ClusterConfig .HCP {
593
+ ingressHostedZoneID , err := resourcesHandler .PrepareHostedZone (
594
+ fmt .Sprintf ("rosa.%s.%s" , clusterName , dnsDomain ), vpc .VpcID , true )
595
+ if err != nil {
596
+ return flags , err
597
+ }
598
+ flags = append (flags , "--ingress-private-hosted-zone-id" , ingressHostedZoneID )
599
+
600
+ hostedCPInternalHostedZoneID , err := resourcesHandler .PrepareHostedZone (
601
+ fmt .Sprintf ("%s.hypershift.local" , clusterName ), vpc .VpcID , true ,
602
+ )
603
+ if err != nil {
604
+ return flags , err
605
+ }
606
+ flags = append (flags , "--hcp-internal-communication-hosted-zone-id" , hostedCPInternalHostedZoneID )
607
+ } else {
608
+ ingressHostedZoneID , err := resourcesHandler .PrepareHostedZone (
609
+ fmt .Sprintf ("%s.%s" , clusterName , dnsDomain ), vpc .VpcID , true ,
610
+ )
611
+ if err != nil {
612
+ return flags , err
613
+ }
614
+ flags = append (flags , "--ingress-private-hosted-zone-id" , ingressHostedZoneID )
615
+ }
616
+
617
+ ch .clusterConfig .SharedVPC = ch .profile .ClusterConfig .SharedVPC
618
+
619
+ //HostedCP Shared VPC cluster BYO subnet needs to add tags 'kubernetes.io/role/internal-elb'
620
+ //and 'kubernetes.io/role/elb' on public and private subnets on the cluster owner aws account
621
+ if ch .profile .ClusterConfig .HCP {
622
+ err = resourcesHandler .AddTagsToSharedVPCBYOSubnets (* ch .clusterConfig .Subnets , ch .clusterConfig .Region )
623
+ if err != nil {
624
+ return flags , err
625
+ }
626
+ }
627
+ }
575
628
if ch .profile .ClusterConfig .AdditionalSGNumber != 0 {
576
629
securityGroups , err := resourcesHandler .
577
630
PrepareAdditionalSecurityGroups (ch .profile .ClusterConfig .AdditionalSGNumber , vpcPrefix )
@@ -627,59 +680,6 @@ func (ch *clusterHandler) GenerateClusterCreateFlags() ([]string, error) {
627
680
)
628
681
629
682
}
630
- if ch .profile .ClusterConfig .SharedVPC {
631
- subnetArns , err := resourcesHandler .PrepareSubnetArns (subnetsFlagValue )
632
- if err != nil {
633
- return flags , err
634
- }
635
-
636
- resourceShareName := fmt .Sprintf ("%s-%s" , sharedVPCRolePrefix , "resource-share" )
637
- _ , err = resourcesHandler .PrepareResourceShare (resourceShareName , subnetArns )
638
- if err != nil {
639
- return flags , err
640
- }
641
-
642
- dnsDomain , err := resourcesHandler .PrepareDNSDomain (ch .profile .ClusterConfig .HCP )
643
- if err != nil {
644
- return flags , err
645
- }
646
- flags = append (flags , "--base-domain" , dnsDomain )
647
- if ch .profile .ClusterConfig .HCP {
648
- ingressHostedZoneID , err := resourcesHandler .PrepareHostedZone (
649
- fmt .Sprintf ("rosa.%s.%s" , clusterName , dnsDomain ), vpc .VpcID , true )
650
- if err != nil {
651
- return flags , err
652
- }
653
- flags = append (flags , "--ingress-private-hosted-zone-id" , ingressHostedZoneID )
654
-
655
- hostedCPInternalHostedZoneID , err := resourcesHandler .PrepareHostedZone (
656
- fmt .Sprintf ("%s.hypershift.local" , clusterName ), vpc .VpcID , true ,
657
- )
658
- if err != nil {
659
- return flags , err
660
- }
661
- flags = append (flags , "--hcp-internal-communication-hosted-zone-id" , hostedCPInternalHostedZoneID )
662
- } else {
663
- ingressHostedZoneID , err := resourcesHandler .PrepareHostedZone (
664
- fmt .Sprintf ("%s.%s" , clusterName , dnsDomain ), vpc .VpcID , true ,
665
- )
666
- if err != nil {
667
- return flags , err
668
- }
669
- flags = append (flags , "--ingress-private-hosted-zone-id" , ingressHostedZoneID )
670
- }
671
-
672
- ch .clusterConfig .SharedVPC = ch .profile .ClusterConfig .SharedVPC
673
-
674
- //HostedCP Shared VPC cluster BYO subnet needs to add tags 'kubernetes.io/role/internal-elb'
675
- //and 'kubernetes.io/role/elb' on public and private subnets on the cluster owner aws account
676
- if ch .profile .ClusterConfig .HCP {
677
- err = resourcesHandler .AddTagsToSharedVPCBYOSubnets (* ch .clusterConfig .Subnets , ch .clusterConfig .Region )
678
- if err != nil {
679
- return flags , err
680
- }
681
- }
682
- }
683
683
}
684
684
if ch .profile .ClusterConfig .BillingAccount != "" {
685
685
flags = append (flags , "--billing-account" , ch .profile .ClusterConfig .BillingAccount )
0 commit comments