engineyard-serverside 1.5.4 → 1.5.6

Sign up to get free protection for your applications and to get access to all the features.
@@ -164,7 +164,8 @@ To fix this problem, commit your Gemfile.lock to your repository and redeploy.
164
164
  end
165
165
 
166
166
  def clean_environment
167
- "unset BUNDLE_PATH BUNDLE_FROZEN BUNDLE_WITHOUT BUNDLE_BIN BUNDLE_GEMFILE"
167
+ # GIT_SSH needs to be defined in the environment for customers with private bundler repos in their Gemfile.
168
+ %Q[export GIT_SSH="ssh -o 'StrictHostKeyChecking no' -o 'PasswordAuthentication no' -o 'LogLevel DEBUG' -i ~/.ssh/#{c.app}-deploy-key" && unset BUNDLE_PATH BUNDLE_FROZEN BUNDLE_WITHOUT BUNDLE_BIN BUNDLE_GEMFILE]
168
169
  end
169
170
 
170
171
  # task
@@ -5,7 +5,6 @@ module EY
5
5
  module Strategies
6
6
  class Git
7
7
  module Helpers
8
-
9
8
  def update_repository_cache
10
9
  unless strategy.fetch && strategy.checkout
11
10
  abort "*** [Error] Git could not checkout (#{strategy.to_checkout}) ***"
@@ -42,7 +41,6 @@ module EY
42
41
 
43
42
  def initialize(opts)
44
43
  @opts = opts
45
- set_up_git_ssh(@opts[:app])
46
44
  end
47
45
 
48
46
  def usable_repository?
@@ -107,37 +105,6 @@ module EY
107
105
  end
108
106
  false
109
107
  end
110
-
111
- def set_up_git_ssh(app)
112
- # hold references to the tempfiles so they don't get finalized
113
- # unexpectedly; tempfile finalization unlinks the files
114
- @git_ssh = Tempfile.open("git-ssh")
115
- @config = Tempfile.open("git-ssh-config")
116
-
117
- @config.write "StrictHostKeyChecking no\n"
118
- @config.write "CheckHostIP no\n"
119
- @config.write "PasswordAuthentication no\n"
120
- @config.write "LogLevel DEBUG\n"
121
- @config.write "IdentityFile ~/.ssh/#{app}-deploy-key\n"
122
- @config.chmod(0600)
123
- @config.close
124
-
125
- @git_ssh.write "#!/bin/sh\n"
126
- @git_ssh.write "unset SSH_AUTH_SOCK\n"
127
- @git_ssh.write "ssh -F \"#{@config.path}\" $*\n"
128
- @git_ssh.chmod(0700)
129
- # NB: this file _must_ be closed before git looks at it.
130
- #
131
- # Linux won't let you execve a file that's open for writing,
132
- # so if this file stays open, then git will complain about
133
- # being unable to exec it and will exit with a message like
134
- #
135
- # fatal: exec /tmp/git-ssh20100417-21417-d040rm-0 failed.
136
- @git_ssh.close
137
-
138
- ENV['GIT_SSH'] = @git_ssh.path
139
- end
140
-
141
108
  end
142
109
  end
143
110
  end
@@ -1,5 +1,5 @@
1
1
  module EY
2
2
  module Serverside
3
- VERSION = '1.5.4'
3
+ VERSION = '1.5.6'
4
4
  end
5
5
  end
@@ -115,6 +115,11 @@ describe "Deploying an application that uses Bundler" do
115
115
  it "creates a system version file" do
116
116
  File.exist?(File.join(@deploy_dir, 'shared', 'bundled_gems', 'SYSTEM_VERSION')).should be_true
117
117
  end
118
+
119
+ it "Sets GIT_SSH environment variable" do
120
+ install_cmd = @deployer.commands.grep(/GIT_SSH/).first
121
+ install_cmd.should match(/export GIT_SSH.*install_bundler/)
122
+ end
118
123
  end
119
124
  end
120
125
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: engineyard-serverside
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
4
+ hash: 15
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 5
9
- - 4
10
- version: 1.5.4
9
+ - 6
10
+ version: 1.5.6
11
11
  platform: ruby
12
12
  authors:
13
13
  - EY Cloud Team
@@ -15,13 +15,13 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-10-21 00:00:00 -07:00
18
+ date: 2011-10-25 00:00:00 -04:00
19
19
  default_executable: engineyard-serverside
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: rspec
23
22
  prerelease: false
24
23
  type: :development
24
+ name: rspec
25
25
  version_requirements: &id001 !ruby/object:Gem::Requirement
26
26
  none: false
27
27
  requirements:
@@ -35,9 +35,9 @@ dependencies:
35
35
  version: 1.3.2
36
36
  requirement: *id001
37
37
  - !ruby/object:Gem::Dependency
38
- name: rake
39
38
  prerelease: false
40
39
  type: :development
40
+ name: rake
41
41
  version_requirements: &id002 !ruby/object:Gem::Requirement
42
42
  none: false
43
43
  requirements:
@@ -323,7 +323,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
323
323
  requirements: []
324
324
 
325
325
  rubyforge_project:
326
- rubygems_version: 1.5.0
326
+ rubygems_version: 1.5.2
327
327
  signing_key:
328
328
  specification_version: 3
329
329
  summary: A gem that deploys ruby applications on EY Cloud instances