Class: AgileNotifier::Jenkins::Job::Build
Instance Attribute Summary
#number, #result, #revision, #url
Instance Method Summary
collapse
Methods included from Servable
#is_available?
#initialize
Instance Method Details
#failed? ⇒ Boolean
105
106
107
108
109
110
111
|
# File 'lib/agile_notifier/jenkins.rb', line 105
def failed?
if @result == 'FAILURE' && !is_triggered_manually?
return true
else
return false
end
end
|
#fixed? ⇒ Boolean
121
122
123
124
125
126
127
128
|
# File 'lib/agile_notifier/jenkins.rb', line 121
def fixed?
previous_result = get_previous_result
if !previous_result.nil? && previous_result != 'SUCCESS'
return passed?
else
return nil
end
end
|
#get_branch ⇒ Object
62
63
64
65
|
# File 'lib/agile_notifier/jenkins.rb', line 62
def get_branch
revision = Jenkins.get_value('lastBuiltRevision', @url)
revision.nil? ? nil : revision['branch'][0]['name']
end
|
#get_previous_build ⇒ Object
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
# File 'lib/agile_notifier/jenkins.rb', line 67
def get_previous_build
previous_number = @number - 1
while previous_number > 0
previous_url = @url.gsub(/\/#{@number}\//, "/#{previous_number}/")
if is_available?(previous_url)
previous_build = Build.new(previous_number, previous_url)
previous_branch = previous_build.get_branch
if (get_branch == previous_branch)
return previous_build
end
end
previous_number -= 1
end
return nil
end
|
#get_previous_result ⇒ Object
83
84
85
86
87
88
89
90
|
# File 'lib/agile_notifier/jenkins.rb', line 83
def get_previous_result
previous_build = get_previous_build
if previous_build
return previous_build.get_result
else
return nil
end
end
|
#get_result ⇒ Object
52
53
54
55
|
# File 'lib/agile_notifier/jenkins.rb', line 52
def get_result
result = Jenkins.get_value('result', @url)
result.nil? ? nil : result
end
|
#get_revision ⇒ Object
57
58
59
60
|
# File 'lib/agile_notifier/jenkins.rb', line 57
def get_revision
revision = Jenkins.get_value('lastBuiltRevision', @url)
revision.nil? ? nil : revision['SHA1']
end
|
#is_building? ⇒ Boolean
48
49
50
|
# File 'lib/agile_notifier/jenkins.rb', line 48
def is_building?
Jenkins.get_value('building', @url)
end
|
#is_triggered_manually? ⇒ Boolean
92
93
94
95
96
97
98
99
|
# File 'lib/agile_notifier/jenkins.rb', line 92
def is_triggered_manually?
previous_build = get_previous_build
if previous_build && @revision == previous_build.get_revision
return true
else
return false
end
end
|
#passed? ⇒ Boolean
101
102
103
|
# File 'lib/agile_notifier/jenkins.rb', line 101
def passed?
@result == 'SUCCESS'
end
|
#unstable? ⇒ Boolean
113
114
115
116
117
118
119
|
# File 'lib/agile_notifier/jenkins.rb', line 113
def unstable?
if @result == 'UNSTABLE' && !is_triggered_manually?
return true
else
return false
end
end
|