ssh_client 0.1.1 → 0.1.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/lib/ssh_client/config_item.rb +5 -5
- data/lib/ssh_client/connection.rb +4 -3
- data/lib/ssh_client/version.rb +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: 47239384ac65b5c7322ec4481a63af823617a4f4
|
4
|
+
data.tar.gz: 889994af697cda72b443fab180120df77cc2cbdb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bff5f0ad46f3deb36e22085db2595bb8716a795274a594e3e5b4ace28a97a04dc179efa9ba7239e47b88ef27c4364837ee1c00e0ced73b69d9fc74d81091774c
|
7
|
+
data.tar.gz: f912fce2ea9c2e4d239d677f6dea6b826cfa7184e6b758426aaf57a503712ee540daedfe568d90d8088bfd2f11c41afcfcab296876b7286349087584d684dc52
|
@@ -13,7 +13,7 @@ module SSHClient
|
|
13
13
|
@name = name || DEFAULT_NAME
|
14
14
|
@listeners = { stdout: Set.new, stderr: Set.new }
|
15
15
|
|
16
|
-
add_listener
|
16
|
+
add_listener { |data| logger.info "<< #{data}" } if default?
|
17
17
|
end
|
18
18
|
|
19
19
|
def listeners
|
@@ -24,8 +24,8 @@ module SSHClient
|
|
24
24
|
end
|
25
25
|
end
|
26
26
|
|
27
|
-
def add_listener(
|
28
|
-
Array(
|
27
|
+
def add_listener(*args, &blk)
|
28
|
+
Array(args || @listeners.keys).each do |k|
|
29
29
|
@listeners[k] << blk
|
30
30
|
end
|
31
31
|
@cached_listeners = nil
|
@@ -53,11 +53,11 @@ module SSHClient
|
|
53
53
|
|
54
54
|
def raise_on_errors=(value)
|
55
55
|
if value
|
56
|
-
add_listener(:
|
56
|
+
@errors_listener = add_listener(:stderr) do |data|
|
57
57
|
Thread.main.raise CommandExitWithError.new(data) if data
|
58
58
|
end
|
59
59
|
else
|
60
|
-
remove_listener(
|
60
|
+
remove_listener(@errors_listener, :stderr) if @errors_listener
|
61
61
|
end
|
62
62
|
end
|
63
63
|
|
@@ -8,8 +8,8 @@ module SSHClient
|
|
8
8
|
|
9
9
|
attr_reader :config, :transport
|
10
10
|
|
11
|
-
def initialize(config_name = nil, hostname: nil, username: nil, password: nil, &blk)
|
12
|
-
build_config hostname, username, password if hostname
|
11
|
+
def initialize(config_name = nil, hostname: nil, username: nil, password: nil, logger: nil, &blk)
|
12
|
+
build_config hostname, username, password, logger: logger if hostname
|
13
13
|
@config ||= SSHClient.config config_name
|
14
14
|
@transport = config.transport
|
15
15
|
|
@@ -19,11 +19,12 @@ module SSHClient
|
|
19
19
|
ObjectSpace.define_finalizer(self) { transport.close }
|
20
20
|
end
|
21
21
|
|
22
|
-
def build_config(hostname, username, password)
|
22
|
+
def build_config(hostname, username, password, logger: nil)
|
23
23
|
@config ||= SSHClient.configure(hostname) do |conf|
|
24
24
|
conf.hostname = hostname
|
25
25
|
conf.username = username
|
26
26
|
conf.password = password
|
27
|
+
conf.logger = logger
|
27
28
|
end
|
28
29
|
end
|
29
30
|
|
data/lib/ssh_client/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ssh_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Konstantin Kosmatov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-06-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: net-ssh
|