Skip to content

Commit ea364ec

Browse files
author
zhongzichao
committed
add paddle job resource support when using extensiontemplate
1 parent 79c87dc commit ea364ec

File tree

2 files changed

+42
-5
lines changed

2 files changed

+42
-5
lines changed

pkg/job/runtime_v2/job/paddle/kube_paddle_job.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -397,12 +397,16 @@ func (pj *KubePaddleJob) patchResource(pdj *paddlejobv1.PaddleJob, job *api.PFJo
397397
log.Infof("patch resource in paddlejob")
398398
if len(job.Tasks) == 0 {
399399
log.Debugf("no resources to be configured")
400+
return nil
400401
}
401402

402403
// fill resource
403404
var minAvailable int32
404405
minResources := resources.EmptyResource()
405406
for _, task := range job.Tasks {
407+
if pfschema.IsEmptyResource(task.Flavour.ResourceInfo) {
408+
continue
409+
}
406410
resourceRequirements, err := kuberuntime.GenerateResourceRequirements(task.Flavour)
407411
if err != nil {
408412
log.Errorf("generate resource requirements failed, err: %v", err)

pkg/job/runtime_v2/job/paddle/kube_paddle_job_test.go

Lines changed: 38 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,11 +65,11 @@ spec:
6565
image: nginx
6666
resources:
6767
limits:
68-
cpu: "1"
69-
memory: 1Gi
68+
cpu: "2"
69+
memory: 2Gi
7070
requests:
71-
cpu: "1"
72-
memory: 1Gi
71+
cpu: "2"
72+
memory: 2Gi
7373
`
7474
nilWorkerContainerYaml = `
7575
apiVersion: batch.paddlepaddle.org/v1
@@ -511,6 +511,38 @@ func TestPaddleJob_CreateJob(t *testing.T) {
511511
},
512512
wantErr: errors.New("container is required in paddleJob"),
513513
},
514+
{
515+
caseName: "extensionTemplate member has no flavour",
516+
jobObj: &api.PFJob{
517+
ID: "job-normal-0c272d0c",
518+
Name: "",
519+
Namespace: "default",
520+
JobType: schema.TypeDistributed,
521+
Framework: schema.FrameworkPaddle,
522+
JobMode: schema.EnvJobModePS,
523+
UserName: "root",
524+
QueueID: "mockQueueID",
525+
Tasks: []schema.Member{
526+
{
527+
ID: "task-normal-0001",
528+
Replicas: 1,
529+
Role: schema.RoleWorker,
530+
Conf: schema.Conf{
531+
Name: "normal",
532+
Command: "sleep 200",
533+
Image: "mockImage",
534+
},
535+
},
536+
{
537+
ID: "task-normal-0001",
538+
Replicas: 1,
539+
Role: schema.RolePServer,
540+
},
541+
},
542+
ExtensionTemplate: []byte(extensionPaddleYaml),
543+
},
544+
wantErr: nil,
545+
},
514546
{
515547
caseName: "create paddle job with Collective mode",
516548
jobObj: &mockPaddleJob,
@@ -533,10 +565,11 @@ func TestPaddleJob_CreateJob(t *testing.T) {
533565
if test.wantErr == nil {
534566
assert.Equal(t, test.wantErr, err)
535567
t.Logf("case[%s] to CreateJob, paddleFlowJob=%+v", test.caseName, test.jobObj)
536-
_, err := kubeRuntimeClient.Get(test.jobObj.Namespace, test.jobObj.ID, KubePaddleFwVersion)
568+
obj, err := kubeRuntimeClient.Get(test.jobObj.Namespace, test.jobObj.ID, KubePaddleFwVersion)
537569
if !assert.NoError(t, err) {
538570
t.Errorf(err.Error())
539571
}
572+
t.Logf("result: %v", obj)
540573
} else {
541574
if assert.Error(t, err) {
542575
assert.Equal(t, test.wantErr.Error(), err.Error())

0 commit comments

Comments
 (0)