rubyjobbuilderdsl 0.0.6 → 0.0.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -13
- data/CONTRIBUTING.md +5 -0
- data/{Readme.md → README.md} +0 -0
- data/docs/index.md +12 -12
- data/docs/pipeline.md +25 -25
- data/docs/postbuild.md +18 -0
- data/lib/rubyjobbuilderdsl/builder.rb +80 -80
- data/lib/rubyjobbuilderdsl/pipeline.rb +18 -19
- data/lib/rubyjobbuilderdsl/postbuild.rb +9 -1
- data/lib/rubyjobbuilderdsl/postbuild/hipchat_notifications.rb +68 -0
- data/lib/rubyjobbuilderdsl/postbuild/slack.rb +76 -77
- data/lib/rubyjobbuilderdsl/xml_generator.rb +940 -923
- data/rubyjobbuilderdsl-0.0.7.gem +0 -0
- data/rubyjobbuilderdsl.gemspec +13 -13
- data/sample/sample_slack_postbuild.rb +23 -23
- data/test/test_hipchat_notifications.rb +39 -0
- data/test/test_timeout.rb +1 -1
- metadata +14 -13
- data/sample/hello_mars.xml +0 -18
- data/sample/hello_world-post.xml +0 -40
- data/sample/test.xml +0 -21
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
MzY1ZjdlMDJjNDU3MjY1Nzc5MzI3OTVkMDEzY2Q5Y2NhYjE1NDc2OA==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 5e8710ec979ceb65846d8448c55b6d79dc232b94
|
4
|
+
data.tar.gz: 3d5fb68fbbf98552a65d5a76fc96cbb112e99e77
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
MWM2NjQ5OGE3YWU2MWJiZWI5ZmQxZjhjYjBlZTI2NjIzNTJiZTIwN2ZlODUx
|
11
|
-
NWFjNWQxYmQ5ZDVmYmNiODYwZmU0MWY5YzY3ZDlhNGNlYmJiZWE=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
N2NkNzcwZDg4OGMyNDI0MmNhZmU3OTA5MTdjY2M3ZDdlMDg5NjBmYWYzZDQ0
|
14
|
-
NzE0MTU4NjdmZGRlNzc2ZTY3NGIzMjczZDg3Y2ExMTFiNDQ5NjcyNWIwZWJk
|
15
|
-
N2UzYzJlODIzODJmZmM5Yzg5NGE0OTM4ZjM0YzNmMmJlMTk1NmI=
|
6
|
+
metadata.gz: 0676550cc2cc2c32651796f10e3ab232a50eefbf2595b3b3f85313193893ff756e40073be7594fb922fe0bb3ee5afd1d763d9072ba948d05afc214a10f0d5e72
|
7
|
+
data.tar.gz: 27635431522c0c0a6d193f3c37b90d43cfdd1397caa6fef1af8b94ff411522456cca3aabecee5cc633785a292d5f1bc534ae91ff4dfa0ea3798008cee3673a89
|
data/CONTRIBUTING.md
ADDED
data/{Readme.md → README.md}
RENAMED
File without changes
|
data/docs/index.md
CHANGED
@@ -1,12 +1,12 @@
|
|
1
|
-
## Ruby Job Builder DSL
|
2
|
-
|
3
|
-
* [Overview](overview.md)
|
4
|
-
* [Common](common.md)
|
5
|
-
* [FreeStyle](freestyle.md)
|
6
|
-
* [Flow](flow.md)
|
7
|
-
* [Multi](multi.md)
|
8
|
-
* [Pipeline](pipeline.md)
|
9
|
-
* [View](view.md)
|
10
|
-
* [Gerrit](gerrit.md)
|
11
|
-
* [Git](git.md)
|
12
|
-
* [Postbuild](postbuild.md)
|
1
|
+
## Ruby Job Builder DSL
|
2
|
+
|
3
|
+
* [Overview](overview.md)
|
4
|
+
* [Common](common.md)
|
5
|
+
* [FreeStyle](freestyle.md)
|
6
|
+
* [Flow](flow.md)
|
7
|
+
* [Multi](multi.md)
|
8
|
+
* [Pipeline](pipeline.md)
|
9
|
+
* [View](view.md)
|
10
|
+
* [Gerrit](gerrit.md)
|
11
|
+
* [Git](git.md)
|
12
|
+
* [Postbuild](postbuild.md)
|
data/docs/pipeline.md
CHANGED
@@ -1,26 +1,26 @@
|
|
1
|
-
## Create pipeline style project
|
2
|
-
|
3
|
-
Description: Create a pipeline job which can run a specified groovy script at a particular time
|
4
|
-
|
5
|
-
Example
|
6
|
-
|
7
|
-
builder.pipeline 'Schedule-sample-pipeline' do
|
8
|
-
schedule '0 15 * * *'
|
9
|
-
groovy <<EOS
|
10
|
-
|
11
|
-
def date = new Date()
|
12
|
-
def release = date.format('yyyy.MM.dd')
|
13
|
-
def releaseManifest = release + ".0400"
|
14
|
-
println releaseManifest
|
15
|
-
|
16
|
-
build job: 'CreateRelease-gen3',
|
17
|
-
parameters: [
|
18
|
-
string(name: 'OctopusServer', value: 'https://OctopusServerSomewhere.com'),
|
19
|
-
string(name: 'OctopusKey', value: 'An API Key'),
|
20
|
-
string(name: 'DeploySpecificPackages', value: 'false'),
|
21
|
-
string(name: 'ReleaseNumber', value: '63'),
|
22
|
-
string(name: 'ReleaseManifest', value: releaseManifest),
|
23
|
-
string(name: 'Channel', value: 'Release Channel')]
|
24
|
-
EOS
|
25
|
-
|
1
|
+
## Create pipeline style project
|
2
|
+
|
3
|
+
Description: Create a pipeline job which can run a specified groovy script at a particular time
|
4
|
+
|
5
|
+
Example
|
6
|
+
|
7
|
+
builder.pipeline 'Schedule-sample-pipeline' do
|
8
|
+
schedule '0 15 * * *'
|
9
|
+
groovy <<EOS
|
10
|
+
|
11
|
+
def date = new Date()
|
12
|
+
def release = date.format('yyyy.MM.dd')
|
13
|
+
def releaseManifest = release + ".0400"
|
14
|
+
println releaseManifest
|
15
|
+
|
16
|
+
build job: 'CreateRelease-gen3',
|
17
|
+
parameters: [
|
18
|
+
string(name: 'OctopusServer', value: 'https://OctopusServerSomewhere.com'),
|
19
|
+
string(name: 'OctopusKey', value: 'An API Key'),
|
20
|
+
string(name: 'DeploySpecificPackages', value: 'false'),
|
21
|
+
string(name: 'ReleaseNumber', value: '63'),
|
22
|
+
string(name: 'ReleaseManifest', value: releaseManifest),
|
23
|
+
string(name: 'Channel', value: 'Release Channel')]
|
24
|
+
EOS
|
25
|
+
|
26
26
|
end
|
data/docs/postbuild.md
CHANGED
@@ -263,4 +263,22 @@ Example
|
|
263
263
|
end
|
264
264
|
end
|
265
265
|
|
266
|
+
**hipchat**
|
267
|
+
|
268
|
+
Description: Send a hipchat notification
|
269
|
+
|
270
|
+
Multiple: Override
|
271
|
+
|
272
|
+
Example
|
273
|
+
|
274
|
+
builder.freestyle 'hello_world-build' do
|
275
|
+
postbuild do
|
276
|
+
hipchat do
|
277
|
+
token 'apitoken'
|
278
|
+
rooms 'room1, room1'
|
279
|
+
notify_failure true
|
280
|
+
end
|
281
|
+
end
|
282
|
+
end
|
283
|
+
|
266
284
|
|
@@ -1,80 +1,80 @@
|
|
1
|
-
require_relative 'freestyle'
|
2
|
-
require_relative 'flow'
|
3
|
-
require_relative 'pipeline'
|
4
|
-
require_relative 'multijob'
|
5
|
-
require_relative 'view'
|
6
|
-
require_relative 'xml_generator'
|
7
|
-
|
8
|
-
module JenkinsJob
|
9
|
-
# dsl methods for job builder
|
10
|
-
class Builder
|
11
|
-
attr_reader :jobs, :views
|
12
|
-
|
13
|
-
def initialize(&block)
|
14
|
-
@default_setting = []
|
15
|
-
@default_setting << block if block_given?
|
16
|
-
@jobs = {}
|
17
|
-
@views = {}
|
18
|
-
end
|
19
|
-
|
20
|
-
def add_extension(&block)
|
21
|
-
@default_setting << block if block_given?
|
22
|
-
end
|
23
|
-
|
24
|
-
def freestyle(name, &block)
|
25
|
-
@jobs[name] = FreeStyle.new(name, self)
|
26
|
-
|
27
|
-
@default_setting.each do |extension|
|
28
|
-
@jobs[name].instance_eval(&extension)
|
29
|
-
end
|
30
|
-
|
31
|
-
@jobs[name].instance_eval(&block)
|
32
|
-
end
|
33
|
-
|
34
|
-
def flow(name, &block)
|
35
|
-
@jobs[name] = Flow.new(name, self)
|
36
|
-
|
37
|
-
@default_setting.each do |extension|
|
38
|
-
@jobs[name].instance_eval(&extension)
|
39
|
-
end
|
40
|
-
|
41
|
-
@jobs[name].instance_eval(&block)
|
42
|
-
end
|
43
|
-
|
44
|
-
def pipeline(name, &block)
|
45
|
-
@jobs[name] = Pipeline.new(name, self)
|
46
|
-
|
47
|
-
@default_setting.each do |extension|
|
48
|
-
@jobs[name].instance_eval(&extension)
|
49
|
-
end
|
50
|
-
|
51
|
-
@jobs[name].instance_eval(&block)
|
52
|
-
end
|
53
|
-
|
54
|
-
def multi(name, &block)
|
55
|
-
@jobs[name] = MultiJob.new(name, self)
|
56
|
-
|
57
|
-
@default_setting.each do |extension|
|
58
|
-
@jobs[name].instance_eval(&extension)
|
59
|
-
end
|
60
|
-
|
61
|
-
@jobs[name].instance_eval(&block)
|
62
|
-
end
|
63
|
-
|
64
|
-
def view(name, &block)
|
65
|
-
@views[name] = View.new(name, self)
|
66
|
-
@views[name].instance_eval(&block)
|
67
|
-
end
|
68
|
-
|
69
|
-
def generate_xml
|
70
|
-
return unless block_given?
|
71
|
-
generator = XmlGenerator.new
|
72
|
-
@jobs.each do |name, job|
|
73
|
-
yield name, generator.generate(job), :job
|
74
|
-
end
|
75
|
-
@views.each do |name, job|
|
76
|
-
yield name, generator.generate(job), :view
|
77
|
-
end
|
78
|
-
end
|
79
|
-
end
|
80
|
-
end
|
1
|
+
require_relative 'freestyle'
|
2
|
+
require_relative 'flow'
|
3
|
+
require_relative 'pipeline'
|
4
|
+
require_relative 'multijob'
|
5
|
+
require_relative 'view'
|
6
|
+
require_relative 'xml_generator'
|
7
|
+
|
8
|
+
module JenkinsJob
|
9
|
+
# dsl methods for job builder
|
10
|
+
class Builder
|
11
|
+
attr_reader :jobs, :views
|
12
|
+
|
13
|
+
def initialize(&block)
|
14
|
+
@default_setting = []
|
15
|
+
@default_setting << block if block_given?
|
16
|
+
@jobs = {}
|
17
|
+
@views = {}
|
18
|
+
end
|
19
|
+
|
20
|
+
def add_extension(&block)
|
21
|
+
@default_setting << block if block_given?
|
22
|
+
end
|
23
|
+
|
24
|
+
def freestyle(name, &block)
|
25
|
+
@jobs[name] = FreeStyle.new(name, self)
|
26
|
+
|
27
|
+
@default_setting.each do |extension|
|
28
|
+
@jobs[name].instance_eval(&extension)
|
29
|
+
end
|
30
|
+
|
31
|
+
@jobs[name].instance_eval(&block)
|
32
|
+
end
|
33
|
+
|
34
|
+
def flow(name, &block)
|
35
|
+
@jobs[name] = Flow.new(name, self)
|
36
|
+
|
37
|
+
@default_setting.each do |extension|
|
38
|
+
@jobs[name].instance_eval(&extension)
|
39
|
+
end
|
40
|
+
|
41
|
+
@jobs[name].instance_eval(&block)
|
42
|
+
end
|
43
|
+
|
44
|
+
def pipeline(name, &block)
|
45
|
+
@jobs[name] = Pipeline.new(name, self)
|
46
|
+
|
47
|
+
@default_setting.each do |extension|
|
48
|
+
@jobs[name].instance_eval(&extension)
|
49
|
+
end
|
50
|
+
|
51
|
+
@jobs[name].instance_eval(&block)
|
52
|
+
end
|
53
|
+
|
54
|
+
def multi(name, &block)
|
55
|
+
@jobs[name] = MultiJob.new(name, self)
|
56
|
+
|
57
|
+
@default_setting.each do |extension|
|
58
|
+
@jobs[name].instance_eval(&extension)
|
59
|
+
end
|
60
|
+
|
61
|
+
@jobs[name].instance_eval(&block)
|
62
|
+
end
|
63
|
+
|
64
|
+
def view(name, &block)
|
65
|
+
@views[name] = View.new(name, self)
|
66
|
+
@views[name].instance_eval(&block)
|
67
|
+
end
|
68
|
+
|
69
|
+
def generate_xml
|
70
|
+
return unless block_given?
|
71
|
+
generator = XmlGenerator.new
|
72
|
+
@jobs.each do |name, job|
|
73
|
+
yield name, generator.generate(job), :job
|
74
|
+
end
|
75
|
+
@views.each do |name, job|
|
76
|
+
yield name, generator.generate(job), :view
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
@@ -1,19 +1,18 @@
|
|
1
|
-
module JenkinsJob
|
2
|
-
class Pipeline < Common::Common
|
3
|
-
attr_reader :name, :groovy_
|
4
|
-
|
5
|
-
def initialize(name, builder)
|
6
|
-
super(builder)
|
7
|
-
@name = name
|
8
|
-
end
|
9
|
-
|
10
|
-
def groovy(value)
|
11
|
-
@groovy_ = value
|
12
|
-
end
|
13
|
-
|
14
|
-
def schedule(value)
|
15
|
-
@schedule_ = value
|
16
|
-
end
|
17
|
-
|
18
|
-
|
19
|
-
end
|
1
|
+
module JenkinsJob
|
2
|
+
class Pipeline < Common::Common
|
3
|
+
attr_reader :name, :groovy_, :schedule_
|
4
|
+
|
5
|
+
def initialize(name, builder)
|
6
|
+
super(builder)
|
7
|
+
@name = name
|
8
|
+
end
|
9
|
+
|
10
|
+
def groovy(value)
|
11
|
+
@groovy_ = value
|
12
|
+
end
|
13
|
+
|
14
|
+
def schedule(value)
|
15
|
+
@schedule_ = value
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -16,6 +16,7 @@ require_relative 'postbuild/trigger'
|
|
16
16
|
require_relative 'postbuild/groovy'
|
17
17
|
require_relative 'postbuild/cucumber_json_publisher'
|
18
18
|
require_relative 'postbuild/slack'
|
19
|
+
require_relative 'postbuild/hipchat_notifications'
|
19
20
|
require_relative 'buildstep/shell'
|
20
21
|
|
21
22
|
# dsl methods for job builder
|
@@ -117,7 +118,7 @@ module JenkinsJob
|
|
117
118
|
slack = PostbuildSlack.new
|
118
119
|
slack.instance_eval(&block) if block
|
119
120
|
@publishers_['slack'] = slack
|
120
|
-
end
|
121
|
+
end
|
121
122
|
|
122
123
|
def cucumber_json_publisher(&block)
|
123
124
|
cucumber = CucumberJsonPublisher.new
|
@@ -155,6 +156,13 @@ module JenkinsJob
|
|
155
156
|
publisher = ClaimPublisher.new
|
156
157
|
@publishers_['claim-publisher'] = publisher
|
157
158
|
end
|
159
|
+
|
160
|
+
def hipchat_notifications(&block)
|
161
|
+
notifier = HipchatNotifications.new
|
162
|
+
notifier.instance_eval(&block) if block
|
163
|
+
@publishers_['hipchat_notifications'] = notifier
|
164
|
+
end
|
165
|
+
alias_method :hipchat, :hipchat_notifications
|
158
166
|
end
|
159
167
|
end
|
160
168
|
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
module JenkinsJob
|
2
|
+
module Postbuild
|
3
|
+
class HipchatNotifications < BasicObject
|
4
|
+
attr_reader :token_, :room_, :notify_start_, :notify_success_,
|
5
|
+
:notify_aborted_, :notify_not_built_, :notify_unstable_,
|
6
|
+
:notify_failure_, :notify_back_to_normal_, :start_message_,
|
7
|
+
:complete_message_
|
8
|
+
|
9
|
+
def initialize
|
10
|
+
@token_ = ''
|
11
|
+
@room_ = ''
|
12
|
+
@notify_start_ = false
|
13
|
+
@notify_success_ = false
|
14
|
+
@notify_aborted_ = false
|
15
|
+
@notify_not_built_ = false
|
16
|
+
@notify_unstable_ = false
|
17
|
+
@notify_failure_ = false
|
18
|
+
@notify_back_to_normal_ = false
|
19
|
+
@start_message_ = ''
|
20
|
+
@complete_message_ = ''
|
21
|
+
end
|
22
|
+
|
23
|
+
def token(value = '')
|
24
|
+
@token_ = value
|
25
|
+
end
|
26
|
+
|
27
|
+
def room(value = '')
|
28
|
+
@room_ = value
|
29
|
+
end
|
30
|
+
|
31
|
+
def notify_start(value)
|
32
|
+
@notify_start_ = value
|
33
|
+
end
|
34
|
+
|
35
|
+
def notify_success(value)
|
36
|
+
@notify_success_ = value
|
37
|
+
end
|
38
|
+
|
39
|
+
def notify_aborted(value)
|
40
|
+
@notify_aborted_ = value
|
41
|
+
end
|
42
|
+
|
43
|
+
def notify_not_built(value)
|
44
|
+
@notify_not_built_ = value
|
45
|
+
end
|
46
|
+
|
47
|
+
def notify_unstable(value)
|
48
|
+
@notify_unstable_ = value
|
49
|
+
end
|
50
|
+
|
51
|
+
def notify_failure(value)
|
52
|
+
@notify_failure_ = value
|
53
|
+
end
|
54
|
+
|
55
|
+
def notify_back_to_normal(value)
|
56
|
+
@notify_back_to_normal_ = value
|
57
|
+
end
|
58
|
+
|
59
|
+
def start_message(value)
|
60
|
+
@start_message_ = value
|
61
|
+
end
|
62
|
+
|
63
|
+
def complete_message(value)
|
64
|
+
@complete_message_ = value
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
@@ -1,77 +1,76 @@
|
|
1
|
-
module JenkinsJob
|
2
|
-
module Postbuild
|
3
|
-
class PostbuildSlack < BasicObject
|
4
|
-
attr_reader :base_url_, :auth_token_, :start_notification_, :notify_success_, :notify_aborted_,
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
def initialize
|
10
|
-
@start_notification_ = false
|
11
|
-
@notify_success_ = false
|
12
|
-
@notify_aborted_ = false
|
13
|
-
@notify_not_built_ = false
|
14
|
-
@notify_unstable_ = false
|
15
|
-
@notify_regression_ = false
|
16
|
-
@notify_failure_ = false
|
17
|
-
@notify_back_to_normal_ = false
|
18
|
-
@notify_repeated_failure_ = false
|
19
|
-
@include_test_summary_ = false
|
20
|
-
@include_failed_tests_ = false
|
21
|
-
end
|
22
|
-
|
23
|
-
def base_url(value)
|
24
|
-
@base_url_ = value
|
25
|
-
end
|
26
|
-
|
27
|
-
def auth_token(value)
|
28
|
-
@auth_token_ = value
|
29
|
-
end
|
30
|
-
|
31
|
-
def start_notification(value = false)
|
32
|
-
@start_notification_ = value
|
33
|
-
end
|
34
|
-
|
35
|
-
def notify_success(value = false)
|
36
|
-
@notify_success_ = value
|
37
|
-
end
|
38
|
-
|
39
|
-
def notify_aborted(value = false)
|
40
|
-
@notify_aborted_ = value
|
41
|
-
end
|
42
|
-
|
43
|
-
def notify_not_built(value = false)
|
44
|
-
@notify_not_built_ = value
|
45
|
-
end
|
46
|
-
|
47
|
-
def notify_unstable(value = false)
|
48
|
-
@notify_unstable_ = value
|
49
|
-
end
|
50
|
-
|
51
|
-
def notify_regression(value = false)
|
52
|
-
@notify_regression_ = value
|
53
|
-
end
|
54
|
-
|
55
|
-
def notify_failure(value = false)
|
56
|
-
@notify_failure_ = value
|
57
|
-
end
|
58
|
-
|
59
|
-
def notify_back_to_normal(value = false)
|
60
|
-
@notify_back_to_normal_ = value
|
61
|
-
end
|
62
|
-
|
63
|
-
def notify_repeated_failure(value = false)
|
64
|
-
@notify_repeated_failure_ = value
|
65
|
-
end
|
66
|
-
|
67
|
-
def include_test_summary(value = false)
|
68
|
-
@include_test_summary_ = value
|
69
|
-
end
|
70
|
-
|
71
|
-
def include_failed_tests(value = false)
|
72
|
-
@include_failed_tests_ = value
|
73
|
-
end
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
end
|
1
|
+
module JenkinsJob
|
2
|
+
module Postbuild
|
3
|
+
class PostbuildSlack < BasicObject
|
4
|
+
attr_reader :base_url_, :auth_token_, :start_notification_, :notify_success_, :notify_aborted_,
|
5
|
+
:notify_not_built_, :notify_unstable_, :notify_regression_, :notify_failure_,
|
6
|
+
:notify_back_to_normal_, :notify_repeated_failure_, :include_test_summary_,
|
7
|
+
:include_failed_tests_
|
8
|
+
|
9
|
+
def initialize
|
10
|
+
@start_notification_ = false
|
11
|
+
@notify_success_ = false
|
12
|
+
@notify_aborted_ = false
|
13
|
+
@notify_not_built_ = false
|
14
|
+
@notify_unstable_ = false
|
15
|
+
@notify_regression_ = false
|
16
|
+
@notify_failure_ = false
|
17
|
+
@notify_back_to_normal_ = false
|
18
|
+
@notify_repeated_failure_ = false
|
19
|
+
@include_test_summary_ = false
|
20
|
+
@include_failed_tests_ = false
|
21
|
+
end
|
22
|
+
|
23
|
+
def base_url(value)
|
24
|
+
@base_url_ = value
|
25
|
+
end
|
26
|
+
|
27
|
+
def auth_token(value)
|
28
|
+
@auth_token_ = value
|
29
|
+
end
|
30
|
+
|
31
|
+
def start_notification(value = false)
|
32
|
+
@start_notification_ = value
|
33
|
+
end
|
34
|
+
|
35
|
+
def notify_success(value = false)
|
36
|
+
@notify_success_ = value
|
37
|
+
end
|
38
|
+
|
39
|
+
def notify_aborted(value = false)
|
40
|
+
@notify_aborted_ = value
|
41
|
+
end
|
42
|
+
|
43
|
+
def notify_not_built(value = false)
|
44
|
+
@notify_not_built_ = value
|
45
|
+
end
|
46
|
+
|
47
|
+
def notify_unstable(value = false)
|
48
|
+
@notify_unstable_ = value
|
49
|
+
end
|
50
|
+
|
51
|
+
def notify_regression(value = false)
|
52
|
+
@notify_regression_ = value
|
53
|
+
end
|
54
|
+
|
55
|
+
def notify_failure(value = false)
|
56
|
+
@notify_failure_ = value
|
57
|
+
end
|
58
|
+
|
59
|
+
def notify_back_to_normal(value = false)
|
60
|
+
@notify_back_to_normal_ = value
|
61
|
+
end
|
62
|
+
|
63
|
+
def notify_repeated_failure(value = false)
|
64
|
+
@notify_repeated_failure_ = value
|
65
|
+
end
|
66
|
+
|
67
|
+
def include_test_summary(value = false)
|
68
|
+
@include_test_summary_ = value
|
69
|
+
end
|
70
|
+
|
71
|
+
def include_failed_tests(value = false)
|
72
|
+
@include_failed_tests_ = value
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|