@@ -25,8 +25,6 @@ import (
2525 "github.com/IBM-Cloud/power-go-client/power/models"
2626 "github.com/IBM/go-sdk-core/v5/core"
2727 "github.com/IBM/platform-services-go-sdk/resourcecontrollerv2"
28- "github.com/go-logr/logr"
29- "k8s.io/klog/v2"
3028
3129 ctrl "sigs.k8s.io/controller-runtime"
3230 "sigs.k8s.io/controller-runtime/pkg/client"
@@ -44,7 +42,6 @@ const BucketAccess = "public"
4442// PowerVSImageScopeParams defines the input parameters used to create a new PowerVSImageScope.
4543type PowerVSImageScopeParams struct {
4644 Client client.Client
47- Logger logr.Logger
4845 IBMPowerVSImage * infrav1.IBMPowerVSImage
4946 ServiceEndpoint []endpoints.ServiceEndpoint
5047 Zone * string
@@ -59,7 +56,8 @@ type PowerVSImageScope struct {
5956}
6057
6158// NewPowerVSImageScope creates a new PowerVSImageScope from the supplied parameters.
62- func NewPowerVSImageScope (params PowerVSImageScopeParams ) (scope * PowerVSImageScope , err error ) {
59+ func NewPowerVSImageScope (ctx context.Context , params PowerVSImageScopeParams ) (scope * PowerVSImageScope , err error ) {
60+ log := ctrl .LoggerFrom (ctx )
6361 scope = & PowerVSImageScope {}
6462
6563 if params .Client == nil {
@@ -74,12 +72,14 @@ func NewPowerVSImageScope(params PowerVSImageScopeParams) (scope *PowerVSImageSc
7472 }
7573 scope .IBMPowerVSImage = params .IBMPowerVSImage
7674
77- if params .Logger == (logr.Logger {}) {
78- params .Logger = klog .Background ()
79- }
80-
8175 // Create Resource Controller client.
8276 var serviceOption resourcecontroller.ServiceOptions
77+ // Fetch the resource controller endpoint.
78+ rcEndpoint := endpoints .FetchEndpoints (string (endpoints .RC ), params .ServiceEndpoint )
79+ if rcEndpoint != "" {
80+ serviceOption .URL = rcEndpoint
81+ log .V (3 ).Info ("Overriding the default resource controller endpoint" , "ResourceControllerEndpoint" , rcEndpoint )
82+ }
8383
8484 rc , err := resourcecontroller .NewService (serviceOption )
8585 if err != nil {
@@ -99,7 +99,7 @@ func NewPowerVSImageScope(params PowerVSImageScopeParams) (scope *PowerVSImageSc
9999 }
100100 serviceInstance , err := rc .GetServiceInstance ("" , name , params .Zone )
101101 if err != nil {
102- params . Logger .Error (err , "error failed to get service instance id from name" , "name" , name )
102+ log .Error (err , "error failed to get service instance id from name" , "name" , name )
103103 return nil , err
104104 }
105105 if serviceInstance == nil {
@@ -122,15 +122,15 @@ func NewPowerVSImageScope(params PowerVSImageScopeParams) (scope *PowerVSImageSc
122122
123123 options := powervs.ServiceOptions {
124124 IBMPIOptions : & ibmpisession.IBMPIOptions {
125- Debug : params . Logger .V (DEBUGLEVEL ).Enabled (),
125+ Debug : log .V (DEBUGLEVEL ).Enabled (),
126126 Zone : * res .RegionID ,
127127 },
128128 }
129129
130130 // Fetch the service endpoint.
131131 if svcEndpoint := endpoints .FetchPVSEndpoint (endpoints .ConstructRegionFromZone (* res .RegionID ), params .ServiceEndpoint ); svcEndpoint != "" {
132132 options .IBMPIOptions .URL = svcEndpoint
133- params . Logger .V (3 ).Info ("overriding the default powervs service endpoint" , "serviceEndpoint" , svcEndpoint )
133+ log .V (3 ).Info ("overriding the default powervs service endpoint" , "serviceEndpoint" , svcEndpoint )
134134 }
135135
136136 c , err := powervs .NewService (options )
0 commit comments