Skip to content

Commit f5e22b5

Browse files
authored
Handle the scope properly (#621)
1 parent 1e2ed3a commit f5e22b5

File tree

3 files changed

+23
-19
lines changed

3 files changed

+23
-19
lines changed

cloud/scope/powervs_image.go

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -63,12 +63,14 @@ func NewPowerVSImageScope(params PowerVSImageScopeParams) (scope *PowerVSImageSc
6363
scope = &PowerVSImageScope{}
6464

6565
if params.Client == nil {
66-
return nil, errors.New("failed to generate new scope from nil Client")
66+
err = errors.New("failed to generate new scope from nil Client")
67+
return
6768
}
6869
scope.client = params.Client
6970

7071
if params.IBMPowerVSImage == nil {
71-
return nil, errors.New("failed to generate new scope from nil IBMPowerVSImage")
72+
err = errors.New("failed to generate new scope from nil IBMPowerVSImage")
73+
return
7274
}
7375
scope.IBMPowerVSImage = params.IBMPowerVSImage
7476

@@ -79,37 +81,43 @@ func NewPowerVSImageScope(params PowerVSImageScopeParams) (scope *PowerVSImageSc
7981

8082
helper, err := patch.NewHelper(params.IBMPowerVSImage, params.Client)
8183
if err != nil {
82-
return nil, errors.Wrap(err, "failed to init patch helper")
84+
err = errors.Wrap(err, "failed to init patch helper")
85+
return
8386
}
87+
scope.patchHelper = helper
8488

8589
spec := params.IBMPowerVSImage.Spec
8690

8791
auth, err := authenticator.GetAuthenticator()
8892
if err != nil {
89-
return nil, errors.Wrap(err, "failed to get authenticator")
93+
err = errors.Wrap(err, "failed to get authenticator")
94+
return
9095
}
9196

9297
account, err := servicesutils.GetAccount(auth)
9398
if err != nil {
94-
return nil, errors.Wrap(err, "failed to get account")
99+
err = errors.Wrap(err, "failed to get account")
100+
return
95101
}
96102

97103
rc, err := resourcecontroller.NewService(resourcecontroller.ServiceOptions{})
98104
if err != nil {
99-
return nil, err
105+
return
100106
}
101107

102108
res, _, err := rc.GetResourceInstance(
103109
&resourcecontrollerv2.GetResourceInstanceOptions{
104110
ID: core.StringPtr(spec.ServiceInstanceID),
105111
})
106112
if err != nil {
107-
return nil, errors.Wrap(err, "failed to get resource instance")
113+
err = errors.Wrap(err, "failed to get resource instance")
114+
return
108115
}
109116

110117
region, err := utils.GetRegion(*res.RegionID)
111118
if err != nil {
112-
return nil, errors.Wrap(err, "failed to get region")
119+
err = errors.Wrap(err, "failed to get region")
120+
return
113121
}
114122

115123
options := powervs.ServiceOptions{
@@ -124,16 +132,12 @@ func NewPowerVSImageScope(params PowerVSImageScopeParams) (scope *PowerVSImageSc
124132
c, err := powervs.NewService(options)
125133

126134
if err != nil {
127-
return nil, fmt.Errorf("failed to create NewIBMPowerVSClient")
135+
err = fmt.Errorf("failed to create NewIBMPowerVSClient")
136+
return
128137
}
138+
scope.IBMPowerVSClient = c
129139

130-
return &PowerVSImageScope{
131-
Logger: params.Logger,
132-
client: params.Client,
133-
IBMPowerVSClient: c,
134-
IBMPowerVSImage: params.IBMPowerVSImage,
135-
patchHelper: helper,
136-
}, nil
140+
return scope, nil
137141
}
138142

139143
func (i *PowerVSImageScope) ensureImageUnique(imageName string) (*models.ImageReference, error) {

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ require (
1313
github.com/onsi/ginkgo v1.16.5
1414
github.com/onsi/gomega v1.19.0
1515
github.com/pkg/errors v0.9.1
16-
github.com/ppc64le-cloud/powervs-utils v0.0.0-20210106101518-5d3f965b0344
16+
github.com/ppc64le-cloud/powervs-utils v0.0.0-20210415051532-4cdd6a79c8fa
1717
github.com/spf13/pflag v1.0.5
1818
k8s.io/api v0.23.5
1919
k8s.io/apimachinery v0.23.5

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -967,8 +967,8 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb
967967
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
968968
github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI=
969969
github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSgv7Sy7s/s=
970-
github.com/ppc64le-cloud/powervs-utils v0.0.0-20210106101518-5d3f965b0344 h1:GDCICxOMTqRacDpbpNM79dUM3IZ0PwaayPt19Srq21k=
971-
github.com/ppc64le-cloud/powervs-utils v0.0.0-20210106101518-5d3f965b0344/go.mod h1:KImYgHmvBVtAczNhyDBDSN54PGIdz0+QiPVQMmObEQY=
970+
github.com/ppc64le-cloud/powervs-utils v0.0.0-20210415051532-4cdd6a79c8fa h1:jsCOe5d4zR/QQczn7uHAxrj6tTnEFVFA8gqNu2CFu0c=
971+
github.com/ppc64le-cloud/powervs-utils v0.0.0-20210415051532-4cdd6a79c8fa/go.mod h1:KImYgHmvBVtAczNhyDBDSN54PGIdz0+QiPVQMmObEQY=
972972
github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA=
973973
github.com/prometheus/client_golang v0.0.0-20180209125602-c332b6f63c06/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
974974
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=

0 commit comments

Comments
 (0)