@@ -40,8 +40,8 @@ type VPCIface interface {
4040}
4141
4242// getVPCOfferingID fetches a vpc offering id.
43- func (c * client ) getVPCOfferingID () (string , error ) {
44- offeringID , count , retErr := c .cs .VPC .GetVPCOfferingID (VPCOffering )
43+ func (c * client ) getVPCOfferingID (offeringName string ) (string , error ) {
44+ offeringID , count , retErr := c .cs .VPC .GetVPCOfferingID (offeringName )
4545 if retErr != nil {
4646 c .customMetrics .EvaluateErrorAndIncrementAcsReconciliationErrorCounter (retErr )
4747 return "" , retErr
@@ -70,6 +70,7 @@ func (c *client) ResolveVPC(vpc *infrav1.VPC) error {
7070 }
7171 vpc .Name = resp .Name
7272 vpc .CIDR = resp .Cidr
73+ vpc .Offering = resp .Vpcofferingname
7374 return nil
7475 }
7576
@@ -84,6 +85,7 @@ func (c *client) ResolveVPC(vpc *infrav1.VPC) error {
8485 }
8586 vpc .ID = resp .Id
8687 vpc .CIDR = resp .Cidr
88+ vpc .Offering = resp .Vpcofferingname
8789 return nil
8890}
8991
@@ -93,7 +95,12 @@ func (c *client) CreateVPC(fd *infrav1.CloudStackFailureDomain, vpc *infrav1.VPC
9395 return errors .New ("VPC name must be specified" )
9496 }
9597
96- offeringID , err := c .getVPCOfferingID ()
98+ offeringName := VPCOffering
99+ if vpc .Offering != "" {
100+ offeringName = vpc .Offering
101+ }
102+
103+ offeringID , err := c .getVPCOfferingID (offeringName )
97104 if err != nil {
98105 return err
99106 }
0 commit comments