Skip to content

Commit 20bf38a

Browse files
Merge pull request #2717 from dtantsur/prov-result
🌱 Do not use os.Exit outside of cmd
2 parents ee6a4a4 + 0bd15d0 commit 20bf38a

File tree

2 files changed

+7
-7
lines changed

2 files changed

+7
-7
lines changed

main.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -288,7 +288,11 @@ func main() {
288288
provisionerFactory = &demo.Demo{}
289289
} else {
290290
provLog := zap.New(zap.UseFlagOptions(&logOpts)).WithName("provisioner")
291-
provisionerFactory = ironic.NewProvisionerFactory(provLog, preprovImgEnable)
291+
provisionerFactory, err = ironic.NewProvisionerFactory(provLog, preprovImgEnable)
292+
if err != nil {
293+
setupLog.Error(err, "cannot start ironic provisioner")
294+
os.Exit(1)
295+
}
292296
}
293297

294298
maxConcurrency, err := getMaxConcurrentReconciles(controllerConcurrency)

pkg/provisioner/ironic/factory.go

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,13 @@ type ironicProvisionerFactory struct {
2424
clientIronic *gophercloud.ServiceClient
2525
}
2626

27-
func NewProvisionerFactory(logger logr.Logger, havePreprovImgBuilder bool) provisioner.Factory {
27+
func NewProvisionerFactory(logger logr.Logger, havePreprovImgBuilder bool) (provisioner.Factory, error) {
2828
factory := ironicProvisionerFactory{
2929
log: logger.WithName("ironic"),
3030
}
3131

3232
err := factory.init(havePreprovImgBuilder)
33-
if err != nil {
34-
factory.log.Error(err, "Cannot start ironic provisioner")
35-
os.Exit(1)
36-
}
37-
return factory
33+
return factory, err
3834
}
3935

4036
func (f *ironicProvisionerFactory) init(havePreprovImgBuilder bool) error {

0 commit comments

Comments
 (0)