Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDILab开源决策智能平台
DI-orchestrator
提交
26d2a61d
D
DI-orchestrator
项目概览
OpenDILab开源决策智能平台
/
DI-orchestrator
上一次同步 大约 2 年
通知
1
Star
78
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
DI-orchestrator
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
26d2a61d
编写于
9月 02, 2021
作者:
L
liqingping
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat: update CleanPodPolicyALL to CleanPodPolicyAll
上级
70468e89
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
20 addition
and
36 deletion
+20
-36
api/v1alpha1/dijob_types.go
api/v1alpha1/dijob_types.go
+2
-2
api/v1alpha1/dijob_webhook.go
api/v1alpha1/dijob_webhook.go
+4
-4
api/v1alpha1/webhook_test.go
api/v1alpha1/webhook_test.go
+4
-4
config/samples/agconfig.yaml
config/samples/agconfig.yaml
+1
-1
config/samples/dijob-cartpole.yaml
config/samples/dijob-cartpole.yaml
+3
-3
config/samples/dijob-qbert.yaml
config/samples/dijob-qbert.yaml
+3
-3
controllers/dijob_controller.go
controllers/dijob_controller.go
+1
-1
controllers/dijob_test.go
controllers/dijob_test.go
+2
-2
server/http/server_test.go
server/http/server_test.go
+0
-16
未找到文件。
api/v1alpha1/dijob_types.go
浏览文件 @
26d2a61d
...
...
@@ -65,8 +65,8 @@ const (
// CleanPodPolicyRunning means deleting all running pods of the job after completed
CleanPodPolicyRunning
CleanPodPolicy
=
"Running"
// CleanPodPolicyA
LL
means deleting all pods of the job after completed
CleanPodPolicyA
LL
CleanPodPolicy
=
"ALL
"
// CleanPodPolicyA
ll
means deleting all pods of the job after completed
CleanPodPolicyA
ll
CleanPodPolicy
=
"All
"
// CleanPodPolicyNone means never deleting any pods of the job after completed
CleanPodPolicyNone
CleanPodPolicy
=
"None"
...
...
api/v1alpha1/dijob_webhook.go
浏览文件 @
26d2a61d
...
...
@@ -59,10 +59,10 @@ func (r *DIJob) ValidateCreate() error {
dijoblog
.
Info
(
"validate create"
,
"name"
,
r
.
Name
)
// TODO(user): fill in your validation logic upon object creation.
if
r
.
Spec
.
CleanPodPolicy
!=
CleanPodPolicyA
LL
&&
r
.
Spec
.
CleanPodPolicy
!=
CleanPodPolicyNone
&&
if
r
.
Spec
.
CleanPodPolicy
!=
CleanPodPolicyA
ll
&&
r
.
Spec
.
CleanPodPolicy
!=
CleanPodPolicyNone
&&
r
.
Spec
.
CleanPodPolicy
!=
CleanPodPolicyRunning
{
return
fmt
.
Errorf
(
"Invalid CleanPodPolicy %s, expected in [%s, %s, %s]"
,
r
.
Spec
.
CleanPodPolicy
,
CleanPodPolicyNone
,
CleanPodPolicyRunning
,
CleanPodPolicyA
LL
)
r
.
Spec
.
CleanPodPolicy
,
CleanPodPolicyNone
,
CleanPodPolicyRunning
,
CleanPodPolicyA
ll
)
}
return
nil
}
...
...
@@ -72,10 +72,10 @@ func (r *DIJob) ValidateUpdate(old runtime.Object) error {
dijoblog
.
Info
(
"validate update"
,
"name"
,
r
.
Name
)
// TODO(user): fill in your validation logic upon object update.
if
r
.
Spec
.
CleanPodPolicy
!=
CleanPodPolicyA
LL
&&
r
.
Spec
.
CleanPodPolicy
!=
CleanPodPolicyNone
&&
if
r
.
Spec
.
CleanPodPolicy
!=
CleanPodPolicyA
ll
&&
r
.
Spec
.
CleanPodPolicy
!=
CleanPodPolicyNone
&&
r
.
Spec
.
CleanPodPolicy
!=
CleanPodPolicyRunning
{
return
fmt
.
Errorf
(
"Invalid CleanPodPolicy %s, expected in [%s, %s, %s]"
,
r
.
Spec
.
CleanPodPolicy
,
CleanPodPolicyNone
,
CleanPodPolicyRunning
,
CleanPodPolicyA
LL
)
r
.
Spec
.
CleanPodPolicy
,
CleanPodPolicyNone
,
CleanPodPolicyRunning
,
CleanPodPolicyA
ll
)
}
return
nil
}
...
...
api/v1alpha1/webhook_test.go
浏览文件 @
26d2a61d
...
...
@@ -23,7 +23,7 @@ var _ = Describe("Webhook test", func() {
}
testCases
:=
[]
testCase
{
{
cleanPodPolicy
:
CleanPodPolicyRunning
,
expectCleanPodPolicy
:
CleanPodPolicyRunning
},
{
cleanPodPolicy
:
CleanPodPolicyA
LL
,
expectCleanPodPolicy
:
CleanPodPolicyALL
},
{
cleanPodPolicy
:
CleanPodPolicyA
ll
,
expectCleanPodPolicy
:
CleanPodPolicyAll
},
{
cleanPodPolicy
:
CleanPodPolicyNone
,
expectCleanPodPolicy
:
CleanPodPolicyNone
},
{
cleanPodPolicy
:
CleanPodPolicy
(
""
),
expectCleanPodPolicy
:
CleanPodPolicyRunning
},
{
cleanPodPolicy
:
CleanPodPolicy
(
"hello"
),
expectCleanPodPolicy
:
CleanPodPolicy
(
"will be refused by webhook"
)},
...
...
@@ -42,7 +42,7 @@ var _ = Describe("Webhook test", func() {
err
=
k8sClient
.
Create
(
ctx
,
job
,
&
client
.
CreateOptions
{})
if
err
!=
nil
{
if
c
.
cleanPodPolicy
!=
CleanPodPolicyRunning
&&
c
.
cleanPodPolicy
!=
CleanPodPolicyNone
&&
c
.
cleanPodPolicy
!=
CleanPodPolicyA
LL
{
c
.
cleanPodPolicy
!=
CleanPodPolicyA
ll
{
Expect
(
err
.
Error
())
.
To
(
ContainSubstring
(
"Invalid CleanPodPolicy"
))
continue
}
else
{
...
...
@@ -69,7 +69,7 @@ var _ = Describe("Webhook test", func() {
}
testCases
:=
[]
testCase
{
{
cleanPodPolicy
:
CleanPodPolicyRunning
,
expectCleanPodPolicy
:
CleanPodPolicyRunning
},
{
cleanPodPolicy
:
CleanPodPolicyA
LL
,
expectCleanPodPolicy
:
CleanPodPolicyALL
},
{
cleanPodPolicy
:
CleanPodPolicyA
ll
,
expectCleanPodPolicy
:
CleanPodPolicyAll
},
{
cleanPodPolicy
:
CleanPodPolicyNone
,
expectCleanPodPolicy
:
CleanPodPolicyNone
},
{
cleanPodPolicy
:
CleanPodPolicy
(
""
),
expectCleanPodPolicy
:
CleanPodPolicyRunning
},
{
cleanPodPolicy
:
CleanPodPolicy
(
"hello"
),
expectCleanPodPolicy
:
CleanPodPolicy
(
"will be refused by webhook"
)},
...
...
@@ -90,7 +90,7 @@ var _ = Describe("Webhook test", func() {
err
=
k8sClient
.
Update
(
ctx
,
job
,
&
client
.
UpdateOptions
{})
if
err
!=
nil
{
if
c
.
cleanPodPolicy
!=
CleanPodPolicyRunning
&&
c
.
cleanPodPolicy
!=
CleanPodPolicyNone
&&
c
.
cleanPodPolicy
!=
CleanPodPolicyA
LL
{
c
.
cleanPodPolicy
!=
CleanPodPolicyA
ll
{
Expect
(
err
.
Error
())
.
To
(
ContainSubstring
(
"Invalid CleanPodPolicy"
))
continue
}
else
{
...
...
config/samples/agconfig.yaml
浏览文件 @
26d2a61d
...
...
@@ -9,7 +9,7 @@ spec:
spec
:
containers
:
-
name
:
di-container
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
0-75c41277
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
1-3b98cb70
imagePullPolicy
:
Always
env
:
-
name
:
PYTHONUNBUFFERED
...
...
config/samples/dijob-cartpole.yaml
浏览文件 @
26d2a61d
...
...
@@ -19,7 +19,7 @@ spec:
spec
:
containers
:
-
name
:
di-container
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
0-75c41277
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
1-3b98cb70
imagePullPolicy
:
Always
env
:
-
name
:
PYTHONUNBUFFERED
...
...
@@ -162,7 +162,7 @@ spec:
spec
:
containers
:
-
name
:
di-container
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
0-75c41277
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
1-3b98cb70
imagePullPolicy
:
Always
env
:
-
name
:
PYTHONUNBUFFERED
...
...
@@ -189,7 +189,7 @@ spec:
spec
:
containers
:
-
name
:
di-container
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
0-75c41277
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
1-3b98cb70
imagePullPolicy
:
Always
env
:
-
name
:
PYTHONUNBUFFERED
...
...
config/samples/dijob-qbert.yaml
浏览文件 @
26d2a61d
...
...
@@ -19,7 +19,7 @@ spec:
spec
:
containers
:
-
name
:
di-container
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
0-75c41277
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
1-3b98cb70
imagePullPolicy
:
Always
env
:
-
name
:
PYTHONUNBUFFERED
...
...
@@ -170,7 +170,7 @@ spec:
spec
:
containers
:
-
name
:
di-container
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
0-75c41277
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
1-3b98cb70
imagePullPolicy
:
Always
env
:
-
name
:
PYTHONUNBUFFERED
...
...
@@ -200,7 +200,7 @@ spec:
spec
:
containers
:
-
name
:
di-container
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
0-75c41277
image
:
registry.sensetime.com/cloudnative4ai/ding:v0.1.
1-3b98cb70
imagePullPolicy
:
Always
env
:
-
name
:
PYTHONUNBUFFERED
...
...
controllers/dijob_controller.go
浏览文件 @
26d2a61d
...
...
@@ -139,7 +139,7 @@ func (r *DIJobReconciler) deletePodsAndServices(ctx context.Context, job *div1al
}
}
if
job
.
Spec
.
CleanPodPolicy
!=
div1alpha1
.
CleanPodPolicyA
LL
&&
if
job
.
Spec
.
CleanPodPolicy
!=
div1alpha1
.
CleanPodPolicyA
ll
&&
job
.
Spec
.
CleanPodPolicy
!=
div1alpha1
.
CleanPodPolicyRunning
{
return
nil
}
...
...
controllers/dijob_test.go
浏览文件 @
26d2a61d
...
...
@@ -20,7 +20,7 @@ var _ = Describe("DIJob Specification", func() {
Context
(
"When creating a DIJob with different CleanPodPolicy"
,
func
()
{
It
(
"Should execute different pods deletion policy with different CleanPodPolicy"
,
func
()
{
cleanPodPolicies
:=
[]
div1alpha1
.
CleanPodPolicy
{
div1alpha1
.
CleanPodPolicyA
LL
,
div1alpha1
.
CleanPodPolicyA
ll
,
div1alpha1
.
CleanPodPolicyRunning
,
div1alpha1
.
CleanPodPolicyNone
,
}
...
...
@@ -116,7 +116,7 @@ var _ = Describe("DIJob Specification", func() {
By
(
"Checking all the pods and services are deleted"
)
switch
policy
{
case
div1alpha1
.
CleanPodPolicyA
LL
:
case
div1alpha1
.
CleanPodPolicyA
ll
:
Eventually
(
func
()
int
{
pods
,
err
:=
diutil
.
ListPods
(
ctx
,
k8sClient
,
&
dijob
)
if
err
!=
nil
{
...
...
server/http/server_test.go
浏览文件 @
26d2a61d
...
...
@@ -408,22 +408,6 @@ var _ = Describe("Server Test", func() {
Expect
(
portCount
)
.
Should
(
Equal
(
c
.
expectedDDPLPorts
))
}
By
(
"Send request on DELETE /v1alpha1/replicas"
)
var
dln
int
=
1
dreq
:=
commontypes
.
DIJobRequest
{
Namespace
:
job
.
Namespace
,
Coordinator
:
coorname
,
Learners
:
commontypes
.
ResourceQuantity
{
Replicas
:
dln
,
},
}
drbody
,
err
:=
json
.
Marshal
(
dreq
)
Expect
(
err
)
.
NotTo
(
HaveOccurred
())
ddiresp
,
err
:=
sendRequest
(
http
.
MethodDelete
,
drbody
,
rurl
,
http
.
StatusOK
,
true
)
Expect
(
err
)
.
NotTo
(
HaveOccurred
())
Expect
(
len
(
ddiresp
.
Learners
))
.
Should
(
Equal
(
dln
))
err
=
testutil
.
CleanUpJob
(
ctx
,
k8sClient
,
job
.
DeepCopy
())
Expect
(
err
)
.
NotTo
(
HaveOccurred
())
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录