Skip to content
This repository was archived by the owner on Dec 16, 2025. It is now read-only.

Commit 1afdfcd

Browse files
NotTheEvilOnematofeder
authored andcommitted
Fix error handling in "Reconcile()"
Signed-off-by: Tobias Wolf <[email protected]>
1 parent c06113c commit 1afdfcd

File tree

1 file changed

+11
-19
lines changed

1 file changed

+11
-19
lines changed

internal/controller/openstacknodeimagerelease_controller.go

Lines changed: 11 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -153,26 +153,19 @@ func (r *OpenStackNodeImageReleaseReconciler) Reconcile(ctx context.Context, req
153153
if err != nil {
154154
return ctrl.Result{}, err
155155
}
156-
var (
157-
username string = cloud.AuthInfo.Username
158-
authURL string = cloud.AuthInfo.AuthURL
159-
projectID string = cloud.AuthInfo.ProjectID
160-
userDomainName string = cloud.AuthInfo.UserDomainName
161-
password string = cloud.AuthInfo.Password
162-
)
163156

164157
// Authenticate
165158
authOpts := gophercloud.AuthOptions{
166-
IdentityEndpoint: authURL,
167-
Username: username,
168-
Password: password,
169-
DomainName: userDomainName,
170-
TenantID: projectID,
159+
IdentityEndpoint: cloud.AuthInfo.AuthURL,
160+
Username: cloud.AuthInfo.Username,
161+
Password: cloud.AuthInfo.Password,
162+
DomainName: cloud.AuthInfo.UserDomainName,
163+
TenantID: cloud.AuthInfo.ProjectID,
171164
}
172165

173166
provider, err := openstack.AuthenticatedClient(authOpts)
174167
if err != nil {
175-
fmt.Errorf("Error authenticating with OpenStack: %v", err)
168+
return ctrl.Result{}, fmt.Errorf("Error authenticating with OpenStack: %w", err)
176169
}
177170

178171
// Create an Image service client
@@ -182,7 +175,7 @@ func (r *OpenStackNodeImageReleaseReconciler) Reconcile(ctx context.Context, req
182175

183176
imageID, err := findImageByName(imageClient, imageName)
184177
if err != nil {
185-
fmt.Errorf("Error finding image: %w", err)
178+
return ctrl.Result{}, fmt.Errorf("Error finding image: %w", err)
186179
} else {
187180
if imageID == "" {
188181
visibility := images.ImageVisibilityShared
@@ -196,7 +189,7 @@ func (r *OpenStackNodeImageReleaseReconciler) Reconcile(ctx context.Context, req
196189

197190
image, err := createImage(imageClient, createOptsImage)
198191
if err != nil {
199-
return ctrl.Result{}, err
192+
return ctrl.Result{Requeue: true}, err
200193
}
201194

202195
createOpts := imageimport.CreateOpts{
@@ -208,17 +201,16 @@ func (r *OpenStackNodeImageReleaseReconciler) Reconcile(ctx context.Context, req
208201
// Handle error during image import
209202
err = importImage(imageClient, image.ID, createOpts)
210203
if err != nil {
211-
return ctrl.Result{}, err
204+
return ctrl.Result{Requeue: true}, err
212205
}
213206
}
214207
}
215208

216209
// Check if image is active
217210
imageStatus, err = waitForImageActive(imageClient, imageID, 5*time.Second, 10*time.Minute)
218211
if err != nil {
219-
fmt.Errorf("Error waiting for image to become active:", err)
220-
}
221-
if imageStatus {
212+
return ctrl.Result{Requeue: true}, fmt.Errorf("Error waiting for image to become active: %w", err)
213+
} else if imageStatus {
222214
logger.Info("Image is active.")
223215
}
224216

0 commit comments

Comments
 (0)