Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
478990bb
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,发现更多精彩内容 >>
提交
478990bb
编写于
8月 11, 2016
作者:
K
Kamil Trzcinski
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix pipeline status change from pending to running
上级
99928aca
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
53 addition
and
1 deletion
+53
-1
app/models/ci/pipeline.rb
app/models/ci/pipeline.rb
+2
-1
app/models/commit_status.rb
app/models/commit_status.rb
+6
-0
spec/models/ci/pipeline_spec.rb
spec/models/ci/pipeline_spec.rb
+45
-0
未找到文件。
app/models/ci/pipeline.rb
浏览文件 @
478990bb
...
...
@@ -187,6 +187,7 @@ module Ci
def
process!
Ci
::
ProcessPipelineService
.
new
(
project
,
user
).
execute
(
self
)
reload_status!
end
...
...
@@ -197,7 +198,7 @@ module Ci
end
def
reload_status!
statuses
.
reload
reload
self
.
status
=
if
yaml_errors
.
blank?
statuses
.
latest
.
status
||
'skipped'
...
...
app/models/commit_status.rb
浏览文件 @
478990bb
...
...
@@ -76,6 +76,12 @@ class CommitStatus < ActiveRecord::Base
commit_status
.
pipeline
.
process!
if
commit_status
.
pipeline
end
around_transition
any
=>
[
:pending
,
:running
]
do
|
commit_status
,
block
|
block
.
call
commit_status
.
pipeline
.
reload_status!
if
commit_status
.
pipeline
end
end
delegate
:sha
,
:short_sha
,
to: :pipeline
...
...
spec/models/ci/pipeline_spec.rb
浏览文件 @
478990bb
...
...
@@ -257,6 +257,51 @@ describe Ci::Pipeline, models: true do
end
end
describe
'#status'
do
let!
(
:build
)
{
create
(
:ci_build
,
:created
,
pipeline:
pipeline
,
name:
'test'
)
}
subject
{
pipeline
.
reload
.
status
}
context
'on queuing'
do
before
{
build
.
queue
}
it
{
is_expected
.
to
eq
(
'pending'
)
}
end
context
'on run'
do
before
do
build
.
queue
build
.
run
end
it
{
is_expected
.
to
eq
(
'running'
)
}
end
context
'on drop'
do
before
do
build
.
drop
end
it
{
is_expected
.
to
eq
(
'failed'
)
}
end
context
'on success'
do
before
do
build
.
success
end
it
{
is_expected
.
to
eq
(
'success'
)
}
end
context
'on cancel'
do
before
do
build
.
cancel
end
it
{
is_expected
.
to
eq
(
'canceled'
)
}
end
end
describe
'#execute_hooks'
do
let!
(
:hook
)
do
create
(
:project_hook
,
project:
project
,
pipeline_events:
enabled
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录