engineyard 1.3.15 → 1.3.16

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.
@@ -189,7 +189,7 @@ module EY
189
189
  raise NoCommandError.new if cmd.nil? and hosts.count != 1
190
190
 
191
191
  hosts.each do |host|
192
- system "ssh #{environment.username}@#{host} #{cmd}"
192
+ system Escape.shell_command(['ssh', "#{environment.username}@#{host}", cmd].compact)
193
193
  end
194
194
  end
195
195
 
@@ -1,3 +1,3 @@
1
1
  module EY
2
- VERSION = '1.3.15'
2
+ VERSION = '1.3.16'
3
3
  end
@@ -11,7 +11,7 @@ describe "ey deploy without an eyrc file" do
11
11
  end
12
12
 
13
13
  it "prompts for authentication before continuing" do
14
- ey("deploy", :hide_err => true) do |input|
14
+ ey(%w[deploy], :hide_err => true) do |input|
15
15
  input.puts("test@test.test")
16
16
  input.puts("test")
17
17
  end
@@ -28,12 +28,12 @@ describe "ey deploy" do
28
28
  given "integration"
29
29
 
30
30
  def command_to_run(opts)
31
- cmd = "deploy"
32
- cmd << " --environment #{opts[:environment]}" if opts[:environment]
33
- cmd << " --app #{opts[:app]}" if opts[:app]
34
- cmd << " --account #{opts[:account]}" if opts[:account]
35
- cmd << " --ref #{opts[:ref]}" if opts[:ref]
36
- cmd << " --verbose" if opts[:verbose]
31
+ cmd = ["deploy"]
32
+ cmd << "--environment" << opts[:environment] if opts[:environment]
33
+ cmd << "--app" << opts[:app] if opts[:app]
34
+ cmd << "--account" << opts[:account] if opts[:account]
35
+ cmd << "--ref" << opts[:ref] if opts[:ref]
36
+ cmd << "--verbose" if opts[:verbose]
37
37
  cmd
38
38
  end
39
39
 
@@ -308,7 +308,7 @@ describe "ey deploy" do
308
308
  end
309
309
 
310
310
  it "passes the extra configuration to engineyard-serverside" do
311
- ey "deploy --extra-deploy-hook-options some:stuff more:crap"
311
+ ey %w[deploy --extra-deploy-hook-options some:stuff more:crap]
312
312
  extra_deploy_hook_options.should_not be_nil
313
313
  extra_deploy_hook_options['some'].should == 'stuff'
314
314
  extra_deploy_hook_options['more'].should == 'crap'
data/spec/ey/ey_spec.rb CHANGED
@@ -9,14 +9,14 @@ describe "ey" do
9
9
 
10
10
  context "run with an argument that is not a command" do
11
11
  it "tells the user that is not a command" do
12
- ey "foobarbaz", :expect_failure => true
12
+ ey %w[foobarbaz], :expect_failure => true
13
13
  @err.should include("Could not find command")
14
14
  end
15
15
  end
16
16
 
17
17
  context "run a command and a bad flag" do
18
18
  it "tells the user that is not a valid flag" do
19
- ey "help --expect-failure", :expect_failure => true
19
+ ey %w[help --expect-failure], :expect_failure => true
20
20
  @err.should include("Unknown switches")
21
21
  end
22
22
  end
@@ -9,7 +9,7 @@ describe "ey environments" do
9
9
  end
10
10
 
11
11
  it "lists the environments your app is in" do
12
- ey "environments"
12
+ ey %w[environments]
13
13
  @out.should include('rails232app (main)')
14
14
  @out.should =~ /giblets/
15
15
  @out.should =~ /bakon/
@@ -17,25 +17,25 @@ describe "ey environments" do
17
17
 
18
18
  it "reports failure to find a git repo when not in one" do
19
19
  Dir.chdir("/tmp") do
20
- ey "environments", :expect_failure => true
20
+ ey %w[environments], :expect_failure => true
21
21
  @err.should =~ /fatal: No git remotes found in .*\/tmp/
22
22
  @out.should_not =~ /no application configured/
23
23
  end
24
24
  end
25
25
 
26
26
  it "lists all environments that have apps with -a" do
27
- ey "environments -a"
27
+ ey %w[environments -a]
28
28
  @out.should include("bakon")
29
29
  @out.should include("giblets")
30
30
  end
31
31
 
32
32
  it "outputs simply with -s" do
33
- ey "environments -s", :debug => false
33
+ ey %w[environments -s], :debug => false
34
34
  @out.split(/\n/).sort.should == ["bakon", "giblets"]
35
35
  end
36
36
 
37
37
  it "outputs all environments (including ones with no apps) simply with -a and -s" do
38
- ey "environments -a -s", :debug => false
38
+ ey %w[environments -a -s], :debug => false
39
39
  @out.split(/\n/).sort.should == ["bakon", "beef", "giblets"]
40
40
  end
41
41
 
@@ -46,7 +46,7 @@ describe "ey environments with an ambiguous git repo" do
46
46
  it_should_behave_like "it has an ambiguous git repo"
47
47
 
48
48
  it "lists environments from all apps using the git repo" do
49
- ey "environments"
49
+ ey %w[environments]
50
50
  @out.should =~ /git repo matches multiple/i
51
51
  @out.should include("giblets")
52
52
  @out.should include("keycollector_production")
data/spec/ey/logs_spec.rb CHANGED
@@ -5,7 +5,7 @@ describe "ey logs" do
5
5
 
6
6
  it "prints logs returned by awsm" do
7
7
  api_scenario "one app, one environment"
8
- ey "logs -e giblets"
8
+ ey %w[logs -e giblets]
9
9
  @out.should match(/MAIN LOG OUTPUT/)
10
10
  @out.should match(/CUSTOM LOG OUTPUT/)
11
11
  @err.should be_empty
@@ -13,7 +13,7 @@ describe "ey logs" do
13
13
 
14
14
  it "complains when it can't infer the environment" do
15
15
  api_scenario "one app, many environments"
16
- ey "logs", :expect_failure => true
16
+ ey %w[logs], :expect_failure => true
17
17
  @err.should =~ /repository url in this directory is ambiguous/i
18
18
  end
19
19
  end
@@ -22,9 +22,9 @@ describe "ey logs" do
22
22
  given "integration"
23
23
 
24
24
  def command_to_run(opts)
25
- cmd = "logs"
26
- cmd << " --environment #{opts[:environment]}" if opts[:environment]
27
- cmd << " --account #{opts[:account]}" if opts[:account]
25
+ cmd = ["logs"]
26
+ cmd << "--environment" << opts[:environment] if opts[:environment]
27
+ cmd << "--account" << opts[:account] if opts[:account]
28
28
  cmd
29
29
  end
30
30
 
@@ -4,9 +4,9 @@ describe "ey rebuild" do
4
4
  given "integration"
5
5
 
6
6
  def command_to_run(opts)
7
- cmd = "rebuild"
8
- cmd << " --environment #{opts[:environment]}" if opts[:environment]
9
- cmd << " --account #{opts[:account]}" if opts[:account]
7
+ cmd = ["rebuild"]
8
+ cmd << "--environment" << opts[:environment] if opts[:environment]
9
+ cmd << "--account" << opts[:account] if opts[:account]
10
10
  cmd
11
11
  end
12
12
 
@@ -4,9 +4,9 @@ describe "ey recipes apply" do
4
4
  given "integration"
5
5
 
6
6
  def command_to_run(opts)
7
- cmd = "recipes apply"
8
- cmd << " -e #{opts[:environment]}" if opts[:environment]
9
- cmd << " --account #{opts[:account]}" if opts[:account]
7
+ cmd = %w[recipes apply]
8
+ cmd << "-e" << opts[:environment] if opts[:environment]
9
+ cmd << "--account" << opts[:account] if opts[:account]
10
10
  cmd
11
11
  end
12
12
 
@@ -17,13 +17,13 @@ describe "ey recipes apply" do
17
17
  it_should_behave_like "it takes an environment name and an account name"
18
18
 
19
19
  it "fails when given a bad option" do
20
- ey "web enable --lots --of --bogus --options", :expect_failure => true
20
+ ey %w[web enable --lots --of --bogus --options], :expect_failure => true
21
21
  @err.should include("Unknown switches")
22
22
  end
23
23
  end
24
24
 
25
25
  describe "ey recipes apply with an ambiguous git repo" do
26
26
  given "integration"
27
- def command_to_run(_) "recipes apply" end
27
+ def command_to_run(_) %w[recipes apply] end
28
28
  it_should_behave_like "it requires an unambiguous git repo"
29
29
  end
@@ -15,9 +15,9 @@ describe "ey recipes download" do
15
15
  end
16
16
 
17
17
  def command_to_run(opts)
18
- cmd = "recipes download"
19
- cmd << " --environment #{opts[:environment]}" if opts[:environment]
20
- cmd << " --account #{opts[:account]}" if opts[:account]
18
+ cmd = %w[recipes download]
19
+ cmd << "--environment" << opts[:environment] if opts[:environment]
20
+ cmd << "--account" << opts[:account] if opts[:account]
21
21
  cmd
22
22
  end
23
23
 
@@ -31,13 +31,13 @@ describe "ey recipes download" do
31
31
  it "fails when cookbooks/ already exists" do
32
32
  api_scenario "one app, one environment"
33
33
  Dir.mkdir("cookbooks")
34
- ey "recipes download", :expect_failure => true
34
+ ey %w[recipes download], :expect_failure => true
35
35
  @err.should match(/cookbooks.*already exists/i)
36
36
  end
37
37
  end
38
38
 
39
39
  describe "ey recipes download with an ambiguous git repo" do
40
40
  given "integration"
41
- def command_to_run(_) "recipes download" end
41
+ def command_to_run(_) %w[recipes download] end
42
42
  it_should_behave_like "it requires an unambiguous git repo"
43
43
  end
@@ -10,9 +10,9 @@ describe "ey recipes upload" do
10
10
  use_git_repo('+cookbooks')
11
11
 
12
12
  def command_to_run(opts)
13
- cmd = "recipes upload"
14
- cmd << " --environment #{opts[:environment]}" if opts[:environment]
15
- cmd << " --account #{opts[:account]}" if opts[:account]
13
+ cmd = %w[recipes upload]
14
+ cmd << "--environment" << opts[:environment] if opts[:environment]
15
+ cmd << "--account" << opts[:account] if opts[:account]
16
16
  cmd
17
17
  end
18
18
 
@@ -25,7 +25,7 @@ end
25
25
 
26
26
  describe "ey recipes upload with an ambiguous git repo" do
27
27
  given "integration"
28
- def command_to_run(_) "recipes upload" end
28
+ def command_to_run(_) %w[recipes upload] end
29
29
  it_should_behave_like "it requires an unambiguous git repo"
30
30
  end
31
31
 
@@ -47,7 +47,7 @@ describe "ey recipes upload from a separate cookbooks directory" do
47
47
  it "takes the environment specified by -e" do
48
48
  api_scenario "one app, one environment"
49
49
 
50
- ey "recipes upload -e giblets"
50
+ ey %w[recipes upload -e giblets]
51
51
  @out.should =~ /Recipes uploaded successfully/
52
52
  end
53
53
  end
@@ -69,7 +69,7 @@ describe "ey recipes upload from a separate cookbooks directory" do
69
69
  it "takes the environment specified by -e" do
70
70
  api_scenario "one app, one environment"
71
71
 
72
- ey "recipes upload -e giblets"
72
+ ey %w[recipes upload -e giblets]
73
73
  @out.should =~ /Recipes uploaded successfully/
74
74
  end
75
75
 
@@ -4,11 +4,11 @@ describe "ey rollback" do
4
4
  given "integration"
5
5
 
6
6
  def command_to_run(opts)
7
- cmd = "rollback"
8
- cmd << " -e #{opts[:environment]}" if opts[:environment]
9
- cmd << " -a #{opts[:app]}" if opts[:app]
10
- cmd << " -c #{opts[:account]}" if opts[:account]
11
- cmd << " --verbose" if opts[:verbose]
7
+ cmd = ["rollback"]
8
+ cmd << "-e" << opts[:environment] if opts[:environment]
9
+ cmd << "-a" << opts[:app] if opts[:app]
10
+ cmd << "-c" << opts[:account] if opts[:account]
11
+ cmd << "--verbose" if opts[:verbose]
12
12
  cmd
13
13
  end
14
14
 
@@ -23,7 +23,7 @@ describe "ey rollback" do
23
23
 
24
24
  it "passes along the web server stack to engineyard-serverside" do
25
25
  api_scenario "one app, one environment"
26
- ey "rollback"
26
+ ey %w[rollback]
27
27
  @ssh_commands.last.should =~ /--stack nginx_mongrel/
28
28
  end
29
29
 
@@ -41,7 +41,7 @@ describe "ey rollback" do
41
41
  end
42
42
 
43
43
  it "passes the extra configuration to engineyard-serverside" do
44
- ey "rollback --extra-deploy-hook-options some:stuff more:crap"
44
+ ey %w[rollback --extra-deploy-hook-options some:stuff more:crap]
45
45
  extra_deploy_hook_options.should_not be_nil
46
46
  extra_deploy_hook_options['some'].should == 'stuff'
47
47
  extra_deploy_hook_options['more'].should == 'crap'
@@ -55,7 +55,7 @@ describe "ey rollback" do
55
55
  after { File.unlink("ey.yml") }
56
56
 
57
57
  it "overrides what's in ey.yml" do
58
- ey "rollback --extra-deploy-hook-options beer:esb"
58
+ ey %w[rollback --extra-deploy-hook-options beer:esb]
59
59
  extra_deploy_hook_options['beer'].should == 'esb'
60
60
  end
61
61
  end
data/spec/ey/ssh_spec.rb CHANGED
@@ -7,7 +7,13 @@ shared_examples_for "running ey ssh" do
7
7
  include Spec::Helpers::SharedIntegrationTestUtils
8
8
 
9
9
  def extra_ey_options
10
- {:prepend_to_path => {'ssh' => "#!/bin/sh\necho ssh $*"}}
10
+ ssh_cmd = <<-RUBY
11
+ #!#{`which ruby`}
12
+ require "rubygems"
13
+ require "escape"
14
+ puts "ssh \#{Escape.shell_command(ARGV)}"
15
+ RUBY
16
+ {:prepend_to_path => {'ssh' => ssh_cmd}}
11
17
  end
12
18
  end
13
19
 
@@ -20,9 +26,8 @@ shared_examples_for "running ey ssh for select role" do
20
26
  end
21
27
 
22
28
  def command_to_run(opts)
23
- cmd = "ssh #{opts[:ssh_command]}"
24
- cmd << " #{@ssh_flag}"
25
- cmd << " --environment #{opts[:environment]}" if opts[:environment]
29
+ cmd = ["ssh", opts[:ssh_command]].compact + (@ssh_flag || [])
30
+ cmd << "--environment" << opts[:environment] if opts[:environment]
26
31
  cmd
27
32
  end
28
33
 
@@ -60,7 +65,7 @@ describe "ey ssh" do
60
65
  end
61
66
 
62
67
  it "complains if it has no app master" do
63
- ey "ssh -e bakon", :expect_failure => true
68
+ ey %w[ssh -e bakon], :expect_failure => true
64
69
  @err.should =~ /'bakon' does not have any matching instances/
65
70
  end
66
71
 
@@ -68,7 +73,7 @@ end
68
73
 
69
74
  describe "ey ssh with an ambiguous git repo" do
70
75
  it_should_behave_like "running ey ssh"
71
- def command_to_run(_) "ssh ls" end
76
+ def command_to_run(_) %w[ssh ls] end
72
77
  it_should_behave_like "it requires an unambiguous git repo"
73
78
  end
74
79
 
@@ -76,9 +81,9 @@ describe "ey ssh without a command" do
76
81
  it_should_behave_like "running ey ssh"
77
82
 
78
83
  def command_to_run(opts)
79
- cmd = "ssh"
80
- cmd << " --environment #{opts[:environment]}" if opts[:environment]
81
- cmd << " --account #{opts[:account]}" if opts[:account]
84
+ cmd = ["ssh"]
85
+ cmd << "--environment" << opts[:environment] if opts[:environment]
86
+ cmd << "--account" << opts[:account] if opts[:account]
82
87
  cmd
83
88
  end
84
89
 
@@ -94,9 +99,9 @@ describe "ey ssh with a command" do
94
99
  it_should_behave_like "running ey ssh"
95
100
 
96
101
  def command_to_run(opts)
97
- cmd = "ssh ls"
98
- cmd << " --environment #{opts[:environment]}" if opts[:environment]
99
- cmd << " --account #{opts[:account]}" if opts[:account]
102
+ cmd = %w[ssh ls]
103
+ cmd << "--environment" << opts[:environment] if opts[:environment]
104
+ cmd << "--account" << opts[:account] if opts[:account]
100
105
  cmd
101
106
  end
102
107
 
@@ -108,9 +113,27 @@ describe "ey ssh with a command" do
108
113
  it_should_behave_like "it takes an environment name and an account name"
109
114
  end
110
115
 
116
+ describe "ey ssh with a multi-part command" do
117
+ it_should_behave_like "running ey ssh"
118
+
119
+ def command_to_run(opts)
120
+ cmd = ['ssh', 'echo "echo"']
121
+ cmd << "--environment" << opts[:environment] if opts[:environment]
122
+ cmd << "--account" << opts[:account] if opts[:account]
123
+ cmd
124
+ end
125
+
126
+ def verify_ran(scenario)
127
+ ssh_target = scenario[:ssh_username] + '@' + scenario[:master_hostname]
128
+ @raw_ssh_commands.should == ["ssh #{ssh_target} 'echo \"echo\"'"]
129
+ end
130
+
131
+ it_should_behave_like "it takes an environment name and an account name"
132
+ end
133
+
111
134
  describe "ey ssh --all" do
112
135
  before do
113
- @ssh_flag = "--all"
136
+ @ssh_flag = %w[--all]
114
137
  @hosts = %w(app_hostname
115
138
  app_master_hostname
116
139
  util_fluffy_hostname
@@ -126,7 +149,7 @@ end
126
149
 
127
150
  describe "ey ssh --app-servers" do
128
151
  before do
129
- @ssh_flag = "--app-servers"
152
+ @ssh_flag = %w[--app-servers]
130
153
  @hosts = %w(app_hostname app_master_hostname)
131
154
  end
132
155
 
@@ -136,7 +159,7 @@ end
136
159
 
137
160
  describe "ey ssh --db-master" do
138
161
  before do
139
- @ssh_flag = "--db-master"
162
+ @ssh_flag = %w[--db-master]
140
163
  @hosts = %w(db_master_hostname)
141
164
  end
142
165
 
@@ -146,7 +169,7 @@ end
146
169
 
147
170
  describe "ey ssh --db-slaves" do
148
171
  before do
149
- @ssh_flag = "--db-slaves"
172
+ @ssh_flag = %w[--db-slaves]
150
173
  @hosts = %w(db_slave_1_hostname db_slave_2_hostname)
151
174
  end
152
175
 
@@ -156,7 +179,7 @@ end
156
179
 
157
180
  describe "ey ssh --db-servers" do
158
181
  before do
159
- @ssh_flag = "--db-servers"
182
+ @ssh_flag = %w[--db-servers]
160
183
  @hosts = %w(db_master_hostname db_slave_1_hostname db_slave_2_hostname)
161
184
  end
162
185
 
@@ -166,7 +189,7 @@ end
166
189
 
167
190
  describe "ey ssh --utilities" do
168
191
  before do
169
- @ssh_flag = "--utilities"
192
+ @ssh_flag = %w[--utilities]
170
193
  @hosts = %w(util_fluffy_hostname util_rocky_hostname)
171
194
  end
172
195
 
@@ -176,7 +199,7 @@ end
176
199
 
177
200
  describe "ey ssh --utilities fluffy" do
178
201
  before do
179
- @ssh_flag = "--utilities fluffy"
202
+ @ssh_flag = %w[--utilities fluffy]
180
203
  @hosts = %w(util_fluffy_hostname)
181
204
  end
182
205
 
@@ -186,7 +209,7 @@ end
186
209
 
187
210
  describe "ey ssh --utilities fluffy rocky" do
188
211
  before do
189
- @ssh_flag = "--utilities fluffy rocky"
212
+ @ssh_flag = %w[--utilities fluffy rocky]
190
213
  @hosts = %w(util_fluffy_hostname util_rocky_hostname)
191
214
  end
192
215
 
@@ -4,11 +4,11 @@ describe "ey web disable" do
4
4
  given "integration"
5
5
 
6
6
  def command_to_run(opts)
7
- cmd = "web disable"
8
- cmd << " -e #{opts[:environment]}" if opts[:environment]
9
- cmd << " -a #{opts[:app]}" if opts[:app]
10
- cmd << " -c #{opts[:account]}" if opts[:account]
11
- cmd << " --verbose" if opts[:verbose]
7
+ cmd = %w[web disable]
8
+ cmd << "-e" << opts[:environment] if opts[:environment]
9
+ cmd << "-a" << opts[:app] if opts[:app]
10
+ cmd << "-c" << opts[:account] if opts[:account]
11
+ cmd << "--verbose" if opts[:verbose]
12
12
  cmd
13
13
  end
14
14
 
@@ -4,11 +4,11 @@ describe "ey web enable" do
4
4
  given "integration"
5
5
 
6
6
  def command_to_run(opts)
7
- cmd = "web enable"
8
- cmd << " -e #{opts[:environment]}" if opts[:environment]
9
- cmd << " -a #{opts[:app]}" if opts[:app]
10
- cmd << " -c #{opts[:account]}" if opts[:account]
11
- cmd << " --verbose" if opts[:verbose]
7
+ cmd = %w[web enable]
8
+ cmd << "-e" << opts[:environment] if opts[:environment]
9
+ cmd << "-a" << opts[:app] if opts[:app]
10
+ cmd << "-c" << opts[:account] if opts[:account]
11
+ cmd << "--verbose" if opts[:verbose]
12
12
  cmd
13
13
  end
14
14
 
@@ -20,7 +20,7 @@ describe "ey web enable" do
20
20
  it_should_behave_like "it invokes engineyard-serverside"
21
21
 
22
22
  it "fails when given a bad option" do
23
- ey "web enable --lots --of --bogus --options", :expect_failure => true
23
+ ey %w[web enable --lots --of --bogus --options], :expect_failure => true
24
24
  @err.should include("Unknown switches")
25
25
  end
26
26
  end
data/spec/spec_helper.rb CHANGED
@@ -5,6 +5,7 @@ end
5
5
  EY_ROOT = File.expand_path("../..", __FILE__)
6
6
  require 'rubygems'
7
7
  require 'bundler/setup'
8
+ require 'escape'
8
9
 
9
10
  # Bundled gems
10
11
  require 'fakeweb'
@@ -69,7 +69,7 @@ module Spec
69
69
  $stdout = STDOUT
70
70
  end
71
71
 
72
- def ey(cmd = nil, options = {}, &block)
72
+ def ey(args = [], options = {}, &block)
73
73
  hide_err = options.has_key?(:hide_err) ? options[:hide_err] : options[:expect_failure]
74
74
  path_prepends = options[:prepend_to_path]
75
75
 
@@ -94,7 +94,7 @@ module Spec
94
94
  eybin = File.expand_path('../bundled_ey', __FILE__)
95
95
 
96
96
  with_env(ey_env) do
97
- exit_status = Open4::open4("#{eybin} #{cmd}") do |pid, stdin, stdout, stderr|
97
+ exit_status = Open4::open4("#{eybin} #{Escape.shell_command(args)}") do |pid, stdin, stdout, stderr|
98
98
  block.call(stdin) if block
99
99
  @err = stderr.read
100
100
  @out = stdout.read
@@ -110,7 +110,7 @@ shared_examples_for "it takes an environment name and an account name" do
110
110
 
111
111
  it "returns the error message to the user" do
112
112
  lambda do
113
- fast_ey(command_to_run({:environment => "giblets", :account => "main"}).split(" "))
113
+ fast_ey(command_to_run({:environment => "giblets", :account => "main"}))
114
114
  end.should raise_error(EY::Error, /400.*Important infos/)
115
115
  end
116
116
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: engineyard
3
3
  version: !ruby/object:Gem::Version
4
- hash: 5
5
- prerelease: false
4
+ hash: 59
5
+ prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 3
9
- - 15
10
- version: 1.3.15
9
+ - 16
10
+ version: 1.3.16
11
11
  platform: ruby
12
12
  authors:
13
13
  - EY Cloud Team
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-02-11 00:00:00 -08:00
18
+ date: 2011-02-16 00:00:00 -08:00
19
19
  default_executable: ey
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -30,10 +30,10 @@ dependencies:
30
30
  - 14
31
31
  - 6
32
32
  version: 0.14.6
33
- requirement: *id001
33
+ prerelease: false
34
34
  type: :runtime
35
+ requirement: *id001
35
36
  name: thor
36
- prerelease: false
37
37
  - !ruby/object:Gem::Dependency
38
38
  version_requirements: &id002 !ruby/object:Gem::Requirement
39
39
  none: false
@@ -46,10 +46,10 @@ dependencies:
46
46
  - 6
47
47
  - 0
48
48
  version: 1.6.0
49
- requirement: *id002
49
+ prerelease: false
50
50
  type: :runtime
51
+ requirement: *id002
51
52
  name: rest-client
52
- prerelease: false
53
53
  - !ruby/object:Gem::Dependency
54
54
  version_requirements: &id003 !ruby/object:Gem::Requirement
55
55
  none: false
@@ -62,10 +62,10 @@ dependencies:
62
62
  - 6
63
63
  - 1
64
64
  version: 1.6.1
65
- requirement: *id003
65
+ prerelease: false
66
66
  type: :runtime
67
+ requirement: *id003
67
68
  name: highline
68
- prerelease: false
69
69
  - !ruby/object:Gem::Dependency
70
70
  version_requirements: &id004 !ruby/object:Gem::Requirement
71
71
  none: false
@@ -76,10 +76,10 @@ dependencies:
76
76
  segments:
77
77
  - 0
78
78
  version: "0"
79
- requirement: *id004
79
+ prerelease: false
80
80
  type: :runtime
81
+ requirement: *id004
81
82
  name: json_pure
82
- prerelease: false
83
83
  - !ruby/object:Gem::Dependency
84
84
  version_requirements: &id005 !ruby/object:Gem::Requirement
85
85
  none: false
@@ -92,10 +92,10 @@ dependencies:
92
92
  - 0
93
93
  - 4
94
94
  version: 0.0.4
95
- requirement: *id005
95
+ prerelease: false
96
96
  type: :runtime
97
+ requirement: *id005
97
98
  name: escape
98
- prerelease: false
99
99
  - !ruby/object:Gem::Dependency
100
100
  version_requirements: &id006 !ruby/object:Gem::Requirement
101
101
  none: false
@@ -108,26 +108,160 @@ dependencies:
108
108
  - 4
109
109
  - 0
110
110
  version: 1.4.0
111
- requirement: *id006
111
+ prerelease: false
112
112
  type: :runtime
113
+ requirement: *id006
113
114
  name: engineyard-serverside-adapter
114
- prerelease: false
115
115
  - !ruby/object:Gem::Dependency
116
116
  version_requirements: &id007 !ruby/object:Gem::Requirement
117
117
  none: false
118
118
  requirements:
119
119
  - - ~>
120
120
  - !ruby/object:Gem::Version
121
- hash: 33
121
+ hash: 11
122
122
  segments:
123
123
  - 2
124
+ - 1
124
125
  - 0
125
- - 23
126
- version: 2.0.23
127
- requirement: *id007
126
+ version: 2.1.0
127
+ prerelease: false
128
128
  type: :runtime
129
+ requirement: *id007
129
130
  name: net-ssh
131
+ - !ruby/object:Gem::Dependency
132
+ version_requirements: &id008 !ruby/object:Gem::Requirement
133
+ none: false
134
+ requirements:
135
+ - - "="
136
+ - !ruby/object:Gem::Version
137
+ hash: 27
138
+ segments:
139
+ - 1
140
+ - 3
141
+ - 0
142
+ version: 1.3.0
143
+ prerelease: false
144
+ type: :development
145
+ requirement: *id008
146
+ name: rspec
147
+ - !ruby/object:Gem::Dependency
148
+ version_requirements: &id009 !ruby/object:Gem::Requirement
149
+ none: false
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ hash: 3
154
+ segments:
155
+ - 0
156
+ version: "0"
157
+ prerelease: false
158
+ type: :development
159
+ requirement: *id009
160
+ name: rake
161
+ - !ruby/object:Gem::Dependency
162
+ version_requirements: &id010 !ruby/object:Gem::Requirement
163
+ none: false
164
+ requirements:
165
+ - - ">="
166
+ - !ruby/object:Gem::Version
167
+ hash: 3
168
+ segments:
169
+ - 0
170
+ version: "0"
171
+ prerelease: false
172
+ type: :development
173
+ requirement: *id010
174
+ name: fakeweb
175
+ - !ruby/object:Gem::Dependency
176
+ version_requirements: &id011 !ruby/object:Gem::Requirement
177
+ none: false
178
+ requirements:
179
+ - - ">="
180
+ - !ruby/object:Gem::Version
181
+ hash: 3
182
+ segments:
183
+ - 0
184
+ version: "0"
185
+ prerelease: false
186
+ type: :development
187
+ requirement: *id011
188
+ name: fakeweb-matcher
189
+ - !ruby/object:Gem::Dependency
190
+ version_requirements: &id012 !ruby/object:Gem::Requirement
191
+ none: false
192
+ requirements:
193
+ - - ">="
194
+ - !ruby/object:Gem::Version
195
+ hash: 3
196
+ segments:
197
+ - 0
198
+ version: "0"
199
+ prerelease: false
200
+ type: :development
201
+ requirement: *id012
202
+ name: fakefs
203
+ - !ruby/object:Gem::Dependency
204
+ version_requirements: &id013 !ruby/object:Gem::Requirement
205
+ none: false
206
+ requirements:
207
+ - - ~>
208
+ - !ruby/object:Gem::Version
209
+ hash: 23
210
+ segments:
211
+ - 1
212
+ - 0
213
+ - 0
214
+ version: 1.0.0
215
+ prerelease: false
216
+ type: :development
217
+ requirement: *id013
218
+ name: bundler
219
+ - !ruby/object:Gem::Dependency
220
+ version_requirements: &id014 !ruby/object:Gem::Requirement
221
+ none: false
222
+ requirements:
223
+ - - ">="
224
+ - !ruby/object:Gem::Version
225
+ hash: 3
226
+ segments:
227
+ - 0
228
+ version: "0"
229
+ prerelease: false
230
+ type: :development
231
+ requirement: *id014
232
+ name: sinatra
233
+ - !ruby/object:Gem::Dependency
234
+ version_requirements: &id015 !ruby/object:Gem::Requirement
235
+ none: false
236
+ requirements:
237
+ - - ~>
238
+ - !ruby/object:Gem::Version
239
+ hash: 23
240
+ segments:
241
+ - 0
242
+ - 1
243
+ - 6
244
+ version: 0.1.6
245
+ prerelease: false
246
+ type: :development
247
+ requirement: *id015
248
+ name: realweb
249
+ - !ruby/object:Gem::Dependency
250
+ version_requirements: &id016 !ruby/object:Gem::Requirement
251
+ none: false
252
+ requirements:
253
+ - - ~>
254
+ - !ruby/object:Gem::Version
255
+ hash: 21
256
+ segments:
257
+ - 1
258
+ - 0
259
+ - 1
260
+ version: 1.0.1
130
261
  prerelease: false
262
+ type: :development
263
+ requirement: *id016
264
+ name: open4
131
265
  description: This gem allows you to deploy your rails application to the Engine Yard cloud directly from the command line.
132
266
  email: cloud@engineyard.com
133
267
  executables:
@@ -139,7 +273,6 @@ extra_rdoc_files: []
139
273
  files:
140
274
  - bin/ey
141
275
  - lib/engineyard/api.rb
142
- - lib/engineyard/cli/#recipes.rb#
143
276
  - lib/engineyard/cli/api.rb
144
277
  - lib/engineyard/cli/recipes.rb
145
278
  - lib/engineyard/cli/ui.rb
@@ -240,7 +373,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
240
373
  requirements: []
241
374
 
242
375
  rubyforge_project:
243
- rubygems_version: 1.3.7
376
+ rubygems_version: 1.5.0
244
377
  signing_key:
245
378
  specification_version: 3
246
379
  summary: Command-line deployment for the Engine Yard cloud
@@ -1,32 +0,0 @@
1
- module EY
2
- class CLI
3
- class Recipes < EY::Thor
4
- X1gx1GGG desc "recipes apply [ENVIRONMENT]", <<-DESC
5
- Run uploaded chef recipes on specified environment.
6
-
7
- This is similar to '#{banner_base} rebuild' except Engine Yard's main
8
- configuration step is skipped.
9
- DESC
10
-
11
- def apply(name = nil)
12
- environment = fetch_environment(name)
13
- environment.run_custom_recipes
14
- EY.ui.say "Uploaded recipes started for #{environment.name}"
15
- end
16
-
17
- desc "recipes upload [ENVIRONMENT]", <<-DESC
18
- Upload custom chef recipes to specified environment.
19
-
20
- The current directory should contain a subdirectory named "cookbooks" to be
21
- uploaded.
22
- DESC
23
-
24
- def upload(name = nil)
25
- environment = fetch_environment(name)
26
- environment.upload_recipes
27
- EY.ui.say "Recipes uploaded successfully for #{environment.name}"
28
- end
29
- end
30
- end
31
-
32
- end