diff --git a/pkg/apiserver/controller/job/job.go b/pkg/apiserver/controller/job/job.go index 35e7bfb59..2d2168809 100644 --- a/pkg/apiserver/controller/job/job.go +++ b/pkg/apiserver/controller/job/job.go @@ -454,10 +454,10 @@ func getFlavourWithCheck(reqFlavour schema.Flavour) (schema.Flavour, error) { } return reqFlavour, nil } - flavour, err := models.GetFlavour(reqFlavour.Name) - if err != nil { - log.Errorf("Get flavour by name %s failed when creating job, err=%v", flavour.Name, err) - return schema.Flavour{}, fmt.Errorf("get flavour[%s] failed, err=%v", flavour.Name, err) + flavour, exist := config.GlobalServerConfig.FlavourMap[reqFlavour.Name] + if !exist { + log.Errorf("Get flavour by name %s failed when creating job, flavour not found", reqFlavour.Name) + return schema.Flavour{}, fmt.Errorf("get flavour[%s] failed, flavour not found", flavour.Name) } return schema.Flavour{ Name: flavour.Name, diff --git a/pkg/apiserver/router/v1/job.go b/pkg/apiserver/router/v1/job.go index 6160099ff..a01d4dbde 100644 --- a/pkg/apiserver/router/v1/job.go +++ b/pkg/apiserver/router/v1/job.go @@ -337,7 +337,7 @@ func validateQueue(ctx *logger.RequestContext, schedulingPolicy *job.SchedulingP if err != nil { if err == gorm.ErrRecordNotFound { ctx.ErrorCode = common.JobInvalidField - log.Errorf("create job failed. error: %s", err.Error()) + log.Errorf("validate queue failed when create job. error: %s", err.Error()) return fmt.Errorf("queue not found") } ctx.ErrorCode = common.InternalError diff --git a/pkg/job/runtime/kubernetes/executor/singlejob.go b/pkg/job/runtime/kubernetes/executor/singlejob.go index abf9e6773..2efbfc3e5 100644 --- a/pkg/job/runtime/kubernetes/executor/singlejob.go +++ b/pkg/job/runtime/kubernetes/executor/singlejob.go @@ -20,7 +20,6 @@ import ( "fmt" log "github.com/sirupsen/logrus" - "gorm.io/gorm" v1 "k8s.io/api/core/v1" "paddleflow/pkg/apiserver/models" @@ -162,12 +161,8 @@ func (sp *SingleJob) fillContainer(container *v1.Container, podName string) erro // container.Args would be passed // fill resource - flavour, err := sp.getFlavour() - container.Resources = sp.generateResourceRequirements(flavour) - if err != nil { - log.Errorf("getFlavour occur a err[%v]", err) - return err - } + container.Resources = sp.generateResourceRequirements(sp.Flavour) + // fill env container.Env = sp.appendEnvIfAbsent(container.Env, sp.generateEnvVars()) // fill volumeMount @@ -176,30 +171,3 @@ func (sp *SingleJob) fillContainer(container *v1.Container, podName string) erro log.Debugf("fillContainer completed: pod[%s]-container[%s]", podName, container.Name) return nil } - -// getFlavour get flavour by name or create a new one -func (sp *SingleJob) getFlavour() (schema.Flavour, error) { - res := schema.Flavour{} - // get flavour by name - log.Debugf("pod[%s].conf.Flavour=%v", sp.Name, sp.Flavour) - flavour, err := models.GetFlavour(sp.Flavour.Name) - if err == nil { - return schema.Flavour{ - Name: flavour.Name, - ResourceInfo: schema.ResourceInfo{ - CPU: flavour.CPU, - Mem: flavour.Mem, - ScalarResources: flavour.ScalarResources, - }, - }, nil - } - // flavour not found from db, create a new one by singlePod.config - if err != gorm.ErrRecordNotFound { - return res, err - } else if sp.Flavour.CPU == "" && sp.Flavour.Mem == "" { - return res, fmt.Errorf("flavour[%v] not found, meanwhile cpu or mem is empty", sp.Flavour) - } else { - // If run here, it means flavour is not found by name, construct temp flavour. - return sp.Flavour, nil - } -}