Move building GCE inside gce module
This commit is contained in:
parent
4d74314c24
commit
439a3f3a80
|
|
@ -61,7 +61,7 @@ func NewCloudProvider(opts config.AutoscalingOptions) cloudprovider.CloudProvide
|
|||
|
||||
switch opts.CloudProviderName {
|
||||
case gce.ProviderNameGCE:
|
||||
return buildGCE(opts, do, rl)
|
||||
return gce.BuildGCE(opts, do, rl)
|
||||
case gke.ProviderNameGKE:
|
||||
return gke.BuildGKE(opts, do, rl)
|
||||
case aws.ProviderName:
|
||||
|
|
@ -81,29 +81,6 @@ func NewCloudProvider(opts config.AutoscalingOptions) cloudprovider.CloudProvide
|
|||
return nil // This will never happen because the Fatalf will os.Exit
|
||||
}
|
||||
|
||||
func buildGCE(opts config.AutoscalingOptions, do cloudprovider.NodeGroupDiscoveryOptions, rl *cloudprovider.ResourceLimiter) cloudprovider.CloudProvider {
|
||||
var config io.ReadCloser
|
||||
if opts.CloudConfig != "" {
|
||||
var err error
|
||||
config, err = os.Open(opts.CloudConfig)
|
||||
if err != nil {
|
||||
glog.Fatalf("Couldn't open cloud provider configuration %s: %#v", opts.CloudConfig, err)
|
||||
}
|
||||
defer config.Close()
|
||||
}
|
||||
|
||||
manager, err := gce.CreateGceManager(config, do, opts.Regional)
|
||||
if err != nil {
|
||||
glog.Fatalf("Failed to create GCE Manager: %v", err)
|
||||
}
|
||||
|
||||
provider, err := gce.BuildGceCloudProvider(manager, rl)
|
||||
if err != nil {
|
||||
glog.Fatalf("Failed to create GCE cloud provider: %v", err)
|
||||
}
|
||||
return provider
|
||||
}
|
||||
|
||||
func buildAWS(opts config.AutoscalingOptions, do cloudprovider.NodeGroupDiscoveryOptions, rl *cloudprovider.ResourceLimiter) cloudprovider.CloudProvider {
|
||||
var config io.ReadCloser
|
||||
if opts.CloudConfig != "" {
|
||||
|
|
|
|||
|
|
@ -18,11 +18,15 @@ package gce
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"io"
|
||||
"os"
|
||||
"strings"
|
||||
|
||||
"github.com/golang/glog"
|
||||
apiv1 "k8s.io/api/core/v1"
|
||||
"k8s.io/apimachinery/pkg/api/resource"
|
||||
"k8s.io/autoscaler/cluster-autoscaler/cloudprovider"
|
||||
"k8s.io/autoscaler/cluster-autoscaler/config"
|
||||
"k8s.io/autoscaler/cluster-autoscaler/utils/errors"
|
||||
schedulercache "k8s.io/kubernetes/pkg/scheduler/cache"
|
||||
)
|
||||
|
|
@ -303,3 +307,27 @@ func (mig *gceMig) TemplateNodeInfo() (*schedulercache.NodeInfo, error) {
|
|||
nodeInfo.SetNode(node)
|
||||
return nodeInfo, nil
|
||||
}
|
||||
|
||||
// BuildGCE builds GCE cloud provider, manager etc.
|
||||
func BuildGCE(opts config.AutoscalingOptions, do cloudprovider.NodeGroupDiscoveryOptions, rl *cloudprovider.ResourceLimiter) cloudprovider.CloudProvider {
|
||||
var config io.ReadCloser
|
||||
if opts.CloudConfig != "" {
|
||||
var err error
|
||||
config, err = os.Open(opts.CloudConfig)
|
||||
if err != nil {
|
||||
glog.Fatalf("Couldn't open cloud provider configuration %s: %#v", opts.CloudConfig, err)
|
||||
}
|
||||
defer config.Close()
|
||||
}
|
||||
|
||||
manager, err := CreateGceManager(config, do, opts.Regional)
|
||||
if err != nil {
|
||||
glog.Fatalf("Failed to create GCE Manager: %v", err)
|
||||
}
|
||||
|
||||
provider, err := BuildGceCloudProvider(manager, rl)
|
||||
if err != nil {
|
||||
glog.Fatalf("Failed to create GCE cloud provider: %v", err)
|
||||
}
|
||||
return provider
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue