diff --git a/pkg/asset/machines/openstack/machines.go b/pkg/asset/machines/openstack/machines.go index 0678db41cad..29a90c12164 100644 --- a/pkg/asset/machines/openstack/machines.go +++ b/pkg/asset/machines/openstack/machines.go @@ -41,7 +41,7 @@ func Machines(clusterID string, config *types.InstallConfig, pool *types.Machine mpool := pool.Platform.OpenStack platform := config.Platform.OpenStack - trunkSupport, err := checkNetworkExtensionAvailability(platform.Cloud, "trunk") + trunkSupport, err := checkNetworkExtensionAvailability(platform.Cloud, "trunk", nil) if err != nil { return nil, err } @@ -176,8 +176,11 @@ func generateProvider(clusterID string, platform *openstack.Platform, mpool *ope return &spec, nil } -func checkNetworkExtensionAvailability(cloud, alias string) (bool, error) { - conn, err := clientconfig.NewServiceClient("network", openstackdefaults.DefaultClientOpts(cloud)) +func checkNetworkExtensionAvailability(cloud, alias string, opts *clientconfig.ClientOpts) (bool, error) { + if opts == nil { + opts = openstackdefaults.DefaultClientOpts(cloud) + } + conn, err := clientconfig.NewServiceClient("network", opts) if err != nil { return false, err } diff --git a/pkg/asset/machines/openstack/machinesets.go b/pkg/asset/machines/openstack/machinesets.go index 5ed9dc8dd5e..c7d5e0edbb9 100644 --- a/pkg/asset/machines/openstack/machinesets.go +++ b/pkg/asset/machines/openstack/machinesets.go @@ -4,6 +4,7 @@ package openstack import ( "fmt" + "github.com/gophercloud/utils/openstack/clientconfig" clusterapi "github.com/openshift/machine-api-operator/pkg/apis/machine/v1beta1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" @@ -13,7 +14,7 @@ import ( ) // MachineSets returns a list of machinesets for a machinepool. -func MachineSets(clusterID string, config *types.InstallConfig, pool *types.MachinePool, osImage, role, userDataSecret string) ([]*clusterapi.MachineSet, error) { +func MachineSets(clusterID string, config *types.InstallConfig, pool *types.MachinePool, osImage, role, userDataSecret string, clientOpts *clientconfig.ClientOpts) ([]*clusterapi.MachineSet, error) { if configPlatform := config.Platform.Name(); configPlatform != openstack.Name { return nil, fmt.Errorf("non-OpenStack configuration: %q", configPlatform) } @@ -22,7 +23,7 @@ func MachineSets(clusterID string, config *types.InstallConfig, pool *types.Mach } platform := config.Platform.OpenStack mpool := pool.Platform.OpenStack - trunkSupport, err := checkNetworkExtensionAvailability(platform.Cloud, "trunk") + trunkSupport, err := checkNetworkExtensionAvailability(platform.Cloud, "trunk", clientOpts) if err != nil { return nil, err } diff --git a/pkg/asset/machines/worker.go b/pkg/asset/machines/worker.go index 932e6296c8a..804387c68ba 100644 --- a/pkg/asset/machines/worker.go +++ b/pkg/asset/machines/worker.go @@ -363,7 +363,7 @@ func (w *Worker) Generate(dependencies asset.Parents) error { imageName, _ := rhcosutils.GenerateOpenStackImageName(string(*rhcosImage), clusterID.InfraID) - sets, err := openstack.MachineSets(clusterID.InfraID, ic, &pool, imageName, "worker", "worker-user-data") + sets, err := openstack.MachineSets(clusterID.InfraID, ic, &pool, imageName, "worker", "worker-user-data", nil) if err != nil { return errors.Wrap(err, "failed to create worker machine objects") }