sshkit 1.23.1 → 1.24.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +5 -30
- data/.github/workflows/push.yml +1 -1
- data/.rubocop.yml +6 -6
- data/.rubocop_todo.yml +3 -3
- data/Gemfile +0 -5
- data/RELEASING.md +1 -1
- data/lib/sshkit/backends/abstract.rb +1 -2
- data/lib/sshkit/backends/connection_pool.rb +0 -1
- data/lib/sshkit/color.rb +2 -2
- data/lib/sshkit/runners/parallel.rb +0 -2
- data/lib/sshkit/version.rb +1 -1
- data/sshkit.gemspec +5 -4
- data/test/functional/backends/test_netssh.rb +2 -2
- data/test/unit/backends/test_abstract.rb +1 -1
- data/test/unit/test_command.rb +2 -1
- data/test/unit/test_configuration.rb +2 -1
- metadata +20 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 931b99f3ed7bae2c98d4d6e5b48ad8f2261c4ccfca373d75fab75de03d49b656
|
4
|
+
data.tar.gz: '09096adfadec79a68a91477f5de116847d2a6baa6f36ea9faab13e41dae4fc66'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9cb179c93ff215fed59c2f2c38dca664886af6f8b39376f7f1ed72bfb9a675d6c6a7616b519c165a83cd8e9356f15301e7a656b0045ab65f6faaf971176a8748
|
7
|
+
data.tar.gz: 22c231cdb7622ba13ceac3c6def0178dee92b2d3e75b71038f3e5415e9e2d5bf0c2e7f1dd48005b7a2fdcf65d8787ea83788a5531d781b8e76314b3f7d596a86
|
data/.github/workflows/ci.yml
CHANGED
@@ -8,34 +8,7 @@ jobs:
|
|
8
8
|
runs-on: ubuntu-latest
|
9
9
|
strategy:
|
10
10
|
matrix:
|
11
|
-
ruby:
|
12
|
-
[
|
13
|
-
"2.3",
|
14
|
-
"2.4",
|
15
|
-
"2.5",
|
16
|
-
"2.6",
|
17
|
-
"2.7",
|
18
|
-
"3.0",
|
19
|
-
"3.1",
|
20
|
-
"3.2",
|
21
|
-
"3.3",
|
22
|
-
"head",
|
23
|
-
]
|
24
|
-
steps:
|
25
|
-
- uses: actions/checkout@v4
|
26
|
-
- name: Set up Ruby
|
27
|
-
uses: ruby/setup-ruby@v1
|
28
|
-
with:
|
29
|
-
ruby-version: ${{ matrix.ruby }}
|
30
|
-
bundler-cache: true
|
31
|
-
- name: Run tests
|
32
|
-
run: bundle exec rake test:units
|
33
|
-
|
34
|
-
test-legacy:
|
35
|
-
runs-on: ubuntu-20.04
|
36
|
-
strategy:
|
37
|
-
matrix:
|
38
|
-
ruby: ["2.0", "2.1", "2.2"]
|
11
|
+
ruby: ["2.5", "2.6", "2.7", "3.0", "3.1", "3.2", "3.3", "3.4", "head"]
|
39
12
|
steps:
|
40
13
|
- uses: actions/checkout@v4
|
41
14
|
- name: Set up Ruby
|
@@ -45,10 +18,12 @@ jobs:
|
|
45
18
|
bundler-cache: true
|
46
19
|
- name: Run tests
|
47
20
|
run: bundle exec rake test:units
|
21
|
+
env:
|
22
|
+
RUBYOPT: ${{ startsWith(matrix.ruby, 'head') && '--enable=frozen-string-literal' || '' }}
|
48
23
|
|
49
24
|
test-all:
|
50
25
|
runs-on: ubuntu-latest
|
51
|
-
needs:
|
26
|
+
needs: test
|
52
27
|
if: always()
|
53
28
|
steps:
|
54
29
|
- name: All tests ok
|
@@ -74,7 +49,7 @@ jobs:
|
|
74
49
|
runs-on: ubuntu-latest
|
75
50
|
strategy:
|
76
51
|
matrix:
|
77
|
-
ruby: ["2.
|
52
|
+
ruby: ["2.5", "ruby"]
|
78
53
|
steps:
|
79
54
|
- uses: actions/checkout@v4
|
80
55
|
- name: Set up Ruby
|
data/.github/workflows/push.yml
CHANGED
data/.rubocop.yml
CHANGED
@@ -3,7 +3,7 @@ inherit_from: .rubocop_todo.yml
|
|
3
3
|
AllCops:
|
4
4
|
DisplayCopNames: true
|
5
5
|
DisplayStyleGuide: true
|
6
|
-
TargetRubyVersion: 2.
|
6
|
+
TargetRubyVersion: 2.5
|
7
7
|
|
8
8
|
Lint/AmbiguousBlockAssociation:
|
9
9
|
Enabled: false
|
@@ -18,12 +18,12 @@ Style/ClassAndModuleChildren:
|
|
18
18
|
Enabled: false
|
19
19
|
Style/DoubleNegation:
|
20
20
|
Enabled: false
|
21
|
-
|
21
|
+
Naming/FileName:
|
22
22
|
Exclude:
|
23
23
|
- "Dangerfile"
|
24
|
-
|
24
|
+
Layout/IndentHeredoc:
|
25
25
|
Enabled: false
|
26
|
-
|
26
|
+
Layout/SpaceAroundEqualsInParameterDefault:
|
27
27
|
EnforcedStyle: no_space
|
28
28
|
Style/StringLiterals:
|
29
29
|
EnforcedStyle: double_quotes
|
@@ -47,7 +47,7 @@ Metrics/CyclomaticComplexity:
|
|
47
47
|
Enabled: false
|
48
48
|
Metrics/MethodLength:
|
49
49
|
Enabled: false
|
50
|
-
|
50
|
+
Naming/PredicateName:
|
51
51
|
Enabled: false
|
52
52
|
Metrics/LineLength:
|
53
53
|
Enabled: false
|
@@ -59,5 +59,5 @@ Metrics/ClassLength:
|
|
59
59
|
Enabled: false
|
60
60
|
Metrics/ModuleLength:
|
61
61
|
Enabled: false
|
62
|
-
|
62
|
+
Naming/AccessorMethodName:
|
63
63
|
Enabled: false
|
data/.rubocop_todo.yml
CHANGED
@@ -439,7 +439,7 @@ Style/MethodDefParentheses:
|
|
439
439
|
# Offense count: 3
|
440
440
|
# Configuration parameters: SupportedStyles.
|
441
441
|
# SupportedStyles: snake_case, camelCase
|
442
|
-
|
442
|
+
Naming/MethodName:
|
443
443
|
EnforcedStyle: snake_case
|
444
444
|
Exclude:
|
445
445
|
- 'test/unit/test_color.rb'
|
@@ -460,7 +460,7 @@ Style/NumericPredicate:
|
|
460
460
|
- 'lib/sshkit/command.rb'
|
461
461
|
|
462
462
|
# Offense count: 1
|
463
|
-
|
463
|
+
Naming/BinaryOperatorParameterName:
|
464
464
|
Exclude:
|
465
465
|
- 'lib/sshkit/host.rb'
|
466
466
|
|
@@ -611,7 +611,7 @@ Style/UnneededPercentQ:
|
|
611
611
|
# Offense count: 1
|
612
612
|
# Configuration parameters: EnforcedStyle, SupportedStyles.
|
613
613
|
# SupportedStyles: snake_case, normalcase, non_integer
|
614
|
-
|
614
|
+
Naming/VariableNumber:
|
615
615
|
Exclude:
|
616
616
|
- 'test/unit/backends/test_connection_pool.rb'
|
617
617
|
|
data/Gemfile
CHANGED
data/RELEASING.md
CHANGED
@@ -135,8 +135,7 @@ module SSHKit
|
|
135
135
|
# Backends which extend the Abstract backend should implement the following methods:
|
136
136
|
def upload!(_local, _remote, _options = {}) raise MethodUnavailableError end
|
137
137
|
def download!(_remote, _local=nil, _options = {}) raise MethodUnavailableError end
|
138
|
-
def execute_command(_cmd) raise MethodUnavailableError end
|
139
|
-
private :execute_command # Can inline after Ruby 2.1
|
138
|
+
private def execute_command(_cmd) raise MethodUnavailableError end
|
140
139
|
|
141
140
|
private
|
142
141
|
|
data/lib/sshkit/color.rb
CHANGED
@@ -44,8 +44,8 @@ module SSHKit
|
|
44
44
|
return string unless COLOR_CODES.key?(color)
|
45
45
|
|
46
46
|
result = mode == :bold ? "\e[1;" : "\e[0;"
|
47
|
-
|
48
|
-
result
|
47
|
+
|
48
|
+
"#{result}#{COLOR_CODES.fetch(color)};49m#{string}\e[0m"
|
49
49
|
end
|
50
50
|
|
51
51
|
# Returns `true` if the underlying output is a tty, or if the SSHKIT_COLOR
|
data/lib/sshkit/version.rb
CHANGED
data/sshkit.gemspec
CHANGED
@@ -19,19 +19,20 @@ Gem::Specification.new do |gem|
|
|
19
19
|
gem.name = "sshkit"
|
20
20
|
gem.require_paths = ["lib"]
|
21
21
|
gem.version = SSHKit::VERSION
|
22
|
+
gem.required_ruby_version = ">= 2.5"
|
22
23
|
|
23
|
-
gem.add_runtime_dependency('base64')
|
24
|
+
gem.add_runtime_dependency('base64')
|
25
|
+
gem.add_runtime_dependency('logger')
|
24
26
|
gem.add_runtime_dependency('net-ssh', '>= 2.8.0')
|
25
27
|
gem.add_runtime_dependency('net-scp', '>= 1.1.2')
|
26
28
|
gem.add_runtime_dependency('net-sftp', '>= 2.1.2')
|
27
|
-
gem.add_runtime_dependency('ostruct')
|
29
|
+
gem.add_runtime_dependency('ostruct')
|
28
30
|
|
29
31
|
gem.add_development_dependency('danger')
|
30
32
|
gem.add_development_dependency('minitest', '>= 5.0.0')
|
31
33
|
gem.add_development_dependency('minitest-reporters')
|
32
|
-
gem.add_development_dependency('rainbow', '~> 2.2.2')
|
33
34
|
gem.add_development_dependency('rake')
|
34
|
-
gem.add_development_dependency('rubocop', "~> 0.
|
35
|
+
gem.add_development_dependency('rubocop', "~> 0.52.0")
|
35
36
|
gem.add_development_dependency('mocha')
|
36
37
|
|
37
38
|
gem.add_development_dependency('bcrypt_pbkdf')
|
@@ -131,7 +131,7 @@ module SSHKit
|
|
131
131
|
|
132
132
|
def test_test_does_not_raise_on_non_zero_exit_status
|
133
133
|
Netssh.new(a_host) do |_host|
|
134
|
-
test :false
|
134
|
+
test :false # rubocop:disable Lint/BooleanSymbol
|
135
135
|
end.run
|
136
136
|
end
|
137
137
|
|
@@ -151,7 +151,7 @@ module SSHKit
|
|
151
151
|
# ensure we enable connection pool
|
152
152
|
SSHKit::Backend::Netssh.pool.idle_timeout = 10
|
153
153
|
Netssh.new(a_host) do |_host|
|
154
|
-
test :false
|
154
|
+
test :false # rubocop:disable Lint/BooleanSymbol
|
155
155
|
end.run
|
156
156
|
sleep 2.5
|
157
157
|
captured_command_result = nil
|
data/test/unit/test_command.rb
CHANGED
metadata
CHANGED
@@ -1,15 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sshkit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.24.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lee Hambley
|
8
8
|
- Tom Clements
|
9
|
-
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2025-02-09 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: base64
|
@@ -25,6 +24,20 @@ dependencies:
|
|
25
24
|
- - ">="
|
26
25
|
- !ruby/object:Gem::Version
|
27
26
|
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: logger
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
28
41
|
- !ruby/object:Gem::Dependency
|
29
42
|
name: net-ssh
|
30
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -123,20 +136,6 @@ dependencies:
|
|
123
136
|
- - ">="
|
124
137
|
- !ruby/object:Gem::Version
|
125
138
|
version: '0'
|
126
|
-
- !ruby/object:Gem::Dependency
|
127
|
-
name: rainbow
|
128
|
-
requirement: !ruby/object:Gem::Requirement
|
129
|
-
requirements:
|
130
|
-
- - "~>"
|
131
|
-
- !ruby/object:Gem::Version
|
132
|
-
version: 2.2.2
|
133
|
-
type: :development
|
134
|
-
prerelease: false
|
135
|
-
version_requirements: !ruby/object:Gem::Requirement
|
136
|
-
requirements:
|
137
|
-
- - "~>"
|
138
|
-
- !ruby/object:Gem::Version
|
139
|
-
version: 2.2.2
|
140
139
|
- !ruby/object:Gem::Dependency
|
141
140
|
name: rake
|
142
141
|
requirement: !ruby/object:Gem::Requirement
|
@@ -157,14 +156,14 @@ dependencies:
|
|
157
156
|
requirements:
|
158
157
|
- - "~>"
|
159
158
|
- !ruby/object:Gem::Version
|
160
|
-
version: 0.
|
159
|
+
version: 0.52.0
|
161
160
|
type: :development
|
162
161
|
prerelease: false
|
163
162
|
version_requirements: !ruby/object:Gem::Requirement
|
164
163
|
requirements:
|
165
164
|
- - "~>"
|
166
165
|
- !ruby/object:Gem::Version
|
167
|
-
version: 0.
|
166
|
+
version: 0.52.0
|
168
167
|
- !ruby/object:Gem::Dependency
|
169
168
|
name: mocha
|
170
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -323,7 +322,6 @@ licenses:
|
|
323
322
|
- MIT
|
324
323
|
metadata:
|
325
324
|
changelog_uri: https://github.com/capistrano/sshkit/releases
|
326
|
-
post_install_message:
|
327
325
|
rdoc_options: []
|
328
326
|
require_paths:
|
329
327
|
- lib
|
@@ -331,15 +329,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
331
329
|
requirements:
|
332
330
|
- - ">="
|
333
331
|
- !ruby/object:Gem::Version
|
334
|
-
version: '
|
332
|
+
version: '2.5'
|
335
333
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
336
334
|
requirements:
|
337
335
|
- - ">="
|
338
336
|
- !ruby/object:Gem::Version
|
339
337
|
version: '0'
|
340
338
|
requirements: []
|
341
|
-
rubygems_version: 3.
|
342
|
-
signing_key:
|
339
|
+
rubygems_version: 3.6.3
|
343
340
|
specification_version: 4
|
344
341
|
summary: SSHKit makes it easy to write structured, testable SSH commands in Ruby
|
345
342
|
test_files:
|