Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
4b6e583c
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,发现更多精彩内容 >>
提交
4b6e583c
编写于
1月 12, 2017
作者:
T
Tiago Botelho
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
adds test suite
上级
cd51af1a
变更
30
隐藏空白更改
内联
并排
Showing
30 changed file
with
17 addition
and
147 deletion
+17
-147
app/helpers/services_helper.rb
app/helpers/services_helper.rb
+2
-0
app/models/project_services/asana_service.rb
app/models/project_services/asana_service.rb
+0
-4
app/models/project_services/assembla_service.rb
app/models/project_services/assembla_service.rb
+0
-4
app/models/project_services/bamboo_service.rb
app/models/project_services/bamboo_service.rb
+0
-4
app/models/project_services/bugzilla_service.rb
app/models/project_services/bugzilla_service.rb
+0
-8
app/models/project_services/buildkite_service.rb
app/models/project_services/buildkite_service.rb
+0
-8
app/models/project_services/builds_email_service.rb
app/models/project_services/builds_email_service.rb
+0
-4
app/models/project_services/campfire_service.rb
app/models/project_services/campfire_service.rb
+0
-4
app/models/project_services/ci_service.rb
app/models/project_services/ci_service.rb
+0
-3
app/models/project_services/custom_issue_tracker_service.rb
app/models/project_services/custom_issue_tracker_service.rb
+0
-8
app/models/project_services/emails_on_push_service.rb
app/models/project_services/emails_on_push_service.rb
+0
-4
app/models/project_services/external_wiki_service.rb
app/models/project_services/external_wiki_service.rb
+0
-4
app/models/project_services/flowdock_service.rb
app/models/project_services/flowdock_service.rb
+0
-4
app/models/project_services/gemnasium_service.rb
app/models/project_services/gemnasium_service.rb
+0
-4
app/models/project_services/hipchat_service.rb
app/models/project_services/hipchat_service.rb
+0
-4
app/models/project_services/irker_service.rb
app/models/project_services/irker_service.rb
+0
-4
app/models/project_services/jira_service.rb
app/models/project_services/jira_service.rb
+0
-4
app/models/project_services/kubernetes_service.rb
app/models/project_services/kubernetes_service.rb
+0
-8
app/models/project_services/mattermost_service.rb
app/models/project_services/mattermost_service.rb
+0
-8
app/models/project_services/mattermost_slash_commands_service.rb
...els/project_services/mattermost_slash_commands_service.rb
+0
-8
app/models/project_services/pipelines_email_service.rb
app/models/project_services/pipelines_email_service.rb
+0
-4
app/models/project_services/pivotaltracker_service.rb
app/models/project_services/pivotaltracker_service.rb
+0
-4
app/models/project_services/pushover_service.rb
app/models/project_services/pushover_service.rb
+0
-4
app/models/project_services/redmine_service.rb
app/models/project_services/redmine_service.rb
+0
-8
app/models/project_services/slack_service.rb
app/models/project_services/slack_service.rb
+0
-8
app/models/project_services/slack_slash_commands_service.rb
app/models/project_services/slack_slash_commands_service.rb
+0
-8
app/models/project_services/teamcity_service.rb
app/models/project_services/teamcity_service.rb
+0
-8
app/models/service.rb
app/models/service.rb
+12
-1
lib/api/services.rb
lib/api/services.rb
+2
-3
spec/controllers/projects/services_controller_spec.rb
spec/controllers/projects/services_controller_spec.rb
+1
-0
未找到文件。
app/helpers/services_helper.rb
浏览文件 @
4b6e583c
...
...
@@ -26,4 +26,6 @@ module ServicesHelper
event
=
event
.
pluralize
if
%w[merge_request issue confidential_issue]
.
include?
(
event
)
"
#{
event
}
_events"
end
extend
self
end
app/models/project_services/asana_service.rb
浏览文件 @
4b6e583c
...
...
@@ -48,10 +48,6 @@ http://app.asana.com/-/account_api'
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
client
@_client
||=
begin
Asana
::
Client
.
new
do
|
c
|
...
...
app/models/project_services/assembla_service.rb
浏览文件 @
4b6e583c
...
...
@@ -27,10 +27,6 @@ class AssemblaService < Service
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
data
)
return
unless
supported_events
.
include?
(
data
[
:object_kind
])
...
...
app/models/project_services/bamboo_service.rb
浏览文件 @
4b6e583c
...
...
@@ -56,10 +56,6 @@ class BambooService < CiService
]
end
def
self
.
supported_events
%w(push)
end
def
build_page
(
sha
,
ref
)
with_reactive_cache
(
sha
,
ref
)
{
|
cached
|
cached
[
:build_page
]
}
end
...
...
app/models/project_services/bugzilla_service.rb
浏览文件 @
4b6e583c
...
...
@@ -22,12 +22,4 @@ class BugzillaService < IssueTrackerService
def
self
.
to_param
'bugzilla'
end
def
self
.
supported_events
%w()
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
end
app/models/project_services/buildkite_service.rb
浏览文件 @
4b6e583c
...
...
@@ -24,14 +24,6 @@ class BuildkiteService < CiService
hook
.
save
end
def
self
.
supported_events
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
data
)
return
unless
supported_events
.
include?
(
data
[
:object_kind
])
...
...
app/models/project_services/builds_email_service.rb
浏览文件 @
4b6e583c
...
...
@@ -27,10 +27,6 @@ class BuildsEmailService < Service
%w(build)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
push_data
)
return
unless
supported_events
.
include?
(
push_data
[
:object_kind
])
return
unless
should_build_be_notified?
(
push_data
)
...
...
app/models/project_services/campfire_service.rb
浏览文件 @
4b6e583c
...
...
@@ -28,10 +28,6 @@ class CampfireService < Service
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
data
)
return
unless
supported_events
.
include?
(
data
[
:object_kind
])
...
...
app/models/project_services/ci_service.rb
浏览文件 @
4b6e583c
...
...
@@ -12,9 +12,6 @@ class CiService < Service
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
# Return complete url to build page
#
# Ex.
...
...
app/models/project_services/custom_issue_tracker_service.rb
浏览文件 @
4b6e583c
...
...
@@ -36,12 +36,4 @@ class CustomIssueTrackerService < IssueTrackerService
{
type:
'text'
,
name:
'new_issue_url'
,
placeholder:
'New Issue url'
}
]
end
def
self
.
supported_events
%w()
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
end
app/models/project_services/emails_on_push_service.rb
浏览文件 @
4b6e583c
...
...
@@ -20,10 +20,6 @@ class EmailsOnPushService < Service
%w(push tag_push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
push_data
)
return
unless
supported_events
.
include?
(
push_data
[
:object_kind
])
...
...
app/models/project_services/external_wiki_service.rb
浏览文件 @
4b6e583c
...
...
@@ -33,8 +33,4 @@ class ExternalWikiService < Service
def
self
.
supported_events
%w()
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
end
app/models/project_services/flowdock_service.rb
浏览文件 @
4b6e583c
...
...
@@ -26,10 +26,6 @@ class FlowdockService < Service
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
data
)
return
unless
supported_events
.
include?
(
data
[
:object_kind
])
...
...
app/models/project_services/gemnasium_service.rb
浏览文件 @
4b6e583c
...
...
@@ -27,10 +27,6 @@ class GemnasiumService < Service
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
data
)
return
unless
supported_events
.
include?
(
data
[
:object_kind
])
...
...
app/models/project_services/hipchat_service.rb
浏览文件 @
4b6e583c
...
...
@@ -49,10 +49,6 @@ class HipchatService < Service
%w(push issue confidential_issue merge_request note tag_push build)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
data
)
return
unless
supported_events
.
include?
(
data
[
:object_kind
])
message
=
create_message
(
data
)
...
...
app/models/project_services/irker_service.rb
浏览文件 @
4b6e583c
...
...
@@ -25,10 +25,6 @@ class IrkerService < Service
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
data
)
return
unless
supported_events
.
include?
(
data
[
:object_kind
])
...
...
app/models/project_services/jira_service.rb
浏览文件 @
4b6e583c
...
...
@@ -16,10 +16,6 @@ class JiraService < IssueTrackerService
%w(commit merge_request)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
# {PROJECT-KEY}-{NUMBER} Examples: JIRA-1, PROJECT-1
def
reference_pattern
@reference_pattern
||=
%r{(?<issue>
\b
([A-Z][A-Z0-9_]+-)
\d
+)}
...
...
app/models/project_services/kubernetes_service.rb
浏览文件 @
4b6e583c
...
...
@@ -158,14 +158,6 @@ class KubernetesService < DeploymentService
opts
end
def
self
.
supported_events
%w()
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
kubeclient_auth_options
{
bearer_token:
token
}
end
...
...
app/models/project_services/mattermost_service.rb
浏览文件 @
4b6e583c
...
...
@@ -38,12 +38,4 @@ class MattermostService < ChatNotificationService
def
default_channel_placeholder
"#town-square"
end
def
self
.
supported_events
%w()
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
end
app/models/project_services/mattermost_slash_commands_service.rb
浏览文件 @
4b6e583c
...
...
@@ -48,12 +48,4 @@ class MattermostSlashCommandsService < ChatSlashCommandsService
method:
'P'
,
username:
'GitLab'
)
end
def
self
.
supported_events
%w()
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
end
app/models/project_services/pipelines_email_service.rb
浏览文件 @
4b6e583c
...
...
@@ -23,10 +23,6 @@ class PipelinesEmailService < Service
%w[pipeline]
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
data
,
force:
false
)
return
unless
supported_events
.
include?
(
data
[
:object_kind
])
return
unless
force
||
should_pipeline_be_notified?
(
data
)
...
...
app/models/project_services/pivotaltracker_service.rb
浏览文件 @
4b6e583c
...
...
@@ -38,10 +38,6 @@ class PivotaltrackerService < Service
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
data
)
return
unless
supported_events
.
include?
(
data
[
:object_kind
])
return
unless
allowed_branch?
(
data
[
:ref
])
...
...
app/models/project_services/pushover_service.rb
浏览文件 @
4b6e583c
...
...
@@ -65,10 +65,6 @@ class PushoverService < Service
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
execute
(
data
)
return
unless
supported_events
.
include?
(
data
[
:object_kind
])
...
...
app/models/project_services/redmine_service.rb
浏览文件 @
4b6e583c
...
...
@@ -22,12 +22,4 @@ class RedmineService < IssueTrackerService
def
self
.
to_param
'redmine'
end
def
self
.
supported_events
%w()
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
end
app/models/project_services/slack_service.rb
浏览文件 @
4b6e583c
...
...
@@ -37,12 +37,4 @@ class SlackService < ChatNotificationService
def
default_channel_placeholder
"#general"
end
def
self
.
supported_events
%w()
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
end
app/models/project_services/slack_slash_commands_service.rb
浏览文件 @
4b6e583c
...
...
@@ -25,12 +25,4 @@ class SlackSlashCommandsService < ChatSlashCommandsService
def
format
(
text
)
Slack
::
Notifier
::
LinkFormatter
.
format
(
text
)
if
text
end
def
self
.
supported_events
%w()
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
end
app/models/project_services/teamcity_service.rb
浏览文件 @
4b6e583c
...
...
@@ -47,14 +47,6 @@ class TeamcityService < CiService
'teamcity'
end
def
self
.
supported_events
%w(push)
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
fields
[
{
type:
'text'
,
name:
'teamcity_url'
,
...
...
app/models/service.rb
浏览文件 @
4b6e583c
...
...
@@ -79,6 +79,10 @@ class Service < ActiveRecord::Base
self
.
class
.
to_param
end
def
self
.
to_param
raise
NotImplementedError
end
def
fields
# implement inside child
[]
...
...
@@ -93,10 +97,13 @@ class Service < ActiveRecord::Base
end
def
event_names
# implement inside child
self
.
class
.
event_names
end
def
self
.
event_names
self
.
supported_events
.
map
{
|
event
|
"
#{
event
}
_events"
}
end
def
event_field
(
event
)
nil
end
...
...
@@ -109,6 +116,10 @@ class Service < ActiveRecord::Base
self
.
class
.
supported_events
end
def
self
.
supported_events
%w(push tag_push issue confidential_issue merge_request wiki_page)
end
def
execute
(
data
)
# implement inside child
end
...
...
lib/api/services.rb
浏览文件 @
4b6e583c
...
...
@@ -600,12 +600,11 @@ module API
service_classes
.
each
do
|
service
|
event_names
=
service
.
try
(
:event_names
)
||
[]
event_names
.
each
do
|
event_name
|
services
[
service
.
to_param
.
gsub
(
"_"
,
"-"
)]
<<
{
services
[
service
.
to_param
.
tr
(
"_"
,
"-"
)]
<<
{
required:
false
,
name:
event_name
.
to_sym
,
type:
String
,
desc:
ServicesHelper
.
instance_method
(
:service_event_description
)
.
bind
(
self
).
call
(
event_name
)
desc:
ServicesHelper
.
service_event_description
(
event_name
)
}
end
end
...
...
spec/controllers/projects/services_controller_spec.rb
浏览文件 @
4b6e583c
...
...
@@ -54,6 +54,7 @@ describe Projects::ServicesController do
context
'on successful update'
do
it
'sets the flash'
do
expect
(
service
).
to
receive
(
:to_param
).
and_return
(
'hipchat'
)
expect
(
service
).
to
receive
(
:event_names
).
and_return
(
HipchatService
.
event_names
)
put
:update
,
namespace_id:
project
.
namespace
.
id
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录