cucumber-chef 2.0.7 → 2.1.0.rc.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. data/README.md +1 -1
  2. data/Rakefile +1 -1
  3. data/bin/cc-knife +2 -5
  4. data/bin/cc-push +50 -26
  5. data/bin/cc-server +9 -10
  6. data/bin/cucumber-chef +65 -71
  7. data/chef_repo/cookbooks/cucumber-chef/attributes/default.rb +1 -1
  8. data/chef_repo/cookbooks/cucumber-chef/recipes/default.rb +1 -1
  9. data/chef_repo/cookbooks/cucumber-chef/recipes/lxc.rb +34 -36
  10. data/chef_repo/cookbooks/cucumber-chef/recipes/test_lab.rb +64 -47
  11. data/chef_repo/cookbooks/cucumber-chef/templates/default/solrconfig.erb +650 -0
  12. data/cucumber-chef.gemspec +5 -5
  13. data/lib/cucumber/chef/bootstrap.rb +10 -10
  14. data/lib/cucumber/chef/config.rb +15 -15
  15. data/lib/cucumber/chef/helpers/chef_client.rb +88 -14
  16. data/lib/cucumber/chef/helpers/chef_server.rb +39 -16
  17. data/lib/cucumber/chef/helpers/command.rb +28 -12
  18. data/lib/cucumber/chef/helpers/container.rb +29 -26
  19. data/lib/cucumber/chef/helpers/minitest.rb +1 -1
  20. data/lib/cucumber/chef/helpers/server.rb +37 -18
  21. data/lib/cucumber/chef/helpers/test_lab.rb +1 -1
  22. data/lib/cucumber/chef/helpers/utility.rb +23 -3
  23. data/lib/cucumber/chef/helpers.rb +10 -8
  24. data/lib/cucumber/chef/provisioner.rb +22 -21
  25. data/lib/cucumber/chef/steps/chef_steps.rb +1 -1
  26. data/lib/cucumber/chef/steps/minitest_steps.rb +3 -3
  27. data/lib/cucumber/chef/steps/provision_steps.rb +7 -6
  28. data/lib/cucumber/chef/steps/ssh_steps.rb +31 -2
  29. data/lib/cucumber/chef/steps.rb +1 -1
  30. data/lib/cucumber/chef/templates/cucumber/cc-hooks.rb +111 -0
  31. data/lib/cucumber/chef/templates/cucumber/env.rb +0 -87
  32. data/lib/cucumber/chef/templates/cucumber/readme-environments.erb +1 -0
  33. data/lib/cucumber/chef/templates/cucumber/readme-roles.erb +1 -1
  34. data/lib/cucumber/chef/templates/cucumber-chef/config-rb.erb +5 -0
  35. data/lib/cucumber/chef/test_lab.rb +70 -23
  36. data/lib/cucumber/chef/utility.rb +121 -31
  37. data/lib/cucumber/chef/version.rb +2 -2
  38. data/lib/cucumber/chef.rb +1 -1
  39. data/lib/cucumber-chef.rb +1 -1
  40. data/spec/cucumber/chef/config_spec.rb +1 -1
  41. data/spec/cucumber/chef/provisioner_spec.rb +1 -1
  42. data/spec/cucumber/chef/test_lab_spec.rb +1 -1
  43. data/spec/spec_helper.rb +1 -1
  44. metadata +8 -5
@@ -0,0 +1 @@
1
+ Create supporting environment definitions here.
@@ -1 +1 @@
1
- Create supporting roles here.
1
+ Create supporting role definitions here.
@@ -5,6 +5,11 @@
5
5
  provider :aws
6
6
  librarian_chef <%= @librarian_chef %>
7
7
 
8
+ artifacts ({ "chef-client-log" => "/var/log/chef/client.log",
9
+ "chef-client-stacktrace" => "/var/chef/cache/chef-stacktrace.out" })
10
+
11
+ lxc_user "root"
12
+ lab_user "ubuntu"
8
13
 
9
14
  ################################################################################
10
15
  # Provider: AWS
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # Author: Stephen Nelson-Smith <stephen@atalanta-systems.com>
4
4
  # Author: Zachary Patten <zachary@jovelabs.com>
5
- # Copyright: Copyright (c) 2011-2012 Atalanta Systems Ltd
5
+ # Copyright: Copyright (c) 2011-2013 Atalanta Systems Ltd
6
6
  # License: Apache License, Version 2.0
7
7
  #
8
8
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -48,6 +48,53 @@ module Cucumber
48
48
  ensure_security_group
49
49
  end
50
50
 
51
+ ################################################################################
52
+
53
+ def ssh
54
+ if (!defined?(@ssh) || @ssh.nil?)
55
+ ssh_private_key_file = Cucumber::Chef.locate(:file, ".cucumber-chef", "id_rsa-#{Cucumber::Chef::Config[:lab_user]}")
56
+ File.chmod(0400, ssh_private_key_file)
57
+ @ssh ||= ZTK::SSH.new
58
+
59
+ @ssh.config.host_name = self.labs_running.first.public_ip_address
60
+ @ssh.config.user = Cucumber::Chef::Config[:lab_user]
61
+ @ssh.config.keys = ssh_private_key_file
62
+ end
63
+ @ssh
64
+ end
65
+
66
+ ################################################################################
67
+
68
+ def proxy_ssh(container)
69
+ container = container.to_sym
70
+ @proxy_ssh ||= Hash.new
71
+ if (!defined?(@proxy_ssh[container]) || @proxy_ssh[container].nil?)
72
+ ssh_private_key_file = Cucumber::Chef.locate(:file, ".cucumber-chef", "id_rsa-#{Cucumber::Chef::Config[:lab_user]}")
73
+ File.chmod(0400, ssh_private_key_file)
74
+ @proxy_ssh[container] ||= ZTK::SSH.new
75
+
76
+ @proxy_ssh[container].config.proxy_host_name = self.labs_running.first.public_ip_address
77
+ @proxy_ssh[container].config.proxy_user = Cucumber::Chef::Config[:lab_user]
78
+ @proxy_ssh[container].config.proxy_keys = ssh_private_key_file
79
+
80
+ @proxy_ssh[container].config.host_name = container
81
+ @proxy_ssh[container].config.user = Cucumber::Chef::Config[:lxc_user]
82
+ @proxy_ssh[container].config.keys = ssh_private_key_file
83
+ end
84
+ @proxy_ssh[container]
85
+ end
86
+
87
+ ################################################################################
88
+
89
+ def drb
90
+ if (!defined?(@drb) || @drb.nil?)
91
+ @drb ||= DRbObject.new_with_uri("druby://#{self.labs_running.first.public_ip_address}:8787")
92
+ @drb and DRb.start_service
93
+ @drb.servers = Hash.new(nil)
94
+ end
95
+ @drb
96
+ end
97
+
51
98
  ################################################################################
52
99
 
53
100
  def create
@@ -85,7 +132,7 @@ module Cucumber
85
132
  if @server
86
133
  @stdout.print("Waiting for SSHD...")
87
134
  Cucumber::Chef.spinner do
88
- ZTK::TCPSocketCheck.new(:host => @server.public_ip_address, :port => 22).wait
135
+ ZTK::TCPSocketCheck.new(:host => @server.public_ip_address, :port => 22, :wait => 120).wait
89
136
  end
90
137
  @stdout.puts("done.\n")
91
138
  end
@@ -93,8 +140,8 @@ module Cucumber
93
140
  @server
94
141
 
95
142
  rescue Exception => e
96
- $logger.fatal { e.message }
97
- $logger.fatal { "Backtrace:\n#{e.backtrace.join("\n")}" }
143
+ Cucumber::Chef.logger.fatal { e.message }
144
+ Cucumber::Chef.logger.fatal { "Backtrace:\n#{e.backtrace.join("\n")}" }
98
145
  raise TestLabError, e.message
99
146
  end
100
147
 
@@ -112,8 +159,8 @@ module Cucumber
112
159
  end
113
160
 
114
161
  rescue Exception => e
115
- $logger.fatal { e.message }
116
- $logger.fatal { e.backtrace.join("\n") }
162
+ Cucumber::Chef.logger.fatal { e.message }
163
+ Cucumber::Chef.logger.fatal { e.backtrace.join("\n") }
117
164
  raise TestLabError, e.message
118
165
  end
119
166
 
@@ -131,7 +178,7 @@ module Cucumber
131
178
 
132
179
  @stdout.print("Waiting for SSHD...")
133
180
  Cucumber::Chef.spinner do
134
- ZTK::TCPSocketCheck.new(:host => @server.public_ip_address, :port => 22).wait
181
+ ZTK::TCPSocketCheck.new(:host => @server.public_ip_address, :port => 22, :wait => 120).wait
135
182
  end
136
183
  @stdout.puts("done.\n")
137
184
 
@@ -146,8 +193,8 @@ module Cucumber
146
193
  end
147
194
 
148
195
  rescue Exception => e
149
- $logger.fatal { e.message }
150
- $logger.fatal { e.backtrace.join("\n") }
196
+ Cucumber::Chef.logger.fatal { e.message }
197
+ Cucumber::Chef.logger.fatal { e.backtrace.join("\n") }
151
198
  raise TestLabError, e.message
152
199
  end
153
200
 
@@ -164,8 +211,8 @@ module Cucumber
164
211
  end
165
212
 
166
213
  rescue Exception => e
167
- $logger.fatal { e.message }
168
- $logger.fatal { e.backtrace.join("\n") }
214
+ Cucumber::Chef.logger.fatal { e.message }
215
+ Cucumber::Chef.logger.fatal { e.backtrace.join("\n") }
169
216
  raise TestLabError, e.message
170
217
  end
171
218
 
@@ -222,8 +269,8 @@ module Cucumber
222
269
  end
223
270
 
224
271
  rescue Exception => e
225
- $logger.fatal { e.message }
226
- $logger.fatal { e.backtrace.join("\n") }
272
+ Cucumber::Chef.logger.fatal { e.message }
273
+ Cucumber::Chef.logger.fatal { e.backtrace.join("\n") }
227
274
  raise TestLabError, e.message
228
275
  end
229
276
 
@@ -237,13 +284,13 @@ module Cucumber
237
284
 
238
285
  def labs
239
286
  results = @connection.servers.select do |server|
240
- $logger.debug("candidate") { "ID=#{server.id}, state='#{server.state}'" }
287
+ Cucumber::Chef.logger.debug("candidate") { "ID=#{server.id}, state='#{server.state}'" }
241
288
  ( server.tags['cucumber-chef-mode'] == Cucumber::Chef::Config[:mode].to_s &&
242
289
  server.tags['cucumber-chef-user'] == Cucumber::Chef::Config[:user].to_s &&
243
290
  VALID_STATES.any?{ |state| state == server.state } )
244
291
  end
245
292
  results.each do |server|
246
- $logger.debug("results") { "ID=#{server.id}, state='#{server.state}'" }
293
+ Cucumber::Chef.logger.debug("results") { "ID=#{server.id}, state='#{server.state}'" }
247
294
  end
248
295
  results
249
296
  end
@@ -252,13 +299,13 @@ module Cucumber
252
299
 
253
300
  def labs_running
254
301
  results = @connection.servers.select do |server|
255
- $logger.debug("candidate") { "ID=#{server.id}, state='#{server.state}'" }
302
+ Cucumber::Chef.logger.debug("candidate") { "ID=#{server.id}, state='#{server.state}'" }
256
303
  ( server.tags['cucumber-chef-mode'] == Cucumber::Chef::Config[:mode].to_s &&
257
304
  server.tags['cucumber-chef-user'] == Cucumber::Chef::Config[:user].to_s &&
258
305
  RUNNING_STATES.any?{ |state| state == server.state } )
259
306
  end
260
307
  results.each do |server|
261
- $logger.debug("results") { "ID=#{server.id}, state='#{server.state}'" }
308
+ Cucumber::Chef.logger.debug("results") { "ID=#{server.id}, state='#{server.state}'" }
262
309
  end
263
310
  results
264
311
  end
@@ -267,13 +314,13 @@ module Cucumber
267
314
 
268
315
  def labs_shutdown
269
316
  results = @connection.servers.select do |server|
270
- $logger.debug("candidate") { "ID=#{server.id}, state='#{server.state}'" }
317
+ Cucumber::Chef.logger.debug("candidate") { "ID=#{server.id}, state='#{server.state}'" }
271
318
  ( server.tags['cucumber-chef-mode'] == Cucumber::Chef::Config[:mode].to_s &&
272
319
  server.tags['cucumber-chef-user'] == Cucumber::Chef::Config[:user].to_s &&
273
320
  SHUTDOWN_STATES.any?{ |state| state == server.state } )
274
321
  end
275
322
  results.each do |server|
276
- $logger.debug("results") { "ID=#{server.id}, state='#{server.state}'" }
323
+ Cucumber::Chef.logger.debug("results") { "ID=#{server.id}, state='#{server.state}'" }
277
324
  end
278
325
  results
279
326
  end
@@ -281,17 +328,17 @@ module Cucumber
281
328
  ################################################################################
282
329
 
283
330
  def nodes
284
- Cucumber::Chef.load_knife_config
331
+ Cucumber::Chef.load_knife
285
332
  query = "tags:#{Cucumber::Chef::Config[:mode]} AND tags:#{Cucumber::Chef::Config[:user]}"
286
- $logger.debug { "query(#{query})" }
333
+ Cucumber::Chef.logger.debug { "query(#{query})" }
287
334
  nodes, offset, total = ::Chef::Search::Query.new.search("node", URI.escape(query))
288
335
  nodes.compact
289
336
  end
290
337
 
291
338
  def clients
292
- Cucumber::Chef.load_knife_config
339
+ Cucumber::Chef.load_knife
293
340
  query = "tags:#{Cucumber::Chef::Config[:mode]} AND tags:#{Cucumber::Chef::Config[:user]}"
294
- $logger.debug { "query(#{query})" }
341
+ Cucumber::Chef.logger.debug { "query(#{query})" }
295
342
  clients, offset, total = ::Chef::Search::Query.new.search("client", URI.escape(query))
296
343
  clients.compact
297
344
  end
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # Author: Stephen Nelson-Smith <stephen@atalanta-systems.com>
4
4
  # Author: Zachary Patten <zachary@jovelabs.com>
5
- # Copyright: Copyright (c) 2011-2012 Atalanta Systems Ltd
5
+ # Copyright: Copyright (c) 2011-2013 Atalanta Systems Ltd
6
6
  # License: Apache License, Version 2.0
7
7
  #
8
8
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -32,55 +32,29 @@ module Cucumber
32
32
  ((Cucumber::Chef::VERSION =~ /rc/) || (Cucumber::Chef::VERSION =~ /pre/))
33
33
  end
34
34
 
35
- ################################################################################
36
-
37
- def root
38
- File.expand_path(File.join(File.dirname(__FILE__), "..", "..", ".."), File.dirname(__FILE__))
39
- end
40
-
41
- ################################################################################
42
-
43
- def load_knife_config
44
- $logger.debug { "attempting to load cucumber-chef test lab 'knife.rb'" }
45
-
46
- knife_rb = Cucumber::Chef.locate(:file, ".cucumber-chef", "knife.rb")
47
- ::Chef::Config.from_file(knife_rb)
48
-
49
- $logger.debug { "load_knife_config(#{knife_rb})" }
50
- end
51
-
52
35
  ################################################################################
53
36
 
54
37
  def locate(type, *args)
55
38
  pwd = Dir.pwd.split(File::SEPARATOR)
56
- $logger.debug { "pwd='#{Dir.pwd}'" } if $logger
57
39
  (pwd.length - 1).downto(0) do |i|
58
40
  candidate = File.join(pwd[0..i], args)
59
- $logger.debug { "candidate='#{candidate}'" } if $logger
60
41
  case type
61
42
  when :file
62
43
  if (File.exists?(candidate) && !File.directory?(candidate))
63
- result = File.expand_path(candidate)
64
- $logger.debug { "result='#{result}'" } if $logger
65
- return result
44
+ return File.expand_path(candidate)
66
45
  end
67
46
  when :directory
68
47
  if (File.exists?(candidate) && File.directory?(candidate))
69
- result = File.expand_path(candidate)
70
- $logger.debug { "result='#{result}'" } if $logger
71
- return result
48
+ return File.expand_path(candidate)
72
49
  end
73
50
  when :any
74
51
  if File.exists?(candidate)
75
- result = File.expand_path(candidate)
76
- $logger.debug { "result='#{result}'" } if $logger
77
- return result
52
+ return File.expand_path(candidate)
78
53
  end
79
54
  end
80
55
  end
81
56
 
82
57
  message = "Could not locate #{type} '#{File.join(args)}'."
83
- $logger.fatal { message } if $logger
84
58
  raise UtilityError, message
85
59
  end
86
60
 
@@ -115,7 +89,7 @@ module Cucumber
115
89
  ################################################################################
116
90
 
117
91
  def generate_do_not_edit_warning(message=nil)
118
- warning = []
92
+ warning = Array.new
119
93
  warning << "#"
120
94
  warning << "# WARNING: Automatically generated file; DO NOT EDIT!"
121
95
  warning << [ "# Cucumber-Chef v#{Cucumber::Chef::VERSION}", message ].compact.join(" ")
@@ -130,6 +104,14 @@ module Cucumber
130
104
  %x( wget -q -O - checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//' ).chomp
131
105
  end
132
106
 
107
+ ################################################################################
108
+
109
+ def root
110
+ File.expand_path(File.join(File.dirname(__FILE__), "..", "..", ".."), File.dirname(__FILE__))
111
+ end
112
+
113
+ ################################################################################
114
+
133
115
  def log_file
134
116
  config_path = File.join(Cucumber::Chef.locate_parent(".chef"), ".cucumber-chef")
135
117
  FileUtils.mkdir_p(config_path)
@@ -138,6 +120,114 @@ module Cucumber
138
120
 
139
121
  ################################################################################
140
122
 
123
+ def knife_rb
124
+ config_path = File.join(Cucumber::Chef.locate_parent(".chef"), ".cucumber-chef")
125
+ FileUtils.mkdir_p(config_path)
126
+ File.join(config_path, "knife.rb")
127
+ end
128
+
129
+ ################################################################################
130
+
131
+ def config_rb
132
+ config_path = File.join(Cucumber::Chef.locate_parent(".chef"), ".cucumber-chef")
133
+ FileUtils.mkdir_p(config_path)
134
+ File.join(config_path, "config.rb")
135
+ end
136
+
137
+ ################################################################################
138
+
139
+ def servers_bin
140
+ config_path = File.join(Cucumber::Chef.locate_parent(".chef"), ".cucumber-chef")
141
+ FileUtils.mkdir_p(config_path)
142
+ File.join(config_path, "servers.bin")
143
+ end
144
+
145
+ ################################################################################
146
+
147
+ def chef_repo
148
+ (Cucumber::Chef.locate_parent(".chef") rescue nil)
149
+ end
150
+
151
+ ################################################################################
152
+
153
+ def in_chef_repo?
154
+ ((chef_repo && File.exists?(chef_repo) && File.directory?(chef_repo)) ? true : false)
155
+ end
156
+
157
+ def tag(name=nil)
158
+ [ name, "v#{Cucumber::Chef::VERSION}" ].compact.join(" ")
159
+ end
160
+
161
+ ################################################################################
162
+
163
+ def load_config(name=nil)
164
+ if !in_chef_repo?
165
+ message = "It does not look like you are inside a chef-repo! Please relocate to one and execute your command again!"
166
+ logger.fatal { message }
167
+ raise message
168
+ end
169
+ name and logger.info { "loading #{name}" }
170
+ logger.info { "load_config(#{Cucumber::Chef.config_rb})" }
171
+ Cucumber::Chef::Config.load
172
+ load_knife
173
+ end
174
+
175
+ ################################################################################
176
+
177
+ def load_knife
178
+ test_lab = (Cucumber::Chef::TestLab.new rescue nil)
179
+ if (test_lab && (test_lab.labs_running.count > 0))
180
+ if File.exists?(Cucumber::Chef.knife_rb)
181
+ logger.info { "load_knife(#{Cucumber::Chef.knife_rb})" }
182
+ ::Chef::Config.from_file(Cucumber::Chef.knife_rb)
183
+
184
+ chef_server_url = "http://#{test_lab.labs_running.first.public_ip_address}:4000"
185
+ logger.info { "chef_server_url(#{chef_server_url})" }
186
+ ::Chef::Config[:chef_server_url] = chef_server_url
187
+ else
188
+ logger.warn { "We found the test lab; but the knife config '#{Cucumber::Chef.knife_rb}' was missing!" }
189
+ end
190
+ else
191
+ logger.info { "load_knife(#{Cucumber::Chef.knife_rb})" }
192
+ ::Chef::Config.from_file(Cucumber::Chef.knife_rb)
193
+ end
194
+ end
195
+
196
+ ################################################################################
197
+
198
+ def logger
199
+ if (!defined?($logger) || $logger.nil?)
200
+ $logger = ZTK::Logger.new(Cucumber::Chef.log_file)
201
+ Cucumber::Chef.is_rc? and ($logger.level = ZTK::Logger::DEBUG)
202
+
203
+ headers = {
204
+ "program" => $0.to_s,
205
+ "version" => Cucumber::Chef::VERSION,
206
+ "uname" => %x(uname -a).chomp.strip,
207
+ "chef_repo" => chef_repo,
208
+ "chef_version" => ::Chef::VERSION,
209
+ "log_file" => log_file,
210
+ "knife_rb" => knife_rb,
211
+ "config_rb" => config_rb,
212
+ "servers_bin" => servers_bin,
213
+ "ruby_version" => RUBY_VERSION,
214
+ "ruby_patchlevel" => RUBY_PATCHLEVEL,
215
+ "ruby_platform" => RUBY_PLATFORM
216
+ }
217
+ if RUBY_VERSION >= "1.9"
218
+ headers.merge!("ruby_engine" => RUBY_ENGINE)
219
+ end
220
+ max_key_length = headers.keys.collect{ |key| key.to_s.length }.max
221
+
222
+ $logger.info { ("=" * 80) }
223
+ headers.sort.each do |key, value|
224
+ $logger.info { "%#{max_key_length}s: %s" % [ key.upcase, value.to_s ] }
225
+ end
226
+ end
227
+
228
+ $logger
229
+ end
230
+
141
231
  end
142
232
 
143
233
  end
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # Author: Stephen Nelson-Smith <stephen@atalanta-systems.com>
4
4
  # Author: Zachary Patten <zachary@jovelabs.com>
5
- # Copyright: Copyright (c) 2011-2012 Atalanta Systems Ltd
5
+ # Copyright: Copyright (c) 2011-2013 Atalanta Systems Ltd
6
6
  # License: Apache License, Version 2.0
7
7
  #
8
8
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -24,7 +24,7 @@ module Cucumber
24
24
 
25
25
  ################################################################################
26
26
 
27
- VERSION = "2.0.7" unless const_defined?(:VERSION)
27
+ VERSION = "2.1.0.rc.0" unless const_defined?(:VERSION)
28
28
 
29
29
  ################################################################################
30
30
 
data/lib/cucumber/chef.rb CHANGED
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # Author: Stephen Nelson-Smith <stephen@atalanta-systems.com>
4
4
  # Author: Zachary Patten <zachary@jovelabs.com>
5
- # Copyright: Copyright (c) 2011-2012 Atalanta Systems Ltd
5
+ # Copyright: Copyright (c) 2011-2013 Atalanta Systems Ltd
6
6
  # License: Apache License, Version 2.0
7
7
  #
8
8
  # Licensed under the Apache License, Version 2.0 (the "License");
data/lib/cucumber-chef.rb CHANGED
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # Author: Stephen Nelson-Smith <stephen@atalanta-systems.com>
4
4
  # Author: Zachary Patten <zachary@jovelabs.com>
5
- # Copyright: Copyright (c) 2011-2012 Atalanta Systems Ltd
5
+ # Copyright: Copyright (c) 2011-2013 Atalanta Systems Ltd
6
6
  # License: Apache License, Version 2.0
7
7
  #
8
8
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # Author: Stephen Nelson-Smith <stephen@atalanta-systems.com>
4
4
  # Author: Zachary Patten <zachary@jovelabs.com>
5
- # Copyright: Copyright (c) 2011-2012 Atalanta Systems Ltd
5
+ # Copyright: Copyright (c) 2011-2013 Atalanta Systems Ltd
6
6
  # License: Apache License, Version 2.0
7
7
  #
8
8
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # Author: Stephen Nelson-Smith <stephen@atalanta-systems.com>
4
4
  # Author: Zachary Patten <zachary@jovelabs.com>
5
- # Copyright: Copyright (c) 2011-2012 Atalanta Systems Ltd
5
+ # Copyright: Copyright (c) 2011-2013 Atalanta Systems Ltd
6
6
  # License: Apache License, Version 2.0
7
7
  #
8
8
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # Author: Stephen Nelson-Smith <stephen@atalanta-systems.com>
4
4
  # Author: Zachary Patten <zachary@jovelabs.com>
5
- # Copyright: Copyright (c) 2011-2012 Atalanta Systems Ltd
5
+ # Copyright: Copyright (c) 2011-2013 Atalanta Systems Ltd
6
6
  # License: Apache License, Version 2.0
7
7
  #
8
8
  # Licensed under the Apache License, Version 2.0 (the "License");
data/spec/spec_helper.rb CHANGED
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # Author: Stephen Nelson-Smith <stephen@atalanta-systems.com>
4
4
  # Author: Zachary Patten <zachary@jovelabs.com>
5
- # Copyright: Copyright (c) 2011-2012 Atalanta Systems Ltd
5
+ # Copyright: Copyright (c) 2011-2013 Atalanta Systems Ltd
6
6
  # License: Apache License, Version 2.0
7
7
  #
8
8
  # Licensed under the Apache License, Version 2.0 (the "License");
metadata CHANGED
@@ -1,8 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber-chef
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.7
5
- prerelease:
4
+ version: 2.1.0.rc.0
5
+ prerelease: 6
6
6
  platform: ruby
7
7
  authors:
8
8
  - Stephen Nelson-Smith
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-10-15 00:00:00.000000000 Z
13
+ date: 2013-01-21 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: chef
@@ -147,7 +147,7 @@ dependencies:
147
147
  requirements:
148
148
  - - ! '>='
149
149
  - !ruby/object:Gem::Version
150
- version: '0'
150
+ version: 0.0.15
151
151
  type: :runtime
152
152
  prerelease: false
153
153
  version_requirements: !ruby/object:Gem::Requirement
@@ -155,7 +155,7 @@ dependencies:
155
155
  requirements:
156
156
  - - ! '>='
157
157
  - !ruby/object:Gem::Version
158
- version: '0'
158
+ version: 0.0.15
159
159
  - !ruby/object:Gem::Dependency
160
160
  name: simplecov
161
161
  requirement: !ruby/object:Gem::Requirement
@@ -263,6 +263,7 @@ files:
263
263
  - chef_repo/cookbooks/cucumber-chef/templates/default/lxc-install-chef.erb
264
264
  - chef_repo/cookbooks/cucumber-chef/templates/default/motd.erb
265
265
  - chef_repo/cookbooks/cucumber-chef/templates/default/named-conf-local.erb
266
+ - chef_repo/cookbooks/cucumber-chef/templates/default/solrconfig.erb
266
267
  - chef_repo/cookbooks/cucumber-chef/templates/default/ssh-config.erb
267
268
  - chef_repo/roles/test_lab.rb
268
269
  - cucumber-chef.gemspec
@@ -301,10 +302,12 @@ files:
301
302
  - lib/cucumber/chef/templates/cucumber-chef/config-rb.erb
302
303
  - lib/cucumber/chef/templates/cucumber-chef/cucumber-yml.erb
303
304
  - lib/cucumber/chef/templates/cucumber-chef/knife-rb.erb
305
+ - lib/cucumber/chef/templates/cucumber/cc-hooks.rb
304
306
  - lib/cucumber/chef/templates/cucumber/env.rb
305
307
  - lib/cucumber/chef/templates/cucumber/example_feature.erb
306
308
  - lib/cucumber/chef/templates/cucumber/example_steps.erb
307
309
  - lib/cucumber/chef/templates/cucumber/readme-data_bags.erb
310
+ - lib/cucumber/chef/templates/cucumber/readme-environments.erb
308
311
  - lib/cucumber/chef/templates/cucumber/readme-keys.erb
309
312
  - lib/cucumber/chef/templates/cucumber/readme-roles.erb
310
313
  - lib/cucumber/chef/templates/cucumber/readme.erb