jenkins-maestrodev 0.6.9

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.
Files changed (106) hide show
  1. checksums.yaml +7 -0
  2. data/Changelog.md +58 -0
  3. data/Gemfile +3 -0
  4. data/README.md +162 -0
  5. data/Rakefile +110 -0
  6. data/bin/jenkins +9 -0
  7. data/cucumber.yml +8 -0
  8. data/features/build_details.feature +44 -0
  9. data/features/configure.feature +36 -0
  10. data/features/default_host.feature +26 -0
  11. data/features/development.feature +14 -0
  12. data/features/listing_jobs.feature +34 -0
  13. data/features/manage_jobs.feature +263 -0
  14. data/features/manage_slave_nodes.feature +83 -0
  15. data/features/step_definitions/common_steps.rb +192 -0
  16. data/features/step_definitions/fixture_project_steps.rb +8 -0
  17. data/features/step_definitions/jenkins_steps.rb +116 -0
  18. data/features/step_definitions/scm_steps.rb +12 -0
  19. data/features/support/common.rb +37 -0
  20. data/features/support/env.rb +19 -0
  21. data/features/support/hooks.rb +16 -0
  22. data/features/support/jenkins_helpers.rb +6 -0
  23. data/features/support/matchers.rb +10 -0
  24. data/fixtures/jenkins/envfile.hpi +0 -0
  25. data/fixtures/jenkins/git.hpi +0 -0
  26. data/fixtures/jenkins/github.hpi +0 -0
  27. data/fixtures/jenkins/greenballs.hpi +0 -0
  28. data/fixtures/jenkins/rake.hpi +0 -0
  29. data/fixtures/jenkins/ruby.hpi +0 -0
  30. data/fixtures/projects/erlang/rebar.config +1 -0
  31. data/fixtures/projects/non-bundler/Rakefile +4 -0
  32. data/fixtures/projects/rails-3/.gitignore +4 -0
  33. data/fixtures/projects/rails-3/Gemfile +30 -0
  34. data/fixtures/projects/rails-3/Gemfile.lock +74 -0
  35. data/fixtures/projects/rails-3/README +256 -0
  36. data/fixtures/projects/rails-3/Rakefile +7 -0
  37. data/fixtures/projects/rails-3/app/controllers/application_controller.rb +3 -0
  38. data/fixtures/projects/rails-3/app/helpers/application_helper.rb +2 -0
  39. data/fixtures/projects/rails-3/app/views/layouts/application.html.erb +14 -0
  40. data/fixtures/projects/rails-3/config.ru +4 -0
  41. data/fixtures/projects/rails-3/config/application.rb +42 -0
  42. data/fixtures/projects/rails-3/config/boot.rb +13 -0
  43. data/fixtures/projects/rails-3/config/database.yml +22 -0
  44. data/fixtures/projects/rails-3/config/environment.rb +5 -0
  45. data/fixtures/projects/rails-3/config/environments/development.rb +26 -0
  46. data/fixtures/projects/rails-3/config/environments/production.rb +49 -0
  47. data/fixtures/projects/rails-3/config/environments/test.rb +35 -0
  48. data/fixtures/projects/rails-3/config/initializers/backtrace_silencers.rb +7 -0
  49. data/fixtures/projects/rails-3/config/initializers/inflections.rb +10 -0
  50. data/fixtures/projects/rails-3/config/initializers/mime_types.rb +5 -0
  51. data/fixtures/projects/rails-3/config/initializers/secret_token.rb +7 -0
  52. data/fixtures/projects/rails-3/config/initializers/session_store.rb +8 -0
  53. data/fixtures/projects/rails-3/config/locales/en.yml +5 -0
  54. data/fixtures/projects/rails-3/config/routes.rb +58 -0
  55. data/fixtures/projects/rails-3/db/seeds.rb +7 -0
  56. data/fixtures/projects/rails-3/doc/README_FOR_APP +2 -0
  57. data/fixtures/projects/rails-3/lib/tasks/.gitkeep +0 -0
  58. data/fixtures/projects/rails-3/public/404.html +26 -0
  59. data/fixtures/projects/rails-3/public/422.html +26 -0
  60. data/fixtures/projects/rails-3/public/500.html +26 -0
  61. data/fixtures/projects/rails-3/public/favicon.ico +0 -0
  62. data/fixtures/projects/rails-3/public/images/rails.png +0 -0
  63. data/fixtures/projects/rails-3/public/index.html +239 -0
  64. data/fixtures/projects/rails-3/public/javascripts/application.js +2 -0
  65. data/fixtures/projects/rails-3/public/javascripts/controls.js +965 -0
  66. data/fixtures/projects/rails-3/public/javascripts/dragdrop.js +974 -0
  67. data/fixtures/projects/rails-3/public/javascripts/effects.js +1123 -0
  68. data/fixtures/projects/rails-3/public/javascripts/prototype.js +6001 -0
  69. data/fixtures/projects/rails-3/public/javascripts/rails.js +175 -0
  70. data/fixtures/projects/rails-3/public/robots.txt +5 -0
  71. data/fixtures/projects/rails-3/public/stylesheets/.gitkeep +0 -0
  72. data/fixtures/projects/rails-3/script/rails +6 -0
  73. data/fixtures/projects/rails-3/test/performance/browsing_test.rb +9 -0
  74. data/fixtures/projects/rails-3/test/test_helper.rb +13 -0
  75. data/fixtures/projects/rails-3/vendor/plugins/.gitkeep +0 -0
  76. data/fixtures/projects/ruby/Gemfile +3 -0
  77. data/fixtures/projects/ruby/Gemfile.lock +10 -0
  78. data/fixtures/projects/ruby/Rakefile +4 -0
  79. data/jenkins.gemspec +34 -0
  80. data/lib/jenkins.rb +6 -0
  81. data/lib/jenkins/api.rb +312 -0
  82. data/lib/jenkins/cli.rb +361 -0
  83. data/lib/jenkins/cli/formatting.rb +53 -0
  84. data/lib/jenkins/config.rb +27 -0
  85. data/lib/jenkins/core_ext/hash.rb +9 -0
  86. data/lib/jenkins/core_ext/object/blank.rb +77 -0
  87. data/lib/jenkins/hudson-cli.jar +0 -0
  88. data/lib/jenkins/job_config_builder.rb +417 -0
  89. data/lib/jenkins/project_scm.rb +22 -0
  90. data/lib/jenkins/remote.rb +11 -0
  91. data/lib/jenkins/version.rb +3 -0
  92. data/spec/api_spec.rb +67 -0
  93. data/spec/fixtures/ec2_global.config.xml +103 -0
  94. data/spec/fixtures/erlang.single.config.xml +59 -0
  95. data/spec/fixtures/rails.multi.config.xml +82 -0
  96. data/spec/fixtures/rails.single.config.triggers.xml +84 -0
  97. data/spec/fixtures/rails.single.config.xml +80 -0
  98. data/spec/fixtures/ruby.multi-ruby-multi-labels.config.xml +84 -0
  99. data/spec/fixtures/ruby.multi.config.xml +77 -0
  100. data/spec/fixtures/ruby.single.config.xml +58 -0
  101. data/spec/fixtures/ruby.user-defined-axis.config.xml +69 -0
  102. data/spec/fixtures/therubyracer.config.xml +77 -0
  103. data/spec/hash_key_cleaner_spec.rb +25 -0
  104. data/spec/job_config_builder_spec.rb +233 -0
  105. data/spec/spec_helper.rb +15 -0
  106. metadata +291 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 8395a89a3f1c2fcf68c4442932198f0df2a3fa92
4
+ data.tar.gz: 07d3c91e1524440ff50f1916a8198ccf713ad8b0
5
+ SHA512:
6
+ metadata.gz: dfa09e1ae6668649a66aa264524a90b497fdc58e91fba174c5de6a016b42d0fc80369b5361966a3f6f4a2443918e0d1f368f3478a599fe8c33f9e304a94427bb
7
+ data.tar.gz: f3af54d792b44ffde391b713d6c9ce7da9146df1f8c70a2b2579484484572b48476fc8e19cee627ee8484b76e1fe5be55e6f662284587b5717bbf44314e0e46f
@@ -0,0 +1,58 @@
1
+ # Changelog
2
+
3
+ ## 0.6.8 - 2011/12/30
4
+
5
+ * re-releasing 0.6.7 which failed to register in RubyGems.org
6
+
7
+ ## 0.6.4 - 2011/04/13
8
+
9
+ * change from json to json_pure
10
+
11
+ ## 0.6.3 - 2011/04/12
12
+
13
+ * fixes for ruby 1.9
14
+
15
+ ## 0.6.2 - 2011/03/17
16
+
17
+ * add `build_details` command for fetching the result of a particular build.
18
+ * add instructions for running with non-english locale
19
+ * remove, fix obsolete gem dependencies
20
+
21
+ ## 0.5.0 - 2010/12/1
22
+
23
+ * hudson warfile no longer bundled with hudson gem
24
+ * rubygem is now 235K instead of 31M!
25
+ * upgrade hudson server and related plugins without requiring a new gem release
26
+ * hudson gem now fully drinks the bundler koolaid.
27
+ * hudson create
28
+ * --node-labels 'ubuntu,gentoo' - run tests against multiple slave nodes by their label
29
+ * --no-template - do not generate any default steps (well, a silly one)
30
+ * hudson add_node
31
+ * --vagrant - provide alternate default values when adding nodes if the node is a Vagrant VM
32
+ * hudson default_host
33
+ * NEW - displays the current default host:port URI
34
+
35
+ ## 0.4.0 - 2010/11/11
36
+
37
+ * hudson create
38
+ * --rubies '1.8.7,1.9.2,rbx-head,jruby' - uses RVM and Hudson's Axes support to run tests within different Ruby environments
39
+ * --scm git://some-alternate.com/repo.git - can override the "origin" URI
40
+ * --scm-branches 'master,other,branches' - specify which branches can be pulled from to trigger tests
41
+
42
+ * hudson job
43
+ * Can dump information/status about a job
44
+
45
+ ## 0.3.1 - 2010/11/8
46
+
47
+ * fixed error in the rails3 template's test for schema.rb
48
+
49
+ ## 0.3.0 - 2010/11/8
50
+
51
+ MAJOR RELEASE!
52
+
53
+ * All new commands for CLI: build, remove, nodes, add_node
54
+ * Updated to Hudson CI 1.381
55
+
56
+ ## 0.2.7 2010/8/25
57
+
58
+ * Updated to Hudson CI 1.373
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'http://rubygems.org'
2
+
3
+ gemspec
@@ -0,0 +1,162 @@
1
+ Jenkins
2
+ ======
3
+
4
+ [Jenkins CI](http://jenkins-ci.org/) is a sweet continuous integration
5
+ platform. Jenkins.rb makes it easy to get started, add/remove Ruby
6
+ jobs and slave nodes; either from a CLI or an API.
7
+
8
+
9
+ * Email: [http://groups.google.com/group/jenkinsrb](http://groups.google.com/group/jenkinsrb)
10
+ * IRC: [irc://irc.freenode.net/jenkins.rb](irc://irc.freenode.net/jenkins.rb)
11
+ * CI: [http://travis-ci.org/cowboyd/jenkins.rb](http://travis-ci.org/cowboyd/jenkins.rb)
12
+
13
+ Install
14
+ =======
15
+
16
+ gem install jenkins
17
+
18
+ You do not need to download Jenkins CI. It is bundled in the RubyGem.
19
+
20
+ Example
21
+ =======
22
+
23
+ Jenkins.rb is continuously tested using Jenkins at [http://jenkins.thefrontside.net/job/jenkins.rb/](http://jenkins.thefrontside.net/job/jenkins.rb/).
24
+
25
+ The `jenkins` application allows you to see the projects/jobs and their statuses:
26
+
27
+ $ jenkins list --host jenkins.thefrontside.net --port 80
28
+ jenkins.rb - http://jenkins.thefrontside.net/job/jenkins.rb/
29
+ TheRubyRacer - http://jenkins.thefrontside.net/job/TheRubyRacer/
30
+
31
+ Alternately use environment variables:
32
+
33
+ $ JENKINS_HOST=jenkins.thefrontside.net JENKINS_PORT=80 jenkins list
34
+
35
+ Alternately, it will remember the last Jenkins CI master used.
36
+
37
+ $ jenkins list
38
+
39
+ Usage
40
+ =====
41
+
42
+ To run your own Jenkins server (by default opens at http://localhost:3001):
43
+
44
+ Usage: jenkins server [options]
45
+ -p, --port [3001] run jenkins server on this port
46
+ -c, --control [3002] set the shutdown/control port
47
+ --daemon fork into background and run as a daemon
48
+ --logfile [PATH] redirect log messages to this file
49
+ -k, --kill send shutdown signal to control port
50
+ --home [/Users/drnic/.jenkins/server] use this directory to store server data
51
+
52
+ The remaining CLI tasks are for communicating with a running Jenkins server; either the one created above or hosted remotely.
53
+
54
+ ### Jobs
55
+
56
+ To list Jobs/Projects on a Jenkins server:
57
+
58
+ Usage: jenkins list [options]
59
+
60
+ To add Jobs/Projects (create a Job) on a Jenkins server:
61
+
62
+ Usage: jenkins create PROJECT_PATH [options]
63
+ --public-scm use public scm URL
64
+ --template [ruby] template of job steps (available: rails,rails3,ruby,rubygem,erlang)
65
+ --assigned-node [ASSIGNED-NODE] only use slave nodes with this label
66
+ --override override if job exists
67
+ --no-build create job without initial build
68
+
69
+ To trigger a Job to build:
70
+
71
+ Usage: jenkins build
72
+
73
+ To remove a Job from a Jenkins server:
74
+
75
+ Usage: jenkins remove PROJECT_PATH
76
+
77
+ ### Slave nodes
78
+
79
+ To list slaves on a Jenkins server (including itself):
80
+
81
+ Usage: jenkins nodes
82
+
83
+ To add a remote machine/remote VM to a Jenkins server as a slave:
84
+
85
+ Usage: jenkins add_node SLAVE_HOST
86
+ --slave-port [22] SSH port for Jenkins to connect to slave node
87
+ --label [LABEL] Labels for a job --assigned_node to match against to select a slave. --master-key [MASTER-KEY] Location of master public key or identity file
88
+ --slave-fs [SLAVE-FS] Location of file system on slave for Jenkins to use
89
+ --name [NAME] Name of slave node (default SLAVE_HOST)
90
+ --slave-user [deploy] SSH user for Jenkins to connect to slave node
91
+
92
+ ### Selecting a Jenkins CI server
93
+
94
+ **For all client-side commands, there are `--host` and `--port` options flags.** These are cached after first used, so are only required for the first request to a Jenkins CI server. For example:
95
+
96
+ jenkins create . --host localhost --port 3001
97
+ jenkins list
98
+ jenkins create . --override
99
+
100
+ Alternately, `$JENKINS_HOST` and `$JENKINS_PORT` can be provided in lieu of the cached target Jenkins CI server
101
+
102
+ JENKINS_HOST=localhost JENKINS_PORT=3001 jenkins list
103
+
104
+
105
+ Developer Instructions
106
+ ======================
107
+
108
+ The dependencies for the gem and for developing the gem are managed by Bundler.
109
+
110
+ gem install bundler
111
+ git clone http://github.com/cowboyd/jenkins.rb.git
112
+ bundle install
113
+
114
+ The test suites expects Jenkins to speak English. If you are not using an
115
+ English locale prepare the terminal session running the test suite with:
116
+
117
+ export LC_ALL=en_US.UTF-8
118
+
119
+ The test suite is run with:
120
+
121
+ rake
122
+
123
+ This launches a Jenkins server, runs cucumber features, and kills the Jenkins server.
124
+
125
+ Alternately, manually launch the Jenkins server, run features and close the Jenkins server:
126
+
127
+ rake jenkins:server:test
128
+ rake cucumber:ok
129
+ rake jenkins:server:killtest
130
+
131
+ Contributors
132
+ ============
133
+
134
+ * Charles Lowell
135
+ * Dr Nic Williams
136
+ * Bo Jeanes
137
+
138
+ License
139
+ =======
140
+
141
+ (The MIT License)
142
+
143
+ Copyright (c) 2010 Charles Lowell, cowboyd@thefrontside.net
144
+
145
+ Permission is hereby granted, free of charge, to any person obtaining
146
+ a copy of this software and associated documentation files (the
147
+ 'Software'), to deal in the Software without restriction, including
148
+ without limitation the rights to use, copy, modify, merge, publish,
149
+ distribute, sublicense, and/or sell copies of the Software, and to
150
+ permit persons to whom the Software is furnished to do so, subject to
151
+ the following conditions:
152
+
153
+ The above copyright notice and this permission notice shall be
154
+ included in all copies or substantial portions of the Software.
155
+
156
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
157
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
158
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
159
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
160
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
161
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
162
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,110 @@
1
+ require 'bundler'
2
+ Bundler::GemHelper.install_tasks
3
+
4
+ require "rspec/core/rake_task"
5
+ RSpec::Core::RakeTask.new(:spec)
6
+
7
+ namespace :cucumber do
8
+ require 'cucumber/rake/task'
9
+ Cucumber::Rake::Task.new(:wip, 'Run features that are being worked on') do |t|
10
+ t.cucumber_opts = "--tags @wip"
11
+ end
12
+ Cucumber::Rake::Task.new(:ok, 'Run features that should be working') do |t|
13
+ t.cucumber_opts = "--tags ~@wip --tags ~@jenkins-server"
14
+ end
15
+ Cucumber::Rake::Task.new(:server, 'Run features that require a running server') do |t|
16
+ t.cucumber_opts = "--tags ~@wip --tags @jenkins-server"
17
+ end
18
+ task :all => [:ok, :wip]
19
+ end
20
+
21
+ desc 'Alias for cucumber:ok'
22
+ task :cucumber => 'cucumber:ok'
23
+
24
+ desc "Start test server; Run cucumber:ok; Kill Test Server;"
25
+ task :default => [:spec, "jenkins:server:killtest", "jenkins:server:test"] do
26
+ begin
27
+ result = Rake::Task["cucumber:ok"].invoke
28
+ ensure
29
+ Rake::Task["jenkins:server:killtest"].execute
30
+ end
31
+ raise unless result
32
+ end
33
+
34
+ # This verifies that Jenkins is started
35
+ # and that it is ready to accept requests.
36
+ def wait_for_server_start
37
+ require 'socket'
38
+ require 'net/http'
39
+ tries = 1
40
+ max_tries = 30
41
+ successes = 0
42
+ max_successes = 2
43
+ wait = 5
44
+ print "Waiting for the server to start (max tries: #{max_tries} with a #{wait} second pause between tries): "
45
+ begin
46
+ while tries <= max_tries
47
+ tries += 1
48
+ begin
49
+ Net::HTTP.start("localhost", "3010") do |http|
50
+ response = http.get('/')
51
+ if response.code == "200"
52
+ print "O"
53
+ successes += 1
54
+ return true if successes >= max_successes
55
+ else
56
+ print "o"
57
+ end
58
+ end
59
+ rescue SystemCallError => e
60
+ successes = 0
61
+ if tries == max_tries
62
+ print "!"
63
+ raise
64
+ end
65
+ print "."
66
+ end
67
+ $stdout.flush
68
+ sleep(wait)
69
+ end
70
+ ensure
71
+ puts # Ensure a newline gets added
72
+ $stdout.flush
73
+ end
74
+ return false
75
+ end
76
+
77
+ namespace :jenkins do
78
+ namespace :server do
79
+ require 'fileutils'
80
+
81
+ port = 3010
82
+ control = 3011
83
+ directory plugin_dir = File.expand_path("../var/jenkins/plugins", __FILE__)
84
+
85
+ desc "Run a server for tests"
86
+ task :test => plugin_dir do
87
+ FileUtils.chdir(File.dirname(__FILE__)) do
88
+ Dir["fixtures/jenkins/*.hpi"].each do |plugin|
89
+ FileUtils.cp plugin, plugin_dir
90
+ end
91
+ logfile = File.expand_path("../var/jenkins/test.log", __FILE__)
92
+ puts "Launching jenkins test server at http://localhost:#{port}..."
93
+ puts " output will be logged to #{logfile}"
94
+ `bundle exec bin/jenkins server --home #{File.dirname(plugin_dir)} --port #{port} --control #{control} --daemon --logfile #{logfile}`
95
+ end
96
+ wait_for_server_start
97
+ end
98
+
99
+ desc "Kill jenkins test server if it is running."
100
+ task :killtest do
101
+ FileUtils.chdir(File.dirname(__FILE__)) do
102
+ puts "Killing any running server processes..."
103
+ `ruby bin/jenkins server --control #{control} --kill 2>/dev/null`
104
+ end
105
+ end
106
+
107
+ end
108
+ end
109
+
110
+ Dir['tasks/**/*.rake'].each {|f| load f}
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env ruby
2
+ require 'jenkins'
3
+ require 'jenkins/cli'
4
+
5
+ begin
6
+ Jenkins::CLI.start
7
+ rescue Errno::ECONNREFUSED, Errno::EAFNOSUPPORT
8
+ Jenkins::CLI.new.shell.say "No connection available to the server.", :red
9
+ end
@@ -0,0 +1,8 @@
1
+ <%
2
+ rerun = File.file?('rerun.txt') ? IO.read('rerun.txt') : ""
3
+ rerun_opts = rerun.to_s.strip.empty? ? "--format #{ENV['CUCUMBER_FORMAT'] || 'pretty'} features" : "--format #{ENV['CUCUMBER_FORMAT'] || 'pretty'} #{rerun}"
4
+ std_opts = "--format #{ENV['CUCUMBER_FORMAT'] || 'pretty'} --strict --tags ~@wip"
5
+ %>
6
+ default: --drb <%= std_opts %> features
7
+ wip: --drb --tags @wip:3 --wip features
8
+ rerun: --drb <%= rerun_opts %> --format rerun --out rerun.txt --strict --tags ~@wip
@@ -0,0 +1,44 @@
1
+ Feature: Show build details
2
+ I want to see details about a particular build for a job I'm interested in
3
+
4
+ Scenario: Show build details for a job on a non-existent server (jenkins build_details)
5
+ When I run local executable "jenkins" with arguments "build_details ruby 1 --host localhost --port 9999"
6
+ Then I should see exactly
7
+ """
8
+ No connection available to the server.
9
+ """
10
+
11
+ @jenkins-server
12
+ Scenario: Show build details for a non-existent job (jenkins build_details)
13
+ Given I have a Jenkins server running
14
+ And the Jenkins server has no current jobs
15
+ When I run local executable "jenkins" with arguments "build_details ruby 1 --host localhost --port 3010"
16
+ Then I should see exactly
17
+ """
18
+ ERROR: Cannot find project 'ruby'.
19
+ """
20
+
21
+ @jenkins-server
22
+ Scenario: Show build details for a job (jenkins build_details)
23
+ Given I have a Jenkins server running
24
+ And the Jenkins server has no current jobs
25
+ And I am in the "ruby" project folder
26
+ And the project uses "git" scm
27
+ When I run local executable "jenkins" with arguments "create . --host localhost --port 3010"
28
+ When I run local executable "jenkins" with arguments "build"
29
+ When I wait for ruby build 1 to start
30
+ When I run local executable "jenkins" with arguments "build_details ruby 1 --host localhost --port 3010 --json"
31
+ Then I should see
32
+ """
33
+ "number":1
34
+ """
35
+ And I should see
36
+ """
37
+ "actions":[
38
+ """
39
+ And I should see
40
+ """
41
+ "changeSet":{
42
+ """
43
+
44
+
@@ -0,0 +1,36 @@
1
+ Feature: Configure host connection information
2
+
3
+ Scenario: Configure host connection information and check default host and reconfigure
4
+ Given I run local executable "jenkins" with arguments "configure --host localhost --port 3010"
5
+ When I run local executable "jenkins" with arguments "default_host"
6
+ Then I should see exactly
7
+ """
8
+ http://localhost:3010
9
+ """
10
+ Given I run local executable "jenkins" with arguments "configure --host localhost --port 3010 --ssl"
11
+ When I run local executable "jenkins" with arguments "default_host"
12
+ Then I should see exactly
13
+ """
14
+ https://localhost:3010
15
+ """
16
+
17
+ Scenario: Configure host connection authentication information and check auth_info and reconfigure
18
+ Given I run local executable "jenkins" with arguments "auth_info"
19
+ Then I should see exactly
20
+ """
21
+ """
22
+ When I run local executable "jenkins" with arguments "configure --username jenkins --password sniknej"
23
+ And I run local executable "jenkins" with arguments "auth_info"
24
+ Then I should see exactly
25
+ """
26
+ username: jenkins
27
+ password: sniknej
28
+ """
29
+ When I run local executable "jenkins" with arguments "configure --username jenkins1 --password 1sniknej"
30
+ And I run local executable "jenkins" with arguments "auth_info"
31
+ Then I should see exactly
32
+ """
33
+ username: jenkins1
34
+ password: 1sniknej
35
+ """
36
+