@@ -26,27 +26,30 @@ import (
2626 "github.com/oracle/cluster-api-provider-oci/cloud/services/computemanagement"
2727 containerEngineClient "github.com/oracle/cluster-api-provider-oci/cloud/services/containerengine"
2828 identityClient "github.com/oracle/cluster-api-provider-oci/cloud/services/identity"
29+ lb "github.com/oracle/cluster-api-provider-oci/cloud/services/loadbalancer"
2930 nlb "github.com/oracle/cluster-api-provider-oci/cloud/services/networkloadbalancer"
3031 "github.com/oracle/cluster-api-provider-oci/cloud/services/vcn"
3132 "github.com/oracle/cluster-api-provider-oci/version"
3233 "github.com/oracle/oci-go-sdk/v65/common"
3334 "github.com/oracle/oci-go-sdk/v65/containerengine"
3435 "github.com/oracle/oci-go-sdk/v65/core"
3536 "github.com/oracle/oci-go-sdk/v65/identity"
37+ "github.com/oracle/oci-go-sdk/v65/loadbalancer"
3638 "github.com/oracle/oci-go-sdk/v65/networkloadbalancer"
3739 "github.com/pkg/errors"
3840 "k8s.io/klog/v2/klogr"
3941)
4042
4143// OCIClients is the struct of all the needed OCI clients
4244type OCIClients struct {
43- ComputeClient compute.ComputeClient
44- ComputeManagementClient computemanagement.Client
45- VCNClient vcn.Client
46- LoadBalancerClient nlb.NetworkLoadBalancerClient
47- IdentityClient identityClient.Client
48- ContainerEngineClient containerEngineClient.Client
49- BaseClient base.BaseClient
45+ ComputeClient compute.ComputeClient
46+ ComputeManagementClient computemanagement.Client
47+ VCNClient vcn.Client
48+ NetworkLoadBalancerClient nlb.NetworkLoadBalancerClient
49+ LoadBalancerClient lb.LoadBalancerClient
50+ IdentityClient identityClient.Client
51+ ContainerEngineClient containerEngineClient.Client
52+ BaseClient base.BaseClient
5053}
5154
5255// ClientProvider defines the regional clients
@@ -110,7 +113,11 @@ func createClients(region string, oCIAuthConfigProvider common.ConfigurationProv
110113 if err != nil {
111114 return OCIClients {}, err
112115 }
113- lbClient , err := createLbClient (region , oCIAuthConfigProvider , logger )
116+ nlbClient , err := createNLbClient (region , oCIAuthConfigProvider , logger )
117+ if err != nil {
118+ return OCIClients {}, err
119+ }
120+ lbClient , err := createLBClient (region , oCIAuthConfigProvider , logger )
114121 if err != nil {
115122 return OCIClients {}, err
116123 }
@@ -140,13 +147,14 @@ func createClients(region string, oCIAuthConfigProvider common.ConfigurationProv
140147 }
141148
142149 return OCIClients {
143- VCNClient : vcnClient ,
144- LoadBalancerClient : lbClient ,
145- IdentityClient : identityClient ,
146- ComputeClient : computeClient ,
147- ComputeManagementClient : computeManagementClient ,
148- ContainerEngineClient : containerEngineClient ,
149- BaseClient : baseClient ,
150+ VCNClient : vcnClient ,
151+ NetworkLoadBalancerClient : nlbClient ,
152+ LoadBalancerClient : lbClient ,
153+ IdentityClient : identityClient ,
154+ ComputeClient : computeClient ,
155+ ComputeManagementClient : computeManagementClient ,
156+ ContainerEngineClient : containerEngineClient ,
157+ BaseClient : baseClient ,
150158 }, err
151159}
152160
@@ -162,12 +170,24 @@ func createVncClient(region string, ociAuthConfigProvider common.ConfigurationPr
162170 return & vcnClient , nil
163171}
164172
165- func createLbClient (region string , ociAuthConfigProvider common.ConfigurationProvider , logger * logr.Logger ) (* networkloadbalancer.NetworkLoadBalancerClient , error ) {
166- lbClient , err := networkloadbalancer .NewNetworkLoadBalancerClientWithConfigurationProvider (ociAuthConfigProvider )
173+ func createNLbClient (region string , ociAuthConfigProvider common.ConfigurationProvider , logger * logr.Logger ) (* networkloadbalancer.NetworkLoadBalancerClient , error ) {
174+ nlbClient , err := networkloadbalancer .NewNetworkLoadBalancerClientWithConfigurationProvider (ociAuthConfigProvider )
167175 if err != nil {
168176 logger .Error (err , "unable to create OCI LB Client" )
169177 return nil , err
170178 }
179+ nlbClient .SetRegion (region )
180+ nlbClient .Interceptor = setVersionHeader ()
181+
182+ return & nlbClient , nil
183+ }
184+
185+ func createLBClient (region string , ociAuthConfigProvider common.ConfigurationProvider , logger * logr.Logger ) (* loadbalancer.LoadBalancerClient , error ) {
186+ lbClient , err := loadbalancer .NewLoadBalancerClientWithConfigurationProvider (ociAuthConfigProvider )
187+ if err != nil {
188+ logger .Error (err , "unable to create OCI LBaaS Client" )
189+ return nil , err
190+ }
171191 lbClient .SetRegion (region )
172192 lbClient .Interceptor = setVersionHeader ()
173193
0 commit comments