rye 0.9.8 → 0.9.9
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.
- data/CHANGES.txt +9 -0
- data/Gemfile +3 -0
- data/README.rdoc +10 -7
- data/Rakefile +8 -2
- data/VERSION +1 -1
- data/lib/rye/box.rb +5 -8
- data/lib/rye/hop.rb +2 -2
- data/rye.gemspec +3 -1
- metadata +21 -32
- data.tar.gz.sig +0 -0
- metadata.gz.sig +0 -0
data/CHANGES.txt
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
RYE, CHANGES
|
|
2
2
|
|
|
3
|
+
|
|
4
|
+
#### 0.9.9 (2013-11-09) #############################
|
|
5
|
+
|
|
6
|
+
* FIXED: Stderr channel fix for lost Rye::Set error messages [megeek]
|
|
7
|
+
* CHANGE: Propagate original Net::SSH exceptions [Musannif Zahir]
|
|
8
|
+
* CHANGE: Raise Net::SSH::HostKeyMismatch instead of waiting input [Ruy Rocha]
|
|
9
|
+
* CHANGE: Add Gemfile, make setting signing_key in gemspec conditional [Dan Peterson]
|
|
10
|
+
|
|
11
|
+
|
|
3
12
|
#### 0.9.8 (2013-02-06) #############################
|
|
4
13
|
|
|
5
14
|
* ADDED: Rudimentary DSL (see tst/dsl_example.rb) [Randy D. Wallace Jr]
|
data/Gemfile
ADDED
data/README.rdoc
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
= Rye - v0.9
|
|
2
2
|
|
|
3
|
-
<
|
|
3
|
+
<b>Safely run SSH commands on a bunch of machines at the same time (from Ruby)</b>.
|
|
4
4
|
|
|
5
5
|
Inspired by Rush[http://rush.heroku.com] and compatible with Ruby 1.8, 1.9, and JRuby 1.3+!
|
|
6
6
|
|
|
@@ -209,22 +209,25 @@ Via Rubygems:
|
|
|
209
209
|
|
|
210
210
|
$ gem install rye
|
|
211
211
|
|
|
212
|
-
|
|
212
|
+
or via download:
|
|
213
|
+
|
|
214
|
+
* rye-latest.tar.gz[http://github.com/delano/rye/tarball/latest]
|
|
215
|
+
* rye-latest.zip[http://github.com/delano/rye/zipball/latest]
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
However, in order to be sure the code you're installing hasn't been tampered with, it's recommended that you verify the signiture[http://docs.rubygems.org/read/chapter/21]. To do this, you need to add my public key as a trusted certificate (you only need to do this once):
|
|
213
219
|
|
|
214
220
|
# Add the public key as a trusted certificate
|
|
215
221
|
# (You only need to do this once)
|
|
216
222
|
$ curl -O https://raw.github.com/delano/rye/master/gem-public_cert.pem
|
|
217
223
|
$ gem cert --add gem-public_cert.pem
|
|
218
224
|
|
|
225
|
+
Then, when install the gem, do so with high security:
|
|
226
|
+
|
|
219
227
|
$ gem install rye -P HighSecurity
|
|
220
228
|
|
|
221
229
|
If you don't add the public key, you'll see an error like "Couldn't verify data signature". If you're still having trouble let me know and I'll give you a hand.
|
|
222
230
|
|
|
223
|
-
or via download:
|
|
224
|
-
|
|
225
|
-
* rye-latest.tar.gz[http://github.com/delano/rye/tarball/latest]
|
|
226
|
-
* rye-latest.zip[http://github.com/delano/rye/zipball/latest]
|
|
227
|
-
|
|
228
231
|
|
|
229
232
|
== Contributing
|
|
230
233
|
|
data/Rakefile
CHANGED
|
@@ -6,6 +6,7 @@ require "rdoc/task"
|
|
|
6
6
|
task :default => ["build"]
|
|
7
7
|
CLEAN.include [ 'pkg', 'rdoc' ]
|
|
8
8
|
name = "rye"
|
|
9
|
+
key = File.join('/mnt/gem/', 'gem-private_key.pem');
|
|
9
10
|
|
|
10
11
|
$:.unshift File.join(File.dirname(__FILE__), 'lib')
|
|
11
12
|
require name
|
|
@@ -29,8 +30,11 @@ begin
|
|
|
29
30
|
s.add_dependency 'net-scp', '>= 1.0.2'
|
|
30
31
|
s.add_dependency 'docile', '>= 1.0.1'
|
|
31
32
|
|
|
32
|
-
|
|
33
|
-
|
|
33
|
+
if File.exists?(key)
|
|
34
|
+
s.cert_chain = ['gem-public_cert.pem']
|
|
35
|
+
s.signing_key = key
|
|
36
|
+
end
|
|
37
|
+
|
|
34
38
|
end
|
|
35
39
|
Jeweler::GemcutterTasks.new
|
|
36
40
|
rescue LoadError
|
|
@@ -40,6 +44,8 @@ end
|
|
|
40
44
|
RDoc::Task.new do |rdoc|
|
|
41
45
|
rdoc.rdoc_dir = "rdoc"
|
|
42
46
|
rdoc.title = "#{name} #{version}"
|
|
47
|
+
rdoc.generator = 'hanna'
|
|
48
|
+
rdoc.main = 'README.rdoc'
|
|
43
49
|
rdoc.rdoc_files.include("README*")
|
|
44
50
|
rdoc.rdoc_files.include("LICENSE.txt")
|
|
45
51
|
rdoc.rdoc_files.include("VERSION")
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.9.
|
|
1
|
+
0.9.9
|
data/lib/rye/box.rb
CHANGED
|
@@ -671,12 +671,7 @@ module Rye
|
|
|
671
671
|
rescue Net::SSH::HostKeyMismatch => ex
|
|
672
672
|
STDERR.puts ex.message
|
|
673
673
|
print "\a" if @rye_info # Ring the bell
|
|
674
|
-
|
|
675
|
-
@rye_opts[:paranoid] = false
|
|
676
|
-
retry
|
|
677
|
-
else
|
|
678
|
-
raise Net::SSH::HostKeyMismatch
|
|
679
|
-
end
|
|
674
|
+
raise ex
|
|
680
675
|
rescue Net::SSH::AuthenticationFailed => ex
|
|
681
676
|
print "\a" if retried == 0 && @rye_info # Ring the bell once
|
|
682
677
|
retried += 1
|
|
@@ -686,14 +681,14 @@ module Rye
|
|
|
686
681
|
# Raise Net::SSH::AuthenticationFailed if publickey is the
|
|
687
682
|
# only auth method
|
|
688
683
|
if @rye_opts[:auth_methods] == ["publickey"]
|
|
689
|
-
raise
|
|
684
|
+
raise ex
|
|
690
685
|
elsif @rye_password_prompt && (STDIN.tty? && retried <= 3)
|
|
691
686
|
STDERR.puts "Passwordless login failed for #{@rye_user}"
|
|
692
687
|
@rye_opts[:password] = highline.ask("Password: ") { |q| q.echo = '' }.strip
|
|
693
688
|
@rye_opts[:auth_methods].push *['keyboard-interactive', 'password']
|
|
694
689
|
retry
|
|
695
690
|
else
|
|
696
|
-
raise
|
|
691
|
+
raise ex
|
|
697
692
|
end
|
|
698
693
|
end
|
|
699
694
|
|
|
@@ -817,6 +812,8 @@ module Rye
|
|
|
817
812
|
rap.cmd = cmd_clean
|
|
818
813
|
|
|
819
814
|
channel = net_ssh_exec!(cmd_internal, &blk)
|
|
815
|
+
channel[:stderr].position = 0
|
|
816
|
+
channel[:stdout].position = 0
|
|
820
817
|
|
|
821
818
|
if channel[:exception]
|
|
822
819
|
rap = channel[:exception].rap
|
data/lib/rye/hop.rb
CHANGED
|
@@ -273,7 +273,7 @@ module Rye
|
|
|
273
273
|
@rye_opts[:paranoid] = false
|
|
274
274
|
retry
|
|
275
275
|
else
|
|
276
|
-
raise
|
|
276
|
+
raise ex
|
|
277
277
|
end
|
|
278
278
|
rescue Net::SSH::AuthenticationFailed => ex
|
|
279
279
|
print "\a" if retried == 0 && @rye_info # Ring the bell once
|
|
@@ -285,7 +285,7 @@ module Rye
|
|
|
285
285
|
@rye_opts[:auth_methods].push *['keyboard-interactive', 'password']
|
|
286
286
|
retry
|
|
287
287
|
else
|
|
288
|
-
raise
|
|
288
|
+
raise ex
|
|
289
289
|
end
|
|
290
290
|
end
|
|
291
291
|
|
data/rye.gemspec
CHANGED
|
@@ -68,7 +68,9 @@ Gem::Specification.new do |s|
|
|
|
68
68
|
s.require_paths = ["lib"]
|
|
69
69
|
s.rubyforge_project = "rye"
|
|
70
70
|
s.rubygems_version = "1.8.25"
|
|
71
|
-
|
|
71
|
+
if File.exists?("/mnt/gem/gem-private_key.pem")
|
|
72
|
+
s.signing_key = "/mnt/gem/gem-private_key.pem"
|
|
73
|
+
end
|
|
72
74
|
s.summary = "Run SSH commands on a bunch of machines at the same time (from Ruby)."
|
|
73
75
|
|
|
74
76
|
if s.respond_to? :specification_version then
|
metadata
CHANGED
|
@@ -1,44 +1,32 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rye
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.9.
|
|
4
|
+
version: 0.9.9
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
8
8
|
- Delano Mandelbaum
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
|
-
cert_chain:
|
|
12
|
-
-
|
|
13
|
-
LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUROakNDQWg2Z0F3SUJB
|
|
14
|
-
Z0lCQURBTkJna3Foa2lHOXcwQkFRVUZBREJCTVE4d0RRWURWUVFEREFaa1pX
|
|
15
|
-
eGgKYm04eEdUQVhCZ29Ka2lhSmsvSXNaQUVaRmdsemIyeDFkR2x2ZFhNeEV6
|
|
16
|
-
QVJCZ29Ka2lhSmsvSXNaQUVaRmdOagpiMjB3SGhjTk1UTXdNakEyTVRFMU56
|
|
17
|
-
UTFXaGNOTVRRd01qQTJNVEUxTnpRMVdqQkJNUTh3RFFZRFZRUUREQVprClpX
|
|
18
|
-
eGhibTh4R1RBWEJnb0praWFKay9Jc1pBRVpGZ2x6YjJ4MWRHbHZkWE14RXpB
|
|
19
|
-
UkJnb0praWFKay9Jc1pBRVoKRmdOamIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFF
|
|
20
|
-
QkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEZzFoTXRsMFhzTXVVSwpBS1RnWVd2
|
|
21
|
-
M2dqajd2dUVzRTJFalQrdnlCZzgvTHBxVlZ3WnppaWFlYkpUOUlaaVErc0NG
|
|
22
|
-
cWJpYWtqMGI1M3BJCmhnMXlPYUJFbUg2L1cwTDdyd3pxYVJWOXNXMWVKczlK
|
|
23
|
-
eEZZUUNuZDY3elVuemo4bm5SbE9qRytoaElHK1ZzaWoKbnBzR2J0MjhwZWZ1
|
|
24
|
-
TlpKak81cTJjbEFsZlNuaUlJSGZJc1U3L1N0RVl1NkZVR09qbndyeVowcjV5
|
|
25
|
-
SmxyOVJyRQpHcytxMERXOFFuWjlVcEFmdURGUVp1SXFlS1FGRkxFN25NbUNH
|
|
26
|
-
YUErMEJOMW5MbDNmVkhOYkxIcTdBdms4K1orClp1dXZrZHNjYkhsTy9sKzN4
|
|
27
|
-
Q05RNW5Vbkh3cTBBREFiTUxPbG1pWVl6cVhvV0xqbWVJNm1lL2Nsa3RKQ2ZO
|
|
28
|
-
MlIKb1pHM1VRdnZBZ01CQUFHak9UQTNNQWtHQTFVZEV3UUNNQUF3SFFZRFZS
|
|
29
|
-
ME9CQllFRk1TSk9FdEh6RTRsMGF6dgpNMEpLMGtLTlRvSzFNQXNHQTFVZER3
|
|
30
|
-
UUVBd0lFc0RBTkJna3Foa2lHOXcwQkFRVUZBQU9DQVFFQXRPZEU3M3F4Ck9I
|
|
31
|
-
MnlkaTlvVDJoUzVmOUcweTFaNzBUbHdoK1ZHRXh5Znh6VkU5WHdDK2lQcEp4
|
|
32
|
-
TnJhaUhZZ0YvOS9va3k3WloKUjlxMC90Sm5ldWhBZW5aZGlRa1g3b2k0TzN2
|
|
33
|
-
OXdSUzZZSG9XQnhNUEZLVlJMTlR6dlZKc2JtZnBDQWxwNS81ZwpwczR3UUZ5
|
|
34
|
-
NW1pYkVsR1ZsT29iZi9naHFaMjVIUzlKNmtkMC9DL3J5MEFVdFRvZ3NMN1R4
|
|
35
|
-
R3dUNGtiQ3g2M3ViCjN2eXdFRWhzSlV6ZmQ5N0dDQUJtdFFmUlRsZFgvajdG
|
|
36
|
-
MXovNXdkOHAraGZkb3gxaWliZHM5WnRmYVpBM0t6S24Ka2NoV045QjZ6Zzly
|
|
37
|
-
MVhNUThCTTJKejBYb1BhblBlMzU0K2xXd2pwa1JLYkZvdy9aYlFIY0NMQ3Ey
|
|
38
|
-
NCtONmI2ZwpkZ0tmTkR6d2lEcHFDQT09Ci0tLS0tRU5EIENFUlRJRklDQVRF
|
|
39
|
-
LS0tLS0K
|
|
40
|
-
date: 2013-02-06 00:00:00.000000000 Z
|
|
11
|
+
cert_chain: []
|
|
12
|
+
date: 2013-11-09 00:00:00.000000000 Z
|
|
41
13
|
dependencies:
|
|
14
|
+
- !ruby/object:Gem::Dependency
|
|
15
|
+
name: rye
|
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
|
17
|
+
none: false
|
|
18
|
+
requirements:
|
|
19
|
+
- - ! '>='
|
|
20
|
+
- !ruby/object:Gem::Version
|
|
21
|
+
version: '0'
|
|
22
|
+
type: :runtime
|
|
23
|
+
prerelease: false
|
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
25
|
+
none: false
|
|
26
|
+
requirements:
|
|
27
|
+
- - ! '>='
|
|
28
|
+
- !ruby/object:Gem::Version
|
|
29
|
+
version: '0'
|
|
42
30
|
- !ruby/object:Gem::Dependency
|
|
43
31
|
name: annoy
|
|
44
32
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -144,6 +132,7 @@ extra_rdoc_files:
|
|
|
144
132
|
- README.rdoc
|
|
145
133
|
files:
|
|
146
134
|
- CHANGES.txt
|
|
135
|
+
- Gemfile
|
|
147
136
|
- LICENSE.txt
|
|
148
137
|
- README.rdoc
|
|
149
138
|
- Rakefile
|
|
@@ -208,7 +197,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
208
197
|
version: '0'
|
|
209
198
|
requirements: []
|
|
210
199
|
rubyforge_project: rye
|
|
211
|
-
rubygems_version: 1.8.
|
|
200
|
+
rubygems_version: 1.8.23
|
|
212
201
|
signing_key:
|
|
213
202
|
specification_version: 3
|
|
214
203
|
summary: Run SSH commands on a bunch of machines at the same time (from Ruby).
|
data.tar.gz.sig
DELETED
|
Binary file
|
metadata.gz.sig
DELETED
|
Binary file
|