rubber 2.12.1 → 2.12.2
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.
- checksums.yaml +4 -4
- data/CHANGELOG +16 -0
- data/lib/capistrano/thread_safety_fix.rb +2 -4
- data/lib/rubber/cloud/vsphere.rb +0 -2
- data/lib/rubber/recipes/rubber.rb +7 -0
- data/lib/rubber/recipes/rubber/setup.rb +6 -0
- data/lib/rubber/version.rb +1 -1
- data/templates/passenger/config/rubber/rubber-passenger.yml +1 -1
- data/templates/passenger_nginx/config/rubber/rubber-passenger_nginx.yml +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 331df14a974871cbe3939df12e1ea37fe2d1b625
|
4
|
+
data.tar.gz: fe492705ec10139570c3d151720cc2ced3821730
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a1dbd4058e402bbecd5046810b8a464c54c15010ba6f543a8ccdfc1c285b9847254463be136db7aa8a1b1c9dc10d627a27618578fb1a0aa2ac32abcc50da6daa
|
7
|
+
data.tar.gz: 937f8764da1bd2a9681a954c06bb5cdc81506c896eedc577ff1a247e212fa257451b21472ffd2826992f401b6919a420641ca839258c5ba29a73b1298539d58a
|
data/CHANGELOG
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
2.12.2 (08/26/2014)
|
2
|
+
|
3
|
+
Improvements:
|
4
|
+
============
|
5
|
+
|
6
|
+
[core] Re-use established SSH connections. <f025bf7>
|
7
|
+
[core] Terminate the initial_ssh_user connection when we're done with it. <8981cef>
|
8
|
+
[passenger] Upgraded from Passenger 4.0.48 to 4.0.49. <053d97c>
|
9
|
+
[passenger_nginx] Upgraded from Passenger 4.0.48 to 4.0.49. <053d97c>
|
10
|
+
|
11
|
+
Bug Fixes:
|
12
|
+
=========
|
13
|
+
|
14
|
+
[core] Fixed an issue using password-based authentication with Capistrano. <c86e82d>
|
15
|
+
|
16
|
+
|
1
17
|
2.12.1 (08/19/2014)
|
2
18
|
|
3
19
|
Bug Fixes:
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'capistrano/configuration'
|
2
2
|
|
3
3
|
# Overrides a method in Capistrano::Configurations::Connections that has multiple threads writing to a shared hash.
|
4
|
-
# While that shared hash is a thread local variable,
|
4
|
+
# While that shared hash is a thread local variable, the thread is passed as an argument, so all the connection
|
5
5
|
# threads are trying to update it at the same time. This has been observed to cause problems where servers will end
|
6
6
|
# up losing their connection objects, messing up all future SSH operations and eventually leading to an error about
|
7
7
|
# calling a method on a nil object.
|
@@ -16,11 +16,9 @@ module Capistrano
|
|
16
16
|
MUTEX = Mutex.new
|
17
17
|
|
18
18
|
def safely_establish_connection_to(server, thread, failures=nil)
|
19
|
-
conn = connection_factory.connect_to(server)
|
20
|
-
|
21
19
|
MUTEX.synchronize do
|
22
20
|
thread[:sessions] ||= {}
|
23
|
-
thread[:sessions][server] ||=
|
21
|
+
thread[:sessions][server] ||= connection_factory.connect_to(server)
|
24
22
|
end
|
25
23
|
rescue Exception => err
|
26
24
|
raise unless failures
|
data/lib/rubber/cloud/vsphere.rb
CHANGED
@@ -284,8 +284,6 @@ module Rubber
|
|
284
284
|
:domain => env.domain,
|
285
285
|
:hostName => RbVmomi::VIM::CustomizationFixedName.new(:name => instance_alias))
|
286
286
|
|
287
|
-
puts "Adapters: #{custom_adapter_mapping}"
|
288
|
-
|
289
287
|
RbVmomi::VIM::CustomizationSpec.new(:identity => custom_prep,
|
290
288
|
:globalIPSettings => custom_global_ip_settings,
|
291
289
|
:nicSettingMap => custom_adapter_mapping)
|
@@ -112,6 +112,13 @@ namespace :rubber do
|
|
112
112
|
|
113
113
|
ssh_options[:keys] = normalized_ssh_keys
|
114
114
|
ssh_options[:timeout] = fetch(:ssh_timeout, 5)
|
115
|
+
|
116
|
+
# If we don't explicitly set :auth_methods to nil, they'll be populated with net-ssh's defaults, which don't
|
117
|
+
# work terribly well with Capistrano. If we set it to nil, Capistrano will use its own defaults. Moreover,
|
118
|
+
# Capistrano seems to have a bug whereby it will not allow password-based authentication unless its default
|
119
|
+
# auth_methods are used, so we're best off using that unless the methods have already been set explicitly by
|
120
|
+
# the Rubber user elsewhere.
|
121
|
+
ssh_options[:auth_methods] = nil unless ssh_options.has_key?(:auth_methods)
|
115
122
|
end
|
116
123
|
|
117
124
|
|
@@ -99,6 +99,12 @@ namespace :rubber do
|
|
99
99
|
_ensure_key_file_present
|
100
100
|
_allow_root_ssh
|
101
101
|
_disable_password_based_ssh_login if cloud.should_disable_password_based_ssh_login?
|
102
|
+
|
103
|
+
# If the initial_ssh_user is different than the deploy user, we can terminate the SSH connection
|
104
|
+
# because from here on out we'll be connecting as the deploy user.
|
105
|
+
if initial_ssh_user != fetch(:user, nil)
|
106
|
+
teardown_connections_to(sessions.keys)
|
107
|
+
end
|
102
108
|
rescue ConnectionError => e
|
103
109
|
if e.message =~ /Net::SSH::AuthenticationFailed/
|
104
110
|
logger.info "Can't connect as user #{initial_ssh_user} to #{ip}, assuming root allowed"
|
data/lib/rubber/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubber
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.12.
|
4
|
+
version: 2.12.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Conway
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-08-
|
12
|
+
date: 2014-08-26 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|