blob: c5306de830bf5d98e9e0fc264cd430f4c7637a61 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
# frozen_string_literal: true
module Gitlab
module Ci
module Status
# Base abstract class for core status
#
class Core
include Gitlab::Routing
include Gitlab::Allowable
attr_reader :subject, :user
delegate :cache_key, to: :subject
def initialize(subject, user)
@subject = subject
@user = user
end
def id
"#{group}-#{subject.id}"
end
def icon
raise NotImplementedError
end
def favicon
raise NotImplementedError
end
def illustration
raise NotImplementedError
end
def label
raise NotImplementedError
end
def name
self.class.name.demodulize.underscore.upcase
end
def group
self.class.name.demodulize.underscore
end
def has_details?
false
end
def details_path
raise NotImplementedError
end
def has_action?
false
end
def action_icon
raise NotImplementedError
end
def action_path
raise NotImplementedError
end
def action_method
raise NotImplementedError
end
def action_title
raise NotImplementedError
end
def action_button_title
raise NotImplementedError
end
# Hint that appears on all the pipeline graph tooltips and builds on the right sidebar in Job detail view
def status_tooltip
label
end
# Hint that appears on the build badges
def badge_tooltip
subject.status
end
end
end
end
end
|