Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
9c0e2d5b
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
9c0e2d5b
编写于
9月 11, 2019
作者:
B
Bian Jiaping
提交者:
Mayra Cabrera
9月 11, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add source and merge_request fields to pipeline event webhook
上级
3fb68248
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
53 addition
and
0 deletion
+53
-0
changelogs/unreleased/add-source-and-merge_request-to-pipeline-webhook.yml
...ased/add-source-and-merge_request-to-pipeline-webhook.yml
+5
-0
doc/user/project/integrations/webhooks.md
doc/user/project/integrations/webhooks.md
+13
-0
lib/gitlab/data_builder/pipeline.rb
lib/gitlab/data_builder/pipeline.rb
+17
-0
spec/lib/gitlab/data_builder/pipeline_spec.rb
spec/lib/gitlab/data_builder/pipeline_spec.rb
+18
-0
未找到文件。
changelogs/unreleased/add-source-and-merge_request-to-pipeline-webhook.yml
0 → 100644
浏览文件 @
9c0e2d5b
---
title
:
Add source and merge_request fields to pipeline event webhook
merge_request
:
32373
author
:
Bian Jiaping
type
:
added
doc/user/project/integrations/webhooks.md
浏览文件 @
9c0e2d5b
...
...
@@ -1001,6 +1001,7 @@ X-Gitlab-Event: Pipeline Hook
"tag"
:
false
,
"sha"
:
"bcbb5ec396a2c0f828686f14fac9b80b780504f2"
,
"before_sha"
:
"bcbb5ec396a2c0f828686f14fac9b80b780504f2"
,
"source"
:
"merge_request_event"
,
"status"
:
"success"
,
"stages"
:[
"build"
,
...
...
@@ -1016,6 +1017,18 @@ X-Gitlab-Event: Pipeline Hook
"value"
:
"us-west-1"
}
]
},
"merge_request"
:
{
"id"
:
1
,
"iid"
:
1
,
"title"
:
"Test"
,
"source_branch"
:
"test"
,
"source_project_id"
:
1
,
"target_branch"
:
"master"
,
"target_project_id"
:
1
,
"state"
:
"opened"
,
"merge_status"
:
"can_be_merged"
,
"url"
:
"http://192.168.64.1:3005/gitlab-org/gitlab-test/merge_requests/1"
},
"user"
:{
"name"
:
"Administrator"
,
...
...
lib/gitlab/data_builder/pipeline.rb
浏览文件 @
9c0e2d5b
...
...
@@ -9,6 +9,7 @@ module Gitlab
{
object_kind:
'pipeline'
,
object_attributes:
hook_attrs
(
pipeline
),
merge_request:
pipeline
.
merge_request
&&
merge_request_attrs
(
pipeline
.
merge_request
),
user:
pipeline
.
user
.
try
(
:hook_attrs
),
project:
pipeline
.
project
.
hook_attrs
(
backward:
false
),
commit:
pipeline
.
commit
.
try
(
:hook_attrs
),
...
...
@@ -23,6 +24,7 @@ module Gitlab
tag:
pipeline
.
tag
,
sha:
pipeline
.
sha
,
before_sha:
pipeline
.
before_sha
,
source:
pipeline
.
source
,
status:
pipeline
.
status
,
detailed_status:
pipeline
.
detailed_status
(
nil
).
label
,
stages:
pipeline
.
stages_names
,
...
...
@@ -33,6 +35,21 @@ module Gitlab
}
end
def
merge_request_attrs
(
merge_request
)
{
id:
merge_request
.
id
,
iid:
merge_request
.
iid
,
title:
merge_request
.
title
,
source_branch:
merge_request
.
source_branch
,
source_project_id:
merge_request
.
source_project_id
,
target_branch:
merge_request
.
target_branch
,
target_project_id:
merge_request
.
target_project_id
,
state:
merge_request
.
state
,
merge_status:
merge_request
.
merge_status
,
url:
Gitlab
::
UrlBuilder
.
build
(
merge_request
)
}
end
def
build_hook_attrs
(
build
)
{
id:
build
.
id
,
...
...
spec/lib/gitlab/data_builder/pipeline_spec.rb
浏览文件 @
9c0e2d5b
...
...
@@ -28,12 +28,14 @@ describe Gitlab::DataBuilder::Pipeline do
expect
(
attributes
[
:sha
]).
to
eq
(
pipeline
.
sha
)
expect
(
attributes
[
:tag
]).
to
eq
(
pipeline
.
tag
)
expect
(
attributes
[
:id
]).
to
eq
(
pipeline
.
id
)
expect
(
attributes
[
:source
]).
to
eq
(
pipeline
.
source
)
expect
(
attributes
[
:status
]).
to
eq
(
pipeline
.
status
)
expect
(
attributes
[
:detailed_status
]).
to
eq
(
'passed'
)
expect
(
build_data
).
to
be_a
(
Hash
)
expect
(
build_data
[
:id
]).
to
eq
(
build
.
id
)
expect
(
build_data
[
:status
]).
to
eq
(
build
.
status
)
expect
(
project_data
).
to
eq
(
project
.
hook_attrs
(
backward:
false
))
expect
(
data
[
:merge_request
]).
to
be_nil
end
context
'pipeline without variables'
do
...
...
@@ -60,6 +62,22 @@ describe Gitlab::DataBuilder::Pipeline do
it
'returns a source ref'
do
expect
(
attributes
[
:ref
]).
to
eq
(
merge_request
.
source_branch
)
end
it
'returns merge request'
do
merge_request_attrs
=
data
[
:merge_request
]
expect
(
merge_request_attrs
).
to
be_a
(
Hash
)
expect
(
merge_request_attrs
[
:id
]).
to
eq
(
merge_request
.
id
)
expect
(
merge_request_attrs
[
:iid
]).
to
eq
(
merge_request
.
iid
)
expect
(
merge_request_attrs
[
:title
]).
to
eq
(
merge_request
.
title
)
expect
(
merge_request_attrs
[
:source_branch
]).
to
eq
(
merge_request
.
source_branch
)
expect
(
merge_request_attrs
[
:source_project_id
]).
to
eq
(
merge_request
.
source_project_id
)
expect
(
merge_request_attrs
[
:target_branch
]).
to
eq
(
merge_request
.
target_branch
)
expect
(
merge_request_attrs
[
:target_project_id
]).
to
eq
(
merge_request
.
target_project_id
)
expect
(
merge_request_attrs
[
:state
]).
to
eq
(
merge_request
.
state
)
expect
(
merge_request_attrs
[
:merge_status
]).
to
eq
(
merge_request
.
merge_status
)
expect
(
merge_request_attrs
[
:url
]).
to
eq
(
"http://localhost/
#{
merge_request
.
target_project
.
full_path
}
/merge_requests/
#{
merge_request
.
iid
}
"
)
end
end
end
end
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录