diff --git a/cmd/root.go b/cmd/root.go index 7e35adde5..a7643a8d1 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -67,6 +67,11 @@ func Execute() { func init() { cobra.OnInitialize(initConfig) + // read default node name from environment variable. + // it can be overwritten by cli flags if specified. + if os.Getenv("DEFAULT_NODE_NAME") != "" { + nodeName = os.Getenv("DEFAULT_NODE_NAME") + } // Here you will define your flags and configuration settings. // Cobra supports persistent flags, which, if defined here, // will be global for your application. diff --git a/providers/mock/mock.go b/providers/mock/mock.go index 5bfab8ac4..f84eed032 100644 --- a/providers/mock/mock.go +++ b/providers/mock/mock.go @@ -42,7 +42,7 @@ type MockConfig struct { // NewMockProvider creates a new MockProvider func NewMockProvider(providerConfig, nodeName, operatingSystem string, internalIP string, daemonEndpointPort int32) (*MockProvider, error) { - config, err := loadConfig(providerConfig) + config, err := loadConfig(providerConfig, nodeName) if err != nil { return nil, err } @@ -59,25 +59,28 @@ func NewMockProvider(providerConfig, nodeName, operatingSystem string, internalI } // loadConfig loads the given json configuration files. -func loadConfig(providerConfig string) (config MockConfig, err error) { - if providerConfig != "" { - data, err := ioutil.ReadFile(providerConfig) - if err != nil { - return config, err + +func loadConfig(providerConfig, nodeName string) (config MockConfig, err error) { + data, err := ioutil.ReadFile(providerConfig) + if err != nil { + return config, err + } + configMap := map[string]MockConfig{} + err = json.Unmarshal(data, &configMap) + if err != nil { + return config, err + } + if _, exist := configMap[nodeName]; exist { + config = configMap[nodeName] + if config.CPU == "" { + config.CPU = defaultCPUCapacity } - err = json.Unmarshal(data, &config) - if err != nil { - return config, err + if config.Memory == "" { + config.Memory = defaultMemoryCapacity + } + if config.Pods == "" { + config.Pods = defaultPodCapacity } - } - if config.CPU == "" { - config.CPU = defaultCPUCapacity - } - if config.Memory == "" { - config.Memory = defaultMemoryCapacity - } - if config.Pods == "" { - config.Pods = defaultPodCapacity } if _, err = resource.ParseQuantity(config.CPU); err != nil {