Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
koderover
zadig
提交
eb87d004
zadig
项目概览
koderover
/
zadig
8 个月 前同步成功
通知
10
Star
2407
Fork
754
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
zadig
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
eb87d004
编写于
8月 18, 2023
作者:
M
M-Cosmosss
提交者:
GitHub
8月 18, 2023
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat: add workflow param creator.id (#2973)
Signed-off-by:
N
M-Cosmosss
<
yuzhou@koderover.com
>
上级
663a22a8
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
20 addition
and
9 deletion
+20
-9
pkg/microservice/aslan/core/workflow/handler/workflow_task_v4.go
...roservice/aslan/core/workflow/handler/workflow_task_v4.go
+4
-2
pkg/microservice/aslan/core/workflow/service/workflow/job/job.go
...roservice/aslan/core/workflow/service/workflow/job/job.go
+4
-3
pkg/microservice/aslan/core/workflow/service/workflow/workflow_task_v4.go
.../aslan/core/workflow/service/workflow/workflow_task_v4.go
+11
-4
pkg/microservice/aslan/core/workflow/service/workflow/workflow_v4.go
...rvice/aslan/core/workflow/service/workflow/workflow_v4.go
+1
-0
未找到文件。
pkg/microservice/aslan/core/workflow/handler/workflow_task_v4.go
浏览文件 @
eb87d004
...
...
@@ -25,6 +25,7 @@ import (
"strings"
"github.com/gin-gonic/gin"
"github.com/koderover/zadig/pkg/types"
commonmodels
"github.com/koderover/zadig/pkg/microservice/aslan/core/common/repository/models"
...
...
@@ -94,8 +95,9 @@ func CreateWorkflowTaskV4(c *gin.Context) {
}
ctx
.
Resp
,
ctx
.
Err
=
workflow
.
CreateWorkflowTaskV4
(
&
workflow
.
CreateWorkflowTaskV4Args
{
Name
:
ctx
.
UserName
,
UserID
:
ctx
.
UserID
,
Name
:
ctx
.
UserName
,
Account
:
ctx
.
Account
,
UserID
:
ctx
.
UserID
,
},
args
,
ctx
.
Logger
)
}
...
...
pkg/microservice/aslan/core/workflow/service/workflow/job/job.go
浏览文件 @
eb87d004
...
...
@@ -442,12 +442,12 @@ func RemoveFixedValueMarks(workflow *commonmodels.WorkflowV4) error {
return
json
.
Unmarshal
([]
byte
(
replacedString
),
&
workflow
)
}
func
RenderGlobalVariables
(
workflow
*
commonmodels
.
WorkflowV4
,
taskID
int64
,
creator
string
)
error
{
func
RenderGlobalVariables
(
workflow
*
commonmodels
.
WorkflowV4
,
taskID
int64
,
creator
,
account
string
)
error
{
b
,
err
:=
json
.
Marshal
(
workflow
)
if
err
!=
nil
{
return
fmt
.
Errorf
(
"marshal workflow error: %v"
,
err
)
}
params
,
err
:=
getWorkflowDefaultParams
(
workflow
,
taskID
,
creator
)
params
,
err
:=
getWorkflowDefaultParams
(
workflow
,
taskID
,
creator
,
account
)
if
err
!=
nil
{
return
fmt
.
Errorf
(
"get workflow default params error: %v"
,
err
)
}
...
...
@@ -483,12 +483,13 @@ func renderMultiLineString(value, template string, inputs []*commonmodels.Param)
return
value
}
func
getWorkflowDefaultParams
(
workflow
*
commonmodels
.
WorkflowV4
,
taskID
int64
,
creator
string
)
([]
*
commonmodels
.
Param
,
error
)
{
func
getWorkflowDefaultParams
(
workflow
*
commonmodels
.
WorkflowV4
,
taskID
int64
,
creator
,
account
string
)
([]
*
commonmodels
.
Param
,
error
)
{
resp
:=
[]
*
commonmodels
.
Param
{}
resp
=
append
(
resp
,
&
commonmodels
.
Param
{
Name
:
"project"
,
Value
:
workflow
.
Project
,
ParamsType
:
"string"
,
IsCredential
:
false
})
resp
=
append
(
resp
,
&
commonmodels
.
Param
{
Name
:
"workflow.name"
,
Value
:
workflow
.
Name
,
ParamsType
:
"string"
,
IsCredential
:
false
})
resp
=
append
(
resp
,
&
commonmodels
.
Param
{
Name
:
"workflow.task.id"
,
Value
:
fmt
.
Sprintf
(
"%d"
,
taskID
),
ParamsType
:
"string"
,
IsCredential
:
false
})
resp
=
append
(
resp
,
&
commonmodels
.
Param
{
Name
:
"workflow.task.creator"
,
Value
:
creator
,
ParamsType
:
"string"
,
IsCredential
:
false
})
resp
=
append
(
resp
,
&
commonmodels
.
Param
{
Name
:
"workflow.task.creator.id"
,
Value
:
account
,
ParamsType
:
"string"
,
IsCredential
:
false
})
resp
=
append
(
resp
,
&
commonmodels
.
Param
{
Name
:
"workflow.task.timestamp"
,
Value
:
fmt
.
Sprintf
(
"%d"
,
time
.
Now
()
.
Unix
()),
ParamsType
:
"string"
,
IsCredential
:
false
})
for
_
,
param
:=
range
workflow
.
Params
{
paramsKey
:=
strings
.
Join
([]
string
{
"workflow"
,
"params"
,
param
.
Name
},
"."
)
...
...
pkg/microservice/aslan/core/workflow/service/workflow/workflow_task_v4.go
浏览文件 @
eb87d004
...
...
@@ -24,13 +24,14 @@ import (
"strings"
"time"
"github.com/koderover/zadig/pkg/shared/client/user"
"github.com/pkg/errors"
"go.uber.org/zap"
"gorm.io/gorm/utils"
corev1
"k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/labels"
"github.com/koderover/zadig/pkg/shared/client/user"
"github.com/koderover/zadig/pkg/microservice/aslan/config"
commonmodels
"github.com/koderover/zadig/pkg/microservice/aslan/core/common/repository/models"
"github.com/koderover/zadig/pkg/microservice/aslan/core/common/repository/mongodb"
...
...
@@ -300,8 +301,9 @@ func CheckWorkflowV4ApprovalInitiator(workflowName, uid string, log *zap.Sugared
}
type
CreateWorkflowTaskV4Args
struct
{
Name
string
UserID
string
Name
string
Account
string
UserID
string
}
func
CreateWorkflowTaskV4ByBuildInTrigger
(
triggerName
string
,
args
*
commonmodels
.
WorkflowV4
,
log
*
zap
.
SugaredLogger
)
(
*
CreateTaskV4Resp
,
error
)
{
...
...
@@ -332,6 +334,11 @@ func CreateWorkflowTaskV4(args *CreateWorkflowTaskV4Args, workflow *commonmodels
return
resp
,
err
}
// if account is not set, use name as account
if
args
.
Account
==
""
{
args
.
Account
=
args
.
Name
}
dbWorkflow
,
err
:=
commonrepo
.
NewWorkflowV4Coll
()
.
Find
(
workflow
.
Name
)
if
err
!=
nil
{
log
.
Errorf
(
"cannot find workflow %s, the error is: %v"
,
workflow
.
Name
,
err
)
...
...
@@ -378,7 +385,7 @@ func CreateWorkflowTaskV4(args *CreateWorkflowTaskV4Args, workflow *commonmodels
return
resp
,
e
.
ErrCreateTask
.
AddDesc
(
err
.
Error
())
}
if
err
:=
jobctl
.
RenderGlobalVariables
(
workflow
,
nextTaskID
,
args
.
Name
);
err
!=
nil
{
if
err
:=
jobctl
.
RenderGlobalVariables
(
workflow
,
nextTaskID
,
args
.
Name
,
args
.
Account
);
err
!=
nil
{
log
.
Errorf
(
"RenderGlobalVariables error: %v"
,
err
)
return
resp
,
e
.
ErrCreateTask
.
AddDesc
(
err
.
Error
())
}
...
...
pkg/microservice/aslan/core/workflow/service/workflow/workflow_v4.go
浏览文件 @
eb87d004
...
...
@@ -1858,6 +1858,7 @@ func getDefaultVars(workflow *commonmodels.WorkflowV4, currentJobName string) []
vars
=
append
(
vars
,
fmt
.
Sprintf
(
setting
.
RenderValueTemplate
,
"project"
))
vars
=
append
(
vars
,
fmt
.
Sprintf
(
setting
.
RenderValueTemplate
,
"workflow.name"
))
vars
=
append
(
vars
,
fmt
.
Sprintf
(
setting
.
RenderValueTemplate
,
"workflow.task.creator"
))
vars
=
append
(
vars
,
fmt
.
Sprintf
(
setting
.
RenderValueTemplate
,
"workflow.task.creator.id"
))
vars
=
append
(
vars
,
fmt
.
Sprintf
(
setting
.
RenderValueTemplate
,
"workflow.task.timestamp"
))
vars
=
append
(
vars
,
fmt
.
Sprintf
(
setting
.
RenderValueTemplate
,
"workflow.task.id"
))
for
_
,
param
:=
range
workflow
.
Params
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录