func (s *SchedulerServer) createConfig(configFactory *factory.ConfigFactory) (*scheduler.Config, error) { var policy schedulerapi.Policy var configData []byte if _, err := os.Stat(s.PolicyConfigFile); err == nil { configData, err = ioutil.ReadFile(s.PolicyConfigFile) if err != nil { return nil, fmt.Errorf("Unable to read policy config: %v", err) } err = latestschedulerapi.Codec.DecodeInto(configData, &policy) if err != nil { return nil, fmt.Errorf("Invalid configuration: %v", err) } return configFactory.CreateFromConfig(policy) } // if the config file isn't provided, use the specified (or default) provider // check of algorithm provider is registered and fail fast _, err := factory.GetAlgorithmProvider(s.AlgorithmProvider) if err != nil { return nil, err } return configFactory.CreateFromProvider(s.AlgorithmProvider) }
func createConfig(configFactory *factory.ConfigFactory) (*scheduler.Config, error) { // check of algorithm provider is registered and fail fast _, err := factory.GetAlgorithmProvider(*algorithmProvider) if err != nil { return nil, err } return configFactory.CreateFromProvider(*algorithmProvider) }