rubyjobbuilderdsl 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +13 -5
- data/Gemfile +6 -6
- data/Gemfile.lock +41 -41
- data/LICENSE +18 -18
- data/Rakefile +12 -12
- data/docs/common.md +313 -313
- data/docs/flow.md +17 -17
- data/docs/freestyle.md +100 -100
- data/docs/gerrit.md +70 -70
- data/docs/git.md +88 -88
- data/docs/multi.md +26 -26
- data/docs/overview.md +74 -74
- data/docs/postbuild.md +266 -266
- data/docs/view.md +13 -13
- data/lib/rubyjobbuilderdsl.rb +2 -2
- data/lib/rubyjobbuilderdsl/buildstep/ant.rb +29 -29
- data/lib/rubyjobbuilderdsl/buildstep/copyartifact.rb +23 -23
- data/lib/rubyjobbuilderdsl/buildstep/inject_env.rb +18 -18
- data/lib/rubyjobbuilderdsl/buildstep/phase.rb +19 -19
- data/lib/rubyjobbuilderdsl/buildstep/phase_job.rb +26 -26
- data/lib/rubyjobbuilderdsl/buildstep/shell.rb +24 -24
- data/lib/rubyjobbuilderdsl/buildstep/xvfb.rb +46 -46
- data/lib/rubyjobbuilderdsl/common.rb +140 -140
- data/lib/rubyjobbuilderdsl/common/artifactory.rb +33 -33
- data/lib/rubyjobbuilderdsl/common/blocking_job.rb +11 -11
- data/lib/rubyjobbuilderdsl/common/build_timeout.rb +23 -23
- data/lib/rubyjobbuilderdsl/common/gerrit.rb +53 -53
- data/lib/rubyjobbuilderdsl/common/git.rb +76 -76
- data/lib/rubyjobbuilderdsl/common/logrotate.rb +24 -24
- data/lib/rubyjobbuilderdsl/common/parameter.rb +22 -22
- data/lib/rubyjobbuilderdsl/common/password.rb +12 -12
- data/lib/rubyjobbuilderdsl/common/pollscm.rb +10 -10
- data/lib/rubyjobbuilderdsl/common/scms.rb +18 -18
- data/lib/rubyjobbuilderdsl/common/throttle.rb +24 -24
- data/lib/rubyjobbuilderdsl/common/timed.rb +10 -10
- data/lib/rubyjobbuilderdsl/common/timestamps.rb +6 -6
- data/lib/rubyjobbuilderdsl/deployer.rb +95 -95
- data/lib/rubyjobbuilderdsl/flow.rb +14 -14
- data/lib/rubyjobbuilderdsl/freestyle.rb +65 -65
- data/lib/rubyjobbuilderdsl/jenkins_client.rb +203 -203
- data/lib/rubyjobbuilderdsl/multijob.rb +24 -24
- data/lib/rubyjobbuilderdsl/postbuild.rb +160 -160
- data/lib/rubyjobbuilderdsl/postbuild/archive.rb +23 -23
- data/lib/rubyjobbuilderdsl/postbuild/chucknorris_publisher.rb +6 -6
- data/lib/rubyjobbuilderdsl/postbuild/claim_publisher.rb +6 -6
- data/lib/rubyjobbuilderdsl/postbuild/cloverphp_publisher.rb +36 -36
- data/lib/rubyjobbuilderdsl/postbuild/cucumber_json_publisher.rb +20 -20
- data/lib/rubyjobbuilderdsl/postbuild/email_publisher.rb +23 -23
- data/lib/rubyjobbuilderdsl/postbuild/game_publisher.rb +6 -6
- data/lib/rubyjobbuilderdsl/postbuild/groovy.rb +10 -10
- data/lib/rubyjobbuilderdsl/postbuild/html_publisher.rb +27 -27
- data/lib/rubyjobbuilderdsl/postbuild/javadoc_publisher.rb +19 -19
- data/lib/rubyjobbuilderdsl/postbuild/logparser.rb +21 -21
- data/lib/rubyjobbuilderdsl/postbuild/nunit_publisher.rb +21 -21
- data/lib/rubyjobbuilderdsl/postbuild/pmd_publisher.rb +19 -19
- data/lib/rubyjobbuilderdsl/postbuild/script.rb +14 -14
- data/lib/rubyjobbuilderdsl/postbuild/tap_publisher.rb +44 -44
- data/lib/rubyjobbuilderdsl/postbuild/trigger.rb +38 -38
- data/lib/rubyjobbuilderdsl/postbuild/xunit_publisher.rb +35 -35
- data/lib/rubyjobbuilderdsl/view.rb +14 -14
- data/lib/rubyjobbuilderdsl/xml_generator.rb +1 -1
- data/rubyjobbuilderdsl.gemspec +2 -2
- data/rubyjobbuilderdsl.sublime-project +14 -14
- data/run_tests.sh +7 -7
- data/sample/hello_mars.rb +27 -27
- data/sample/hello_mars.xml +18 -0
- data/sample/hello_world-post.xml +40 -0
- data/sample/local.ini +4 -4
- data/sample/test.xml +21 -0
- data/test/test_ant.rb +38 -38
- data/test/test_archive.rb +24 -24
- data/test/test_artifactory.rb +26 -26
- data/test/test_blocking_job.rb +18 -18
- data/test/test_chucknorris_publisher.rb +17 -17
- data/test/test_claim_publisher.rb +17 -17
- data/test/test_cloverphp.rb +33 -33
- data/test/test_concurrent.rb +44 -44
- data/test/test_copyartifact.rb +45 -45
- data/test/test_cucumber_json_publisher.rb +30 -30
- data/test/test_default_setting.rb +29 -29
- data/test/test_email_publisher.rb +44 -44
- data/test/test_flow.rb +19 -19
- data/test/test_freestyle.rb +52 -52
- data/test/test_game_publisher.rb +17 -17
- data/test/test_gerrit.rb +117 -117
- data/test/test_git.rb +80 -80
- data/test/test_html_publisher.rb +57 -57
- data/test/test_inject.rb +23 -23
- data/test/test_javadoc.rb +22 -22
- data/test/test_logparser.rb +24 -24
- data/test/test_logrotate.rb +22 -22
- data/test/test_multijob.rb +50 -50
- data/test/test_nunit_publisher.rb +20 -20
- data/test/test_parameter.rb +44 -44
- data/test/test_password.rb +17 -17
- data/test/test_pmd.rb +22 -22
- data/test/test_pollscm.rb +15 -15
- data/test/test_postbuild_groovy.rb +21 -21
- data/test/test_postbuild_script.rb +24 -24
- data/test/test_postbuild_trigger.rb +170 -170
- data/test/test_scms.rb +31 -31
- data/test/test_tap_publisher.rb +25 -25
- data/test/test_timed.rb +15 -15
- data/test/test_timeout.rb +20 -20
- data/test/test_timestamps.rb +14 -14
- data/test/test_xml_generator.rb +28 -28
- data/test/test_xunit_publisher.rb +22 -22
- data/test/test_xvfb.rb +35 -35
- metadata +11 -10
- data/rubyjobbuilderdsl-0.0.3.gem +0 -0
- data/sample/Schedule-sample-pipeline.xml +0 -32
data/test/test_scms.rb
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
require_relative './test_xml_generator'
|
|
2
|
-
|
|
3
|
-
class TestXmlScms < Test::Unit::TestCase
|
|
4
|
-
def test_git
|
|
5
|
-
builder = JenkinsJob::Builder.new
|
|
6
|
-
|
|
7
|
-
builder.freestyle 'foo' do
|
|
8
|
-
scms do
|
|
9
|
-
git do
|
|
10
|
-
url 'ssh://bar@gerrit.mycompany.com:29418/a'
|
|
11
|
-
basedir 'a'
|
|
12
|
-
branches '*/master'
|
|
13
|
-
clean true
|
|
14
|
-
end
|
|
15
|
-
git do
|
|
16
|
-
url 'ssh://bar@gerrit.mycompany.com:29418/b'
|
|
17
|
-
basedir 'b'
|
|
18
|
-
branches '*/master'
|
|
19
|
-
clean true
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
actual = builder.config_as_xml_node('foo')
|
|
25
|
-
|
|
26
|
-
expected_class = 'org.jenkinsci.plugins.multiplescms.MultiSCM'
|
|
27
|
-
expected_scm = 'scm'
|
|
28
|
-
scm_nodes = "./project/scm[contains(@class,'#{expected_class}') and @plugin='multiple-scms@0.3']/scms/#{expected_scm}"
|
|
29
|
-
assert_equal 2, actual.xpath("count(#{scm_nodes})").to_i
|
|
30
|
-
end
|
|
31
|
-
end
|
|
1
|
+
require_relative './test_xml_generator'
|
|
2
|
+
|
|
3
|
+
class TestXmlScms < Test::Unit::TestCase
|
|
4
|
+
def test_git
|
|
5
|
+
builder = JenkinsJob::Builder.new
|
|
6
|
+
|
|
7
|
+
builder.freestyle 'foo' do
|
|
8
|
+
scms do
|
|
9
|
+
git do
|
|
10
|
+
url 'ssh://bar@gerrit.mycompany.com:29418/a'
|
|
11
|
+
basedir 'a'
|
|
12
|
+
branches '*/master'
|
|
13
|
+
clean true
|
|
14
|
+
end
|
|
15
|
+
git do
|
|
16
|
+
url 'ssh://bar@gerrit.mycompany.com:29418/b'
|
|
17
|
+
basedir 'b'
|
|
18
|
+
branches '*/master'
|
|
19
|
+
clean true
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
actual = builder.config_as_xml_node('foo')
|
|
25
|
+
|
|
26
|
+
expected_class = 'org.jenkinsci.plugins.multiplescms.MultiSCM'
|
|
27
|
+
expected_scm = 'scm'
|
|
28
|
+
scm_nodes = "./project/scm[contains(@class,'#{expected_class}') and @plugin='multiple-scms@0.3']/scms/#{expected_scm}"
|
|
29
|
+
assert_equal 2, actual.xpath("count(#{scm_nodes})").to_i
|
|
30
|
+
end
|
|
31
|
+
end
|
data/test/test_tap_publisher.rb
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
require_relative './test_xml_generator'
|
|
2
|
-
|
|
3
|
-
class TestXmlXTapPublisher < Test::Unit::TestCase
|
|
4
|
-
def test_postbuild_tap_publisher
|
|
5
|
-
builder = JenkinsJob::Builder.new
|
|
6
|
-
|
|
7
|
-
builder.freestyle 'foo' do
|
|
8
|
-
postbuild do
|
|
9
|
-
publish_tap 'TestResultsInTapFormat.tap' do
|
|
10
|
-
verbose true
|
|
11
|
-
require_plan true
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
actual = builder.config_as_xml_node('foo')
|
|
17
|
-
|
|
18
|
-
{ 'testResults' => 'TestResultsInTapFormat.tap',
|
|
19
|
-
'verbose' => 'true',
|
|
20
|
-
'require_plan' => 'true'
|
|
21
|
-
}.each do |k, v|
|
|
22
|
-
assert v, actual.xpath("./project/publishers/org.tap4j.plugin.TapPublisher/#{k}").text
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
end
|
|
1
|
+
require_relative './test_xml_generator'
|
|
2
|
+
|
|
3
|
+
class TestXmlXTapPublisher < Test::Unit::TestCase
|
|
4
|
+
def test_postbuild_tap_publisher
|
|
5
|
+
builder = JenkinsJob::Builder.new
|
|
6
|
+
|
|
7
|
+
builder.freestyle 'foo' do
|
|
8
|
+
postbuild do
|
|
9
|
+
publish_tap 'TestResultsInTapFormat.tap' do
|
|
10
|
+
verbose true
|
|
11
|
+
require_plan true
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
actual = builder.config_as_xml_node('foo')
|
|
17
|
+
|
|
18
|
+
{ 'testResults' => 'TestResultsInTapFormat.tap',
|
|
19
|
+
'verbose' => 'true',
|
|
20
|
+
'require_plan' => 'true'
|
|
21
|
+
}.each do |k, v|
|
|
22
|
+
assert v, actual.xpath("./project/publishers/org.tap4j.plugin.TapPublisher/#{k}").text
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
data/test/test_timed.rb
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
require_relative './test_xml_generator'
|
|
2
|
-
|
|
3
|
-
class TestXmlTimed < Test::Unit::TestCase
|
|
4
|
-
def test_timed
|
|
5
|
-
builder = JenkinsJob::Builder.new
|
|
6
|
-
|
|
7
|
-
builder.freestyle 'foo' do
|
|
8
|
-
timed '*/5 * * * *'
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
actual = builder.config_as_xml_node('foo')
|
|
12
|
-
|
|
13
|
-
assert_equal '*/5 * * * *', actual.xpath('./project/triggers/hudson.triggers.TimerTrigger/spec').text
|
|
14
|
-
end
|
|
15
|
-
end
|
|
1
|
+
require_relative './test_xml_generator'
|
|
2
|
+
|
|
3
|
+
class TestXmlTimed < Test::Unit::TestCase
|
|
4
|
+
def test_timed
|
|
5
|
+
builder = JenkinsJob::Builder.new
|
|
6
|
+
|
|
7
|
+
builder.freestyle 'foo' do
|
|
8
|
+
timed '*/5 * * * *'
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
actual = builder.config_as_xml_node('foo')
|
|
12
|
+
|
|
13
|
+
assert_equal '*/5 * * * *', actual.xpath('./project/triggers/hudson.triggers.TimerTrigger/spec').text
|
|
14
|
+
end
|
|
15
|
+
end
|
data/test/test_timeout.rb
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
require_relative './test_xml_generator'
|
|
2
|
-
|
|
3
|
-
class TestXmlTimeout < Test::Unit::TestCase
|
|
4
|
-
def test_timeout
|
|
5
|
-
builder = JenkinsJob::Builder.new
|
|
6
|
-
|
|
7
|
-
builder.freestyle 'foo' do
|
|
8
|
-
timeout 'elastic' do
|
|
9
|
-
elastic_percentage 200
|
|
10
|
-
elastic_default_timeout 30
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
actual = builder.config_as_xml_node('foo')
|
|
15
|
-
{ 'timeoutMinutes' => '3', 'failBuild' => 'false', 'writingDescription' => 'false', 'timeoutPercentage' => '200',
|
|
16
|
-
'timeoutMinutesElasticDefault' => '30', 'timeoutType' => 'elastic' }.each do |k, v|
|
|
17
|
-
assert_equal v, actual.xpath("./project/buildWrappers/hudson.plugins.build__timeout.BuildTimeoutWrapper/#{k}").text, k
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
end
|
|
1
|
+
require_relative './test_xml_generator'
|
|
2
|
+
|
|
3
|
+
class TestXmlTimeout < Test::Unit::TestCase
|
|
4
|
+
def test_timeout
|
|
5
|
+
builder = JenkinsJob::Builder.new
|
|
6
|
+
|
|
7
|
+
builder.freestyle 'foo' do
|
|
8
|
+
timeout 'elastic' do
|
|
9
|
+
elastic_percentage 200
|
|
10
|
+
elastic_default_timeout 30
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
actual = builder.config_as_xml_node('foo')
|
|
15
|
+
{ 'timeoutMinutes' => '3', 'failBuild' => 'false', 'writingDescription' => 'false', 'timeoutPercentage' => '200',
|
|
16
|
+
'timeoutMinutesElasticDefault' => '30', 'timeoutType' => 'elastic' }.each do |k, v|
|
|
17
|
+
assert_equal v, actual.xpath("./project/buildWrappers/hudson.plugins.build__timeout.BuildTimeoutWrapper/#{k}").text, k
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
data/test/test_timestamps.rb
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
require_relative './test_xml_generator'
|
|
2
|
-
|
|
3
|
-
class TestXmlTimestamps < Test::Unit::TestCase
|
|
4
|
-
def test_timestamps
|
|
5
|
-
builder = JenkinsJob::Builder.new
|
|
6
|
-
|
|
7
|
-
builder.freestyle 'foo' do
|
|
8
|
-
timestamps
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
actual = builder.config_as_xml_node('foo')
|
|
12
|
-
assert actual.at('./project/buildWrappers/hudson.plugins.timestamper.TimestamperBuildWrapper')
|
|
13
|
-
end
|
|
14
|
-
end
|
|
1
|
+
require_relative './test_xml_generator'
|
|
2
|
+
|
|
3
|
+
class TestXmlTimestamps < Test::Unit::TestCase
|
|
4
|
+
def test_timestamps
|
|
5
|
+
builder = JenkinsJob::Builder.new
|
|
6
|
+
|
|
7
|
+
builder.freestyle 'foo' do
|
|
8
|
+
timestamps
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
actual = builder.config_as_xml_node('foo')
|
|
12
|
+
assert actual.at('./project/buildWrappers/hudson.plugins.timestamper.TimestamperBuildWrapper')
|
|
13
|
+
end
|
|
14
|
+
end
|
data/test/test_xml_generator.rb
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
require 'test/unit'
|
|
2
|
-
require 'nokogiri'
|
|
3
|
-
require 'fileutils'
|
|
4
|
-
|
|
5
|
-
require_relative '../lib/rubyjobbuilderdsl'
|
|
6
|
-
|
|
7
|
-
module JenkinsJob
|
|
8
|
-
class Builder
|
|
9
|
-
def tmpdir
|
|
10
|
-
::File.join(File.dirname(__FILE__), '..', 'tmp')
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
def debug
|
|
14
|
-
::File.exist?(tmpdir)
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
def config_as_xml_node(jobname)
|
|
18
|
-
generate_xml do |name, xml|
|
|
19
|
-
if name == jobname
|
|
20
|
-
File.open(::File.join(tmpdir, "#{name}.xml"), 'w+') do |f|
|
|
21
|
-
f.write(xml)
|
|
22
|
-
end if debug
|
|
23
|
-
return Nokogiri::XML.parse(xml)
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
1
|
+
require 'test/unit'
|
|
2
|
+
require 'nokogiri'
|
|
3
|
+
require 'fileutils'
|
|
4
|
+
|
|
5
|
+
require_relative '../lib/rubyjobbuilderdsl'
|
|
6
|
+
|
|
7
|
+
module JenkinsJob
|
|
8
|
+
class Builder
|
|
9
|
+
def tmpdir
|
|
10
|
+
::File.join(File.dirname(__FILE__), '..', 'tmp')
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def debug
|
|
14
|
+
::File.exist?(tmpdir)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def config_as_xml_node(jobname)
|
|
18
|
+
generate_xml do |name, xml|
|
|
19
|
+
if name == jobname
|
|
20
|
+
File.open(::File.join(tmpdir, "#{name}.xml"), 'w+') do |f|
|
|
21
|
+
f.write(xml)
|
|
22
|
+
end if debug
|
|
23
|
+
return Nokogiri::XML.parse(xml)
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
require_relative './test_xml_generator'
|
|
2
|
-
|
|
3
|
-
class TestXmlXUnitPublisher < Test::Unit::TestCase
|
|
4
|
-
def test_postbuild_xunit_publisher
|
|
5
|
-
builder = JenkinsJob::Builder.new
|
|
6
|
-
|
|
7
|
-
builder.freestyle 'foo' do
|
|
8
|
-
postbuild do
|
|
9
|
-
publish_xunit_report 'a\\b' do
|
|
10
|
-
failed_threshold :total_failed_tests => 0
|
|
11
|
-
unstable_threshold :total_skipped_tests => 0
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
actual = builder.config_as_xml_node('foo')
|
|
17
|
-
|
|
18
|
-
assert 'a\\b', actual.xpath('./project/publishers/xunit/types/NUnitJunitHudsonTestType/pattern').text
|
|
19
|
-
assert '0', actual.xpath('./project/publishers/xunit/thresholds/org.jenkinsci.plugins.xunit.threshold.FailedThreshold/failureThreshold').text
|
|
20
|
-
assert '0', actual.xpath('./project/publishers/xunit/thresholds/org.jenkinsci.plugins.xunit.threshold.SkippedThreshold/unstableThreshold').text
|
|
21
|
-
end
|
|
22
|
-
end
|
|
1
|
+
require_relative './test_xml_generator'
|
|
2
|
+
|
|
3
|
+
class TestXmlXUnitPublisher < Test::Unit::TestCase
|
|
4
|
+
def test_postbuild_xunit_publisher
|
|
5
|
+
builder = JenkinsJob::Builder.new
|
|
6
|
+
|
|
7
|
+
builder.freestyle 'foo' do
|
|
8
|
+
postbuild do
|
|
9
|
+
publish_xunit_report 'a\\b' do
|
|
10
|
+
failed_threshold :total_failed_tests => 0
|
|
11
|
+
unstable_threshold :total_skipped_tests => 0
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
actual = builder.config_as_xml_node('foo')
|
|
17
|
+
|
|
18
|
+
assert 'a\\b', actual.xpath('./project/publishers/xunit/types/NUnitJunitHudsonTestType/pattern').text
|
|
19
|
+
assert '0', actual.xpath('./project/publishers/xunit/thresholds/org.jenkinsci.plugins.xunit.threshold.FailedThreshold/failureThreshold').text
|
|
20
|
+
assert '0', actual.xpath('./project/publishers/xunit/thresholds/org.jenkinsci.plugins.xunit.threshold.SkippedThreshold/unstableThreshold').text
|
|
21
|
+
end
|
|
22
|
+
end
|
data/test/test_xvfb.rb
CHANGED
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
require_relative './test_xml_generator'
|
|
2
|
-
|
|
3
|
-
class TestXvfb < Test::Unit::TestCase
|
|
4
|
-
def test_enable_xvfb
|
|
5
|
-
install_name = 'Xvfb'
|
|
6
|
-
screen_resolution = '1024x768x24'
|
|
7
|
-
debug = 'false'
|
|
8
|
-
timeout = '0'
|
|
9
|
-
display_name_offset = '1'
|
|
10
|
-
shutdown_with_build = 'false'
|
|
11
|
-
auto_display_name = 'true'
|
|
12
|
-
parallel_build = 'false'
|
|
13
|
-
|
|
14
|
-
builder = JenkinsJob::Builder.new
|
|
15
|
-
|
|
16
|
-
builder.freestyle 'foo' do
|
|
17
|
-
xvfb do
|
|
18
|
-
install_name(install_name)
|
|
19
|
-
end
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
actual = builder.config_as_xml_node('foo')
|
|
23
|
-
|
|
24
|
-
base_xpath = './project/buildWrappers/org.jenkinsci.plugins.xvfb.XvfbBuildWrapper/'
|
|
25
|
-
|
|
26
|
-
assert_equal install_name, actual.xpath("#{base_xpath}installationName").text, "installation name was not #{install_name}"
|
|
27
|
-
assert_equal debug, actual.xpath("#{base_xpath}debug").text, "debug property was not #{debug}"
|
|
28
|
-
assert_equal timeout, actual.xpath("#{base_xpath}timeout").text, "timeout property was not #{timeout}"
|
|
29
|
-
assert_equal display_name_offset, actual.xpath("#{base_xpath}displayNameOffset").text, "displayNameOffset was not #{display_name_offset}"
|
|
30
|
-
assert_equal shutdown_with_build, actual.xpath("#{base_xpath}shutdownWithBuild").text, "shutdown_with_build was not #{shutdown_with_build}"
|
|
31
|
-
assert_equal auto_display_name, actual.xpath("#{base_xpath}autoDisplayName").text, "autoDisplayName was not #{auto_display_name}"
|
|
32
|
-
assert_equal screen_resolution, actual.xpath("#{base_xpath}screen").text, "screen resolution was not #{screen_resolution}"
|
|
33
|
-
assert_equal parallel_build, actual.xpath("#{base_xpath}parallelBuild").text, "parallelBuild was not #{parallel_build}"
|
|
34
|
-
end
|
|
35
|
-
end
|
|
1
|
+
require_relative './test_xml_generator'
|
|
2
|
+
|
|
3
|
+
class TestXvfb < Test::Unit::TestCase
|
|
4
|
+
def test_enable_xvfb
|
|
5
|
+
install_name = 'Xvfb'
|
|
6
|
+
screen_resolution = '1024x768x24'
|
|
7
|
+
debug = 'false'
|
|
8
|
+
timeout = '0'
|
|
9
|
+
display_name_offset = '1'
|
|
10
|
+
shutdown_with_build = 'false'
|
|
11
|
+
auto_display_name = 'true'
|
|
12
|
+
parallel_build = 'false'
|
|
13
|
+
|
|
14
|
+
builder = JenkinsJob::Builder.new
|
|
15
|
+
|
|
16
|
+
builder.freestyle 'foo' do
|
|
17
|
+
xvfb do
|
|
18
|
+
install_name(install_name)
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
actual = builder.config_as_xml_node('foo')
|
|
23
|
+
|
|
24
|
+
base_xpath = './project/buildWrappers/org.jenkinsci.plugins.xvfb.XvfbBuildWrapper/'
|
|
25
|
+
|
|
26
|
+
assert_equal install_name, actual.xpath("#{base_xpath}installationName").text, "installation name was not #{install_name}"
|
|
27
|
+
assert_equal debug, actual.xpath("#{base_xpath}debug").text, "debug property was not #{debug}"
|
|
28
|
+
assert_equal timeout, actual.xpath("#{base_xpath}timeout").text, "timeout property was not #{timeout}"
|
|
29
|
+
assert_equal display_name_offset, actual.xpath("#{base_xpath}displayNameOffset").text, "displayNameOffset was not #{display_name_offset}"
|
|
30
|
+
assert_equal shutdown_with_build, actual.xpath("#{base_xpath}shutdownWithBuild").text, "shutdown_with_build was not #{shutdown_with_build}"
|
|
31
|
+
assert_equal auto_display_name, actual.xpath("#{base_xpath}autoDisplayName").text, "autoDisplayName was not #{auto_display_name}"
|
|
32
|
+
assert_equal screen_resolution, actual.xpath("#{base_xpath}screen").text, "screen resolution was not #{screen_resolution}"
|
|
33
|
+
assert_equal parallel_build, actual.xpath("#{base_xpath}parallelBuild").text, "parallelBuild was not #{parallel_build}"
|
|
34
|
+
end
|
|
35
|
+
end
|
metadata
CHANGED
|
@@ -1,41 +1,41 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rubyjobbuilderdsl
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Huy Le
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2017-10-
|
|
11
|
+
date: 2017-10-19 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: nokogiri
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- -
|
|
17
|
+
- - ! '>='
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
19
|
version: '0'
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
|
-
- -
|
|
24
|
+
- - ! '>='
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
26
|
version: '0'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: builder
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
|
-
- -
|
|
31
|
+
- - ! '>='
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
33
|
version: '0'
|
|
34
34
|
type: :runtime
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
|
-
- -
|
|
38
|
+
- - ! '>='
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
40
|
version: '0'
|
|
41
41
|
description: Ruby Internal DSL for creating Jenkins jobs
|
|
@@ -110,14 +110,15 @@ files:
|
|
|
110
110
|
- lib/rubyjobbuilderdsl/postbuild/xunit_publisher.rb
|
|
111
111
|
- lib/rubyjobbuilderdsl/view.rb
|
|
112
112
|
- lib/rubyjobbuilderdsl/xml_generator.rb
|
|
113
|
-
- rubyjobbuilderdsl-0.0.3.gem
|
|
114
113
|
- rubyjobbuilderdsl.gemspec
|
|
115
114
|
- rubyjobbuilderdsl.sublime-project
|
|
116
115
|
- run_tests.sh
|
|
117
|
-
- sample/Schedule-sample-pipeline.xml
|
|
118
116
|
- sample/hello_mars.rb
|
|
117
|
+
- sample/hello_mars.xml
|
|
118
|
+
- sample/hello_world-post.xml
|
|
119
119
|
- sample/local.ini
|
|
120
120
|
- sample/sample_slack_postbuild.rb
|
|
121
|
+
- sample/test.xml
|
|
121
122
|
- test/test_ant.rb
|
|
122
123
|
- test/test_archive.rb
|
|
123
124
|
- test/test_artifactory.rb
|
|
@@ -167,12 +168,12 @@ require_paths:
|
|
|
167
168
|
- lib
|
|
168
169
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
169
170
|
requirements:
|
|
170
|
-
- -
|
|
171
|
+
- - ! '>='
|
|
171
172
|
- !ruby/object:Gem::Version
|
|
172
173
|
version: '0'
|
|
173
174
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
174
175
|
requirements:
|
|
175
|
-
- -
|
|
176
|
+
- - ! '>='
|
|
176
177
|
- !ruby/object:Gem::Version
|
|
177
178
|
version: '0'
|
|
178
179
|
requirements: []
|