chap 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/chap/cli.rb +1 -0
- data/lib/chap/runner.rb +2 -0
- data/lib/chap/version.rb +1 -1
- data/spec/lib/chap_spec.rb +7 -6
- metadata +1 -1
data/lib/chap/cli.rb
CHANGED
@@ -18,6 +18,7 @@ module Chap
|
|
18
18
|
Deploys code using settings from chap.json and node.json. chap.json and node.json should be referenced in chap.yml.
|
19
19
|
EOL
|
20
20
|
method_option :quiet, :aliases => '-q', :type => :boolean, :desc => "Quiet commands"
|
21
|
+
method_option :silence, :aliases => '-s', :type => :boolean, :desc => "Complete silence"
|
21
22
|
method_option :config, :aliases => '-c', :default => '/etc/chef/chap.yml', :desc => "chap.yml config to use"
|
22
23
|
method_option :stop_at_symlink, :type => :boolean, :desc => "Deploy code but stop right before the symlink"
|
23
24
|
method_option :cont_at_symlink, :type => :boolean, :desc => "Symlink and contine the deploy"
|
data/lib/chap/runner.rb
CHANGED
data/lib/chap/version.rb
CHANGED
data/spec/lib/chap_spec.rb
CHANGED
@@ -12,6 +12,7 @@ describe Chap do
|
|
12
12
|
describe "internal code deploy" do
|
13
13
|
before(:each) do
|
14
14
|
@chap = Chap::Runner.new(
|
15
|
+
:silence => true,
|
15
16
|
:quiet => true,
|
16
17
|
:config => "#{system_root}/etc/chef/chap.yml"
|
17
18
|
)
|
@@ -31,7 +32,7 @@ describe Chap do
|
|
31
32
|
|
32
33
|
describe "cli deploy" do
|
33
34
|
it "should deploy code via command line" do
|
34
|
-
system("cd #{root} && ./bin/chap deploy -q -c #{system_root}/etc/chef/chap.yml")
|
35
|
+
system("cd #{root} && ./bin/chap deploy -s -q -c #{system_root}/etc/chef/chap.yml")
|
35
36
|
releases = Dir.glob("#{system_root}/data/chapdemo/releases/*").sort
|
36
37
|
timestamp = releases.last.split('/').last
|
37
38
|
release_path = "#{system_root}/data/chapdemo/releases/#{timestamp}"
|
@@ -44,7 +45,7 @@ describe Chap do
|
|
44
45
|
end
|
45
46
|
|
46
47
|
it "should deploy code and test hook" do
|
47
|
-
system("cd #{root} && ./bin/chap deploy -q -c #{system_root}/etc/chef/chap.yml")
|
48
|
+
system("cd #{root} && ./bin/chap deploy -s -q -c #{system_root}/etc/chef/chap.yml")
|
48
49
|
releases = Dir.glob("#{system_root}/data/chapdemo/releases/*").sort
|
49
50
|
timestamp = releases.last.split('/').last
|
50
51
|
release_path = "#{system_root}/data/chapdemo/releases/#{timestamp}"
|
@@ -65,7 +66,7 @@ describe Chap do
|
|
65
66
|
end
|
66
67
|
|
67
68
|
it "should deploy code stopping and continuing at symlink" do
|
68
|
-
system("cd #{root} && ./bin/chap deploy --stop-at-symlink -q -c #{system_root}/etc/chef/chap.yml")
|
69
|
+
system("cd #{root} && ./bin/chap deploy --stop-at-symlink -s -q -c #{system_root}/etc/chef/chap.yml")
|
69
70
|
releases = Dir.glob("#{system_root}/data/chapdemo/releases/*").sort
|
70
71
|
timestamp = releases.last.split('/').last
|
71
72
|
release_path = "#{system_root}/data/chapdemo/releases/#{timestamp}"
|
@@ -77,7 +78,7 @@ describe Chap do
|
|
77
78
|
releases.should == 1
|
78
79
|
sleep 2 if tier(2)
|
79
80
|
# continue deploy
|
80
|
-
system("cd #{root} && ./bin/chap deploy --cont-at-symlink -q -c #{system_root}/etc/chef/chap.yml")
|
81
|
+
system("cd #{root} && ./bin/chap deploy --cont-at-symlink -s -q -c #{system_root}/etc/chef/chap.yml")
|
81
82
|
link = File.readlink(current_path)
|
82
83
|
link.should == release_path
|
83
84
|
end
|
@@ -102,9 +103,9 @@ describe Chap do
|
|
102
103
|
end
|
103
104
|
|
104
105
|
it "should only respect keep option" do
|
105
|
-
system("cd #{root} && ./bin/chap deploy -q -c #{system_root}/etc/chef/chap.yml")
|
106
|
+
system("cd #{root} && ./bin/chap deploy -s -q -c #{system_root}/etc/chef/chap.yml")
|
106
107
|
sleep 1
|
107
|
-
system("cd #{root} && ./bin/chap deploy -q -c #{system_root}/etc/chef/chap.yml")
|
108
|
+
system("cd #{root} && ./bin/chap deploy -s -q -c #{system_root}/etc/chef/chap.yml")
|
108
109
|
releases = Dir.glob("#{system_root}/data/chapdemo/releases/*").size
|
109
110
|
releases.should == 2 # test the keep option
|
110
111
|
end
|