depengine 3.0.20 → 3.0.21

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 (71) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +8 -0
  3. data/.rubocop_todo.yml +52 -0
  4. data/Gemfile.lock +16 -1
  5. data/Rakefile +9 -9
  6. data/bin/cdb_crypt +2 -2
  7. data/bin/de +1 -1
  8. data/bin/depengine +2 -2
  9. data/bin/spec_setup +2 -2
  10. data/depengine.gemspec +22 -21
  11. data/lib/depengine/asserter/url.rb +8 -9
  12. data/lib/depengine/cli.rb +12 -14
  13. data/lib/depengine/dsl/cdb.rb +16 -17
  14. data/lib/depengine/dsl/deployment.rb +42 -50
  15. data/lib/depengine/dsl/dweb.rb +10 -11
  16. data/lib/depengine/dsl/executor.rb +5 -5
  17. data/lib/depengine/dsl/fileops.rb +3 -4
  18. data/lib/depengine/dsl/helper.rb +26 -28
  19. data/lib/depengine/dsl/iis.rb +21 -24
  20. data/lib/depengine/dsl/patch.rb +22 -46
  21. data/lib/depengine/dsl/publisher.rb +14 -14
  22. data/lib/depengine/dsl/remote.rb +11 -13
  23. data/lib/depengine/dsl/repository.rb +19 -21
  24. data/lib/depengine/dsl/template.rb +19 -19
  25. data/lib/depengine/dsl/zip.rb +24 -24
  26. data/lib/depengine/helper/cli_helper.rb +9 -11
  27. data/lib/depengine/helper/hudson.rb +15 -19
  28. data/lib/depengine/helper/mail.rb +19 -25
  29. data/lib/depengine/helper/properties.rb +33 -52
  30. data/lib/depengine/helper/smb.rb +19 -25
  31. data/lib/depengine/helper/validations.rb +7 -7
  32. data/lib/depengine/helper/yaml.rb +7 -9
  33. data/lib/depengine/log/log.rb +3 -6
  34. data/lib/depengine/processor/erb_template.rb +42 -47
  35. data/lib/depengine/processor/fileops.rb +39 -48
  36. data/lib/depengine/processor/local_execute.rb +6 -4
  37. data/lib/depengine/processor/properties.rb +34 -56
  38. data/lib/depengine/processor/sed.rb +8 -12
  39. data/lib/depengine/processor/tags.rb +9 -10
  40. data/lib/depengine/processor/template.rb +27 -32
  41. data/lib/depengine/processor/zip.rb +16 -20
  42. data/lib/depengine/provider/cdb.rb +64 -71
  43. data/lib/depengine/provider/cdb_filesystem.rb +18 -26
  44. data/lib/depengine/provider/git.rb +37 -42
  45. data/lib/depengine/provider/repository.rb +161 -176
  46. data/lib/depengine/publisher/dweb.rb +74 -90
  47. data/lib/depengine/publisher/iis.rb +23 -30
  48. data/lib/depengine/publisher/rsync.rb +14 -17
  49. data/lib/depengine/publisher/samba.rb +12 -14
  50. data/lib/depengine/publisher/sftp.rb +51 -61
  51. data/lib/depengine/publisher/ssh.rb +19 -22
  52. data/lib/depengine/publisher/tomcat.rb +19 -21
  53. data/lib/depengine/reporter/cdb.rb +2 -3
  54. data/lib/depengine/version.rb +1 -1
  55. data/lib/depengine.rb +1 -2
  56. data/spec/cdb_spec.rb +8 -10
  57. data/spec/demo_recipe/recipes/demo.rb +10 -10
  58. data/spec/deployhelper_spec.rb +20 -21
  59. data/spec/fileops_spec.rb +11 -12
  60. data/spec/git_spec.rb +8 -4
  61. data/spec/helper_spec.rb +75 -75
  62. data/spec/junit.rb +47 -49
  63. data/spec/local_execute.rb +7 -7
  64. data/spec/log_spec.rb +17 -18
  65. data/spec/properties_spec.rb +13 -15
  66. data/spec/recipe_spec.rb +15 -16
  67. data/spec/repository_spec.rb +20 -20
  68. data/spec/ssh_spec.rb +18 -19
  69. data/spec/template_spec.rb +30 -30
  70. data/spec/zip_spec.rb +7 -7
  71. metadata +18 -2
data/spec/helper_spec.rb CHANGED
@@ -1,22 +1,22 @@
1
- $LOAD_PATH.unshift(File.expand_path(File.dirname(__FILE__) + "/../lib"))
1
+ $LOAD_PATH.unshift(File.expand_path(File.dirname(__FILE__) + '/../lib'))
2
2
  require 'depengine'
3
3
  require 'depengine/cli'
4
4
  require 'tmpdir'
5
5
  require 'fileutils'
6
6
 
7
- describe "the date_unique method" do
7
+ describe 'the date_unique method' do
8
8
 
9
9
  before :each do
10
10
  $recipe_config_backup = $recipe_config
11
11
  $recipe_config = {
12
- :deploy_home => "/tmp/deploy_home",
13
- :recipe_base_dir => "/tmp/recipe_base_dir",
14
- :env => "TEST",
15
- :version => "42.23.0",
16
- :log_level => "ERROR",
17
- :skip_cdb_setup => true,
18
- :application_name => "testenvapp",
19
- :module_name => "testenvmodule"
12
+ deploy_home: '/tmp/deploy_home',
13
+ recipe_base_dir: '/tmp/recipe_base_dir',
14
+ env: 'TEST',
15
+ version: '42.23.0',
16
+ log_level: 'ERROR',
17
+ skip_cdb_setup: true,
18
+ application_name: 'testenvapp',
19
+ module_name: 'testenvmodule'
20
20
  }
21
21
  end
22
22
 
@@ -24,15 +24,15 @@ describe "the date_unique method" do
24
24
  $recipe_config = $recipe_config_backup
25
25
  end
26
26
 
27
- it "should use a specified format" do
28
- expect(Deployment::Worker.new.date_unique("%Y")).to match /^\d{4}$/
27
+ it 'should use a specified format' do
28
+ expect(Deployment::Worker.new.date_unique('%Y')).to match(/^\d{4}$/)
29
29
  end
30
30
 
31
- it "should have a default format" do
32
- expect(Deployment::Worker.new.date_unique).to match /^\d{4}-\d{2}-\d{2}_\d+$/
31
+ it 'should have a default format' do
32
+ expect(Deployment::Worker.new.date_unique).to match(/^\d{4}-\d{2}-\d{2}_\d+$/)
33
33
  end
34
34
 
35
- it "should cache its object" do
35
+ it 'should cache its object' do
36
36
  w = Deployment::Worker.new
37
37
  first = w.date_unique
38
38
  sleep(1)
@@ -41,18 +41,18 @@ describe "the date_unique method" do
41
41
 
42
42
  end
43
43
 
44
- describe "the copy_to_workspace method" do
44
+ describe 'the copy_to_workspace method' do
45
45
  before :each do
46
46
  $recipe_config_backup = $recipe_config
47
47
  $recipe_config = {
48
- :deploy_home => Dir.tmpdir,
49
- :recipe_base_dir => File.expand_path(File.dirname(__FILE__) + "/demo_recipe/"),
50
- :env => "TEST",
51
- :version => "42.23.0",
52
- :log_level => "ERROR",
53
- :skip_cdb_setup => true,
54
- :application_name => "testenvapp",
55
- :module_name => "testenvmodule"
48
+ deploy_home: Dir.tmpdir,
49
+ recipe_base_dir: File.expand_path(File.dirname(__FILE__) + '/demo_recipe/'),
50
+ env: 'TEST',
51
+ version: '42.23.0',
52
+ log_level: 'ERROR',
53
+ skip_cdb_setup: true,
54
+ application_name: 'testenvapp',
55
+ module_name: 'testenvmodule'
56
56
  }
57
57
  end
58
58
 
@@ -61,42 +61,42 @@ describe "the copy_to_workspace method" do
61
61
  $recipe_config = $recipe_config_backup
62
62
  end
63
63
 
64
- context "given an array of directories" do
65
- it "should copy all direcotries" do
66
- $recipe_config[:copy_to_workspace] = ["config"]
64
+ context 'given an array of directories' do
65
+ it 'should copy all direcotries' do
66
+ $recipe_config[:copy_to_workspace] = ['config']
67
67
  Deployment::Worker.new
68
- expect(File.directory?(File.join($recipe_config[:deploy_home], "config"))).to be true
69
- expect(File.file?(File.join($recipe_config[:deploy_home], "config", "config.properties"))).to be true
68
+ expect(File.directory?(File.join($recipe_config[:deploy_home], 'config'))).to be true
69
+ expect(File.file?(File.join($recipe_config[:deploy_home], 'config', 'config.properties'))).to be true
70
70
  end
71
71
  end
72
- context "set to a truthy object" do
73
- it "should copy the config/ dir" do
72
+ context 'set to a truthy object' do
73
+ it 'should copy the config/ dir' do
74
74
  $recipe_config[:copy_to_workspace] = true
75
75
  Deployment::Worker.new
76
- expect(File.file?(File.join($recipe_config[:deploy_home], "config", "config.properties"))).to be true
76
+ expect(File.file?(File.join($recipe_config[:deploy_home], 'config', 'config.properties'))).to be true
77
77
  end
78
78
  end
79
- context "not given" do
80
- it "should not copy anything" do
79
+ context 'not given' do
80
+ it 'should not copy anything' do
81
81
  $recipe_config[:copy_to_workspace] = nil
82
82
  Deployment::Worker.new
83
- expect(File.file?(File.join($recipe_config[:deploy_home], "config", "config.properties"))).to be false
83
+ expect(File.file?(File.join($recipe_config[:deploy_home], 'config', 'config.properties'))).to be false
84
84
  end
85
85
  end
86
86
  end
87
87
 
88
- describe "the report_by_mail method" do
88
+ describe 'the report_by_mail method' do
89
89
  before :each do
90
90
  $recipe_config_backup = $recipe_config
91
91
  $recipe_config = {
92
- :deploy_home => Dir.tmpdir,
93
- :recipe_base_dir => File.expand_path(File.dirname(__FILE__) + "/demo_recipe/"),
94
- :env => "TEST",
95
- :version => "42.23.0",
96
- :log_level => "ERROR",
97
- :skip_cdb_setup => true,
98
- :application_name => "testenvapp",
99
- :module_name => "testenvmodule"
92
+ deploy_home: Dir.tmpdir,
93
+ recipe_base_dir: File.expand_path(File.dirname(__FILE__) + '/demo_recipe/'),
94
+ env: 'TEST',
95
+ version: '42.23.0',
96
+ log_level: 'ERROR',
97
+ skip_cdb_setup: true,
98
+ application_name: 'testenvapp',
99
+ module_name: 'testenvmodule'
100
100
  }
101
101
  end
102
102
  after :each do
@@ -104,43 +104,43 @@ describe "the report_by_mail method" do
104
104
  $recipe_config = $recipe_config_backup
105
105
  end
106
106
 
107
- it "should send a automatically filled mail via smtp" do
107
+ it 'should send a automatically filled mail via smtp' do
108
108
  worker = Deployment::Worker.new
109
109
  worker.cdb['deploy_email_from'] = "#{ENV['USER']}@localhost"
110
110
  worker.cdb['deploy_email_to'] = "#{ENV['USER']}@localhost"
111
- expect {worker.report_by_mail()}.to_not raise_error
111
+ expect { worker.report_by_mail }.to_not raise_error
112
112
  end
113
113
 
114
- it "should send a manually filled mail via smtp" do
114
+ it 'should send a manually filled mail via smtp' do
115
115
  worker = Deployment::Worker.new
116
116
  h = {
117
- :application_name => "thisisjustatestapplication",
118
- :module_name => "andthisatestmodule",
119
- :status => "somewhatsuccessful",
120
- :message => "i dont know what could possibly go wrong",
121
- :deploy_email_from => "#{ENV['USER']}@localhost",
122
- :deploy_email_to => "#{ENV['USER']}@localhost"
117
+ application_name: 'thisisjustatestapplication',
118
+ module_name: 'andthisatestmodule',
119
+ status: 'somewhatsuccessful',
120
+ message: 'i dont know what could possibly go wrong',
121
+ deploy_email_from: "#{ENV['USER']}@localhost",
122
+ deploy_email_to: "#{ENV['USER']}@localhost"
123
123
  }
124
- expect {worker.report_by_mail(h)}.to_not raise_error
124
+ expect { worker.report_by_mail(h) }.to_not raise_error
125
125
  end
126
126
 
127
- it "does set a subject" do
127
+ it 'does set a subject' do
128
128
  worker = Deployment::Worker.new
129
129
  h = {
130
- :application_name => "testapplication",
131
- :module_name => "testmodule",
132
- :job_name => "testjob",
133
- :status => "SUCCESS",
134
- :message => "i dont know what could possibly go wrong",
135
- :deploy_email_from => "#{ENV['USER']}@localhost",
136
- :deploy_email_to => "#{ENV['USER']}@localhost"
130
+ application_name: 'testapplication',
131
+ module_name: 'testmodule',
132
+ job_name: 'testjob',
133
+ status: 'SUCCESS',
134
+ message: 'i dont know what could possibly go wrong',
135
+ deploy_email_from: "#{ENV['USER']}@localhost",
136
+ deploy_email_to: "#{ENV['USER']}@localhost"
137
137
  }
138
138
  expect(worker).to receive(:sendmail).once.with(
139
- {:to => h[:deploy_email_to],
140
- :from => h[:deploy_email_from],
141
- :subject => "TEST testjob testmodule testapplication 42.23.0 SUCCESS",
142
- :body => kind_of(String)
143
- }
139
+ to: h[:deploy_email_to],
140
+ from: h[:deploy_email_from],
141
+ subject: 'TEST testjob testmodule testapplication 42.23.0 SUCCESS',
142
+ body: kind_of(String)
143
+
144
144
  )
145
145
  worker.report_by_mail(h)
146
146
  end
@@ -149,18 +149,18 @@ describe "the report_by_mail method" do
149
149
  it 'does include the git history in the message object' do
150
150
  worker = Deployment::Worker.new
151
151
  h = {
152
- :application_name => "testapplication",
153
- :module_name => "testmodule",
154
- :job_name => "testjob",
155
- :status => "SUCCESS",
156
- :message => "i dont know what could possibly go wrong",
157
- :deploy_email_from => "#{ENV['USER']}@localhost",
158
- :deploy_email_to => "#{ENV['USER']}@localhost"
152
+ application_name: 'testapplication',
153
+ module_name: 'testmodule',
154
+ job_name: 'testjob',
155
+ status: 'SUCCESS',
156
+ message: 'i dont know what could possibly go wrong',
157
+ deploy_email_from: "#{ENV['USER']}@localhost",
158
+ deploy_email_to: "#{ENV['USER']}@localhost"
159
159
  }
160
160
  git_history = "825dc42 foo improved\ne626123 bar renamed\n"
161
161
  allow(Processor).to receive(:local_execute).and_return(git_history)
162
162
  expect(worker).to receive(:report_by_mail).once.with(
163
- h.merge({:message => h[:message]+git_history})
163
+ h.merge(message: h[:message] + git_history)
164
164
  )
165
165
  worker.report_by_mail_with_git_history('', '', h)
166
166
  end
data/spec/junit.rb CHANGED
@@ -1,86 +1,84 @@
1
- =begin
2
-
3
- Copyright (c) 2012, Nathaniel Ritmeyer
4
- All rights reserved.
5
-
6
- Redistribution and use in source and binary forms, with or without
7
- modification, are permitted provided that the following conditions are met:
8
-
9
- 1. Redistributions of source code must retain the above copyright notice,
10
- this list of conditions and the following disclaimer.
11
-
12
- 2. Redistributions in binary form must reproduce the above copyright
13
- notice, this list of conditions and the following disclaimer in the
14
- documentation and/or other materials provided with the distribution.
15
-
16
- 3. Neither the name Nathaniel Ritmeyer nor the names of contributors to
17
- this software may be used to endorse or promote products derived from this
18
- software without specific prior written permission.
19
-
20
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
21
- IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22
- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23
- PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
24
- CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25
- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26
- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27
- OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28
- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29
- OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
30
- ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
-
32
- =end
1
+ #
2
+ # Copyright (c) 2012, Nathaniel Ritmeyer
3
+ # All rights reserved.
4
+ #
5
+ # Redistribution and use in source and binary forms, with or without
6
+ # modification, are permitted provided that the following conditions are met:
7
+ #
8
+ # 1. Redistributions of source code must retain the above copyright notice,
9
+ # this list of conditions and the following disclaimer.
10
+ #
11
+ # 2. Redistributions in binary form must reproduce the above copyright
12
+ # notice, this list of conditions and the following disclaimer in the
13
+ # documentation and/or other materials provided with the distribution.
14
+ #
15
+ # 3. Neither the name Nathaniel Ritmeyer nor the names of contributors to
16
+ # this software may be used to endorse or promote products derived from this
17
+ # software without specific prior written permission.
18
+ #
19
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
20
+ # IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
21
+ # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22
+ # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
23
+ # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
24
+ # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
25
+ # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
26
+ # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
27
+ # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
28
+ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
29
+ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
+ #
33
31
 
34
32
  require 'time'
35
33
  require 'builder'
36
34
  require 'rspec/core/formatters/base_formatter'
37
35
 
38
36
  class JUnit < RSpec::Core::Formatters::BaseFormatter
39
- def initialize output
37
+ def initialize(output)
40
38
  super output
41
39
  @test_results = []
42
40
  end
43
41
 
44
- def example_passed example
42
+ def example_passed(example)
45
43
  @test_results << example
46
44
  end
47
45
 
48
- def example_failed example
46
+ def example_failed(example)
49
47
  @test_results << example
50
48
  end
51
49
 
52
- def example_pending example
50
+ def example_pending(example)
53
51
  @test_results << example
54
52
  end
55
53
 
56
- def failure_details_for example
54
+ def failure_details_for(example)
57
55
  exception = example.metadata[:execution_result][:exception]
58
- exception.nil? ? "" : "#{exception.message}\n#{format_backtrace(exception.backtrace, example).join("\n")}"
56
+ exception.nil? ? '' : "#{exception.message}\n#{format_backtrace(exception.backtrace, example).join("\n")}"
59
57
  end
60
58
 
61
- def full_name_for example
62
- test_name = ""
59
+ def full_name_for(example)
60
+ test_name = ''
63
61
  current_example_group = example.metadata[:example_group]
64
- until current_example_group.nil? do
62
+ until current_example_group.nil?
65
63
  test_name = "#{current_example_group[:description]}." + test_name
66
64
  current_example_group = current_example_group[:example_group]
67
65
  end
68
66
  test_name << example.metadata[:description]
69
67
  end
70
68
 
71
- def dump_summary duration, example_count, failure_count, pending_count
72
- builder = Builder::XmlMarkup.new :indent => 2
73
- builder.instruct! :xml, :version => "1.0", :encoding => "UTF-8"
74
- builder.testsuite :errors => 0, :failures => failure_count, :skipped => pending_count, :tests => example_count, :time => duration, :timestamp => Time.now.iso8601 do
69
+ def dump_summary(duration, example_count, failure_count, pending_count)
70
+ builder = Builder::XmlMarkup.new indent: 2
71
+ builder.instruct! :xml, version: '1.0', encoding: 'UTF-8'
72
+ builder.testsuite errors: 0, failures: failure_count, skipped: pending_count, tests: example_count, time: duration, timestamp: Time.now.iso8601 do
75
73
  builder.properties
76
74
  @test_results.each do |test|
77
- builder.testcase :classname => full_name_for(test), :name => test.metadata[:full_description], :time => test.metadata[:execution_result][:run_time] do
75
+ builder.testcase classname: full_name_for(test), name: test.metadata[:full_description], time: test.metadata[:execution_result][:run_time] do
78
76
  case test.metadata[:execution_result][:status]
79
- when "failed"
80
- builder.failure :message => "failed #{test.metadata[:full_description]}", :type => "failed" do
77
+ when 'failed'
78
+ builder.failure message: "failed #{test.metadata[:full_description]}", type: 'failed' do
81
79
  builder.cdata! failure_details_for test
82
80
  end
83
- when "pending" then builder.skipped
81
+ when 'pending' then builder.skipped
84
82
  end
85
83
  end
86
84
  end
@@ -7,21 +7,21 @@ require_relative '../lib/depengine/log/log'
7
7
  $log = Log::DeploymentLogger.new
8
8
  $log.writer.level = Log4r::ERROR
9
9
 
10
- describe "the local executor" do
10
+ describe 'the local executor' do
11
11
  include Processor
12
12
 
13
- it "should execute commands locally" do
13
+ it 'should execute commands locally' do
14
14
  tmp_dir = Dir.mktmpdir
15
15
  begin
16
- local_execute(["touch #{tmp_dir}/dummy1","touch #{tmp_dir}/dummy2","ls -la #{tmp_dir}"])
17
- expect(File.file?(File.join(tmp_dir,'dummy1'))).to be_truthy
18
- expect(File.file?(File.join(tmp_dir,'dummy2'))).to be_truthy
16
+ local_execute(["touch #{tmp_dir}/dummy1", "touch #{tmp_dir}/dummy2", "ls -la #{tmp_dir}"])
17
+ expect(File.file?(File.join(tmp_dir, 'dummy1'))).to be_truthy
18
+ expect(File.file?(File.join(tmp_dir, 'dummy2'))).to be_truthy
19
19
  ensure
20
20
  FileUtils.remove_entry tmp_dir
21
21
  end
22
22
  end
23
23
 
24
- it "does stop executing further commands" do
25
- expect{local_execute(["false"])}.to raise_error
24
+ it 'does stop executing further commands' do
25
+ expect { local_execute(['false']) }.to raise_error
26
26
  end
27
27
  end
data/spec/log_spec.rb CHANGED
@@ -4,67 +4,66 @@ require_relative '../lib/depengine/log/log'
4
4
  require 'stringio'
5
5
  require 'tmpdir'
6
6
 
7
- describe "logging" do
8
- it "should log a message to STDOUT" do
7
+ describe 'logging' do
8
+ it 'should log a message to STDOUT' do
9
9
  # redirect STDOUT
10
10
  sio = StringIO.new
11
11
  old_stdout, $stdout = $stdout, sio
12
12
 
13
13
  log = Log::DeploymentLogger.new
14
14
  log.writer.level = Log4r::DEBUG
15
- log.writer.debug "Logger is now setup"
15
+ log.writer.debug 'Logger is now setup'
16
16
 
17
17
  # restore STDOUT
18
18
  $stdout = old_stdout
19
19
  result = sio.string
20
20
 
21
- result.should include( "Logger is now setup" )
21
+ result.should include('Logger is now setup')
22
22
  end
23
23
 
24
- it "should log a message to STDOUT with priority WARN" do
24
+ it 'should log a message to STDOUT with priority WARN' do
25
25
  # redirect STDOUT
26
26
  sio = StringIO.new
27
27
  old_stdout, $stdout = $stdout, sio
28
28
 
29
29
  log = Log::DeploymentLogger.new
30
30
  log.writer.level = Log4r::WARN
31
- log.writer.warn "Logger is now setup"
31
+ log.writer.warn 'Logger is now setup'
32
32
 
33
33
  # restore STDOUT
34
34
  $stdout = old_stdout
35
35
  result = sio.string
36
36
 
37
- result.should include( "Logger is now setup" )
37
+ result.should include('Logger is now setup')
38
38
  end
39
39
 
40
- it "should log a message to a logfile" do
40
+ it 'should log a message to a logfile' do
41
41
  tmp_dir = Dir.mktmpdir
42
42
  begin
43
43
  log = Log::DeploymentLogger.new
44
- log.add_outputter(Log4r::FileOutputter.new('log_warn', :filename => "#{tmp_dir}/log_spec.log", :level => Log4r::INFO))
45
- log.writer.info "Logger is now setup"
44
+ log.add_outputter(Log4r::FileOutputter.new('log_warn', filename: "#{tmp_dir}/log_spec.log", level: Log4r::INFO))
45
+ log.writer.info 'Logger is now setup'
46
46
 
47
47
  File.open("#{tmp_dir}/log_spec.log", 'r') do |line|
48
- line.gets.should include("Logger is now setup")
48
+ line.gets.should include('Logger is now setup')
49
49
  end
50
50
  ensure
51
51
  FileUtils.rm_rf tmp_dir
52
52
  end
53
53
  end
54
54
 
55
- it "should log a message to a logfile with a level set" do
55
+ it 'should log a message to a logfile with a level set' do
56
56
  tmp_dir = Dir.mktmpdir
57
57
  begin
58
58
  log = Log::DeploymentLogger.new
59
- log.add_outputter(Log4r::FileOutputter.new('log_warn', :filename => "#{tmp_dir}/log_spec.log"), Log4r::WARN)
60
- log.writer.info "this is an info message"
61
- log.writer.warn "this is a warn message"
59
+ log.add_outputter(Log4r::FileOutputter.new('log_warn', filename: "#{tmp_dir}/log_spec.log"), Log4r::WARN)
60
+ log.writer.info 'this is an info message'
61
+ log.writer.warn 'this is a warn message'
62
62
 
63
- File.open("#{tmp_dir}/log_spec.log", 'r').read.should_not include("this is an info message")
64
- File.open("#{tmp_dir}/log_spec.log", 'r').read.should include("this is a warn message")
63
+ File.open("#{tmp_dir}/log_spec.log", 'r').read.should_not include('this is an info message')
64
+ File.open("#{tmp_dir}/log_spec.log", 'r').read.should include('this is a warn message')
65
65
  ensure
66
66
  FileUtils.rm_rf tmp_dir
67
67
  end
68
68
  end
69
69
  end
70
-
@@ -1,27 +1,25 @@
1
1
  require_relative '../lib/depengine/processor/properties'
2
2
 
3
- describe "the properties patcher" do
3
+ describe 'the properties patcher' do
4
4
 
5
- it "should patch properties in a file by key/value" do
6
- test = Processor::Properties.new()
7
- test.properties_hash = { "webhost" => "www.sinnerschrader.com", "mailhost" => "mail.google.com" }
8
- test.assigner = "="
9
- test.patch("spec/properties/source/config.properties", "spec/properties/target/config.properties")
5
+ it 'should patch properties in a file by key/value' do
6
+ test = Processor::Properties.new
7
+ test.properties_hash = { 'webhost' => 'www.sinnerschrader.com', 'mailhost' => 'mail.google.com' }
8
+ test.assigner = '='
9
+ test.patch('spec/properties/source/config.properties', 'spec/properties/target/config.properties')
10
10
 
11
-
12
- File.open('spec/properties/target/config.properties').read.should include "webhost=www.sinnerschrader.com"
11
+ File.open('spec/properties/target/config.properties').read.should include 'webhost=www.sinnerschrader.com'
13
12
 
14
13
  FileUtils.rm_rf('spec/properties/target/config.properties')
15
14
  end
16
15
 
17
- it "should patch strings in file" do
18
- test = Processor::Properties.new()
19
- test.properties_hash = { "old_string" => "new_string", "even older string" => "" }
20
- test.substitute("spec/properties/source/random.rb", "spec/properties/target/random.rb")
16
+ it 'should patch strings in file' do
17
+ test = Processor::Properties.new
18
+ test.properties_hash = { 'old_string' => 'new_string', 'even older string' => '' }
19
+ test.substitute('spec/properties/source/random.rb', 'spec/properties/target/random.rb')
21
20
 
22
- File.open('spec/properties/target/random.rb').read.should include "new_string"
23
- File.open('spec/properties/target/random.rb').read.should_not include "even older string"
21
+ File.open('spec/properties/target/random.rb').read.should include 'new_string'
22
+ File.open('spec/properties/target/random.rb').read.should_not include 'even older string'
24
23
  FileUtils.rm_rf('spec/properties/target/random.rb')
25
24
  end
26
25
  end
27
-
data/spec/recipe_spec.rb CHANGED
@@ -1,34 +1,33 @@
1
1
  require_relative '../lib/depengine'
2
2
 
3
- describe "a recipe" do
3
+ describe 'a recipe' do
4
4
 
5
- context "when running" do
6
- it "does create a Deployment.deliver block" do
5
+ context 'when running' do
6
+ it 'does create a Deployment.deliver block' do
7
7
 
8
- Deployment::Methods.set :env, "test"
9
- Deployment::Methods.set :version, "0.42"
10
- Deployment::Methods.set :deploy_home, "."
11
- Deployment::Methods.set :module_name, "module_name"
8
+ Deployment::Methods.set :env, 'test'
9
+ Deployment::Methods.set :version, '0.42'
10
+ Deployment::Methods.set :deploy_home, '.'
11
+ Deployment::Methods.set :module_name, 'module_name'
12
12
 
13
- expect{Deployment.deliver {puts "."}}.to raise_error(SystemExit)
13
+ expect { Deployment.deliver { puts '.' } }.to raise_error(SystemExit)
14
14
 
15
15
  end
16
16
 
17
- it "sets some values with the set method" do
17
+ it 'sets some values with the set method' do
18
18
  Deployment::Methods.set :spec_key, :this_is_set
19
19
  expect($recipe_config[:spec_key]).to be :this_is_set
20
20
  end
21
21
 
22
22
  end
23
23
 
24
+ context 'before running' do
25
+ it 'needs to set a module name' do
26
+ Deployment::Methods.set :env, 'test'
27
+ Deployment::Methods.set :version, '0.42'
28
+ Deployment::Methods.set :deploy_home, '.'
24
29
 
25
- context "before running" do
26
- it "needs to set a module name" do
27
- Deployment::Methods.set :env, "test"
28
- Deployment::Methods.set :version, "0.42"
29
- Deployment::Methods.set :deploy_home, "."
30
-
31
- expect{Deployment.deliver {puts "."}}.to raise_error(ArgumentError)
30
+ expect { Deployment.deliver { puts '.' } }.to raise_error(ArgumentError)
32
31
  end
33
32
  end
34
33