cucumber-sshd 2.0.0.pre5 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c4fc1f7d9977497a8e980b168f4fd208711ce56ffe64b32d276aeebc1b9baabb
4
- data.tar.gz: 943a900e9f029576fe9d9954129c6926b8c5f893eda6ad6eee44f3b699d01517
3
+ metadata.gz: 4d1490ecfcce254e9252d001b2d5230a4b9d5a80c8fc8d75cfc181552d1776be
4
+ data.tar.gz: 563447c5cc35e66a6a01d36e59f551af08cf6202b6a97f48372e7e154861609d
5
5
  SHA512:
6
- metadata.gz: b32c97654027cbe8c7cebeacaf992d7a382a014c4c182e7adc1f2bc523ca999cc837dfb49addab9bd2090b7e4b5dff1bfb73ae0010dee4daa8414e6a5b821f16
7
- data.tar.gz: 034c163a3488953f71227f5597dadf354992bcde25ab90523b3256a43a3c156ae40d38badfafdc43a9b78ce3cf3820070e9cd8fbad41a69aa0f34b4b8e92bc10
6
+ metadata.gz: 03bec6dd3ece7de26b87dd1511c15311b4940366d1fe6e40dd56c9373e11e79e35f36490c0c060bee97b5a5c0a9219c17b4650dbb4e6b7b9ea318ec866d60389
7
+ data.tar.gz: ee7046516b62d961fb02490e58107f885c35e28d8b363143cae78449b427909e4b68b84233a2e6b482802219de67ec6759d32338e8089cbd9182a8c32cfacbac
@@ -3,12 +3,11 @@ require 'cucumber/sshd/server'
3
3
  Before '@sshd' do
4
4
  start_server = -> do
5
5
  Cucumber::SSHD::Server.start \
6
- home: ENV.fetch('CUCUMBER_SSHD_HOME', 'tmp/home'),
7
- addr: ENV.fetch('CUCUMBER_SSHD_LISTEN', '::1'),
8
- port: ENV.fetch('CUCUMBER_SSHD_PORT', 2222),
9
- debug: ENV.key?('CUCUMBER_SSHD_DEBUG'),
10
- persist: ENV.key?('CUCUMBER_SSHD_PERSIST'),
11
- wait_ready: ENV.key?('CUCUMBER_SSHD_WAIT_READY')
6
+ home: ENV.fetch('CUCUMBER_SSHD_HOME', 'tmp/home'),
7
+ addr: ENV.fetch('CUCUMBER_SSHD_LISTEN', '::1'),
8
+ port: ENV.fetch('CUCUMBER_SSHD_PORT', 2222),
9
+ debug: ENV.key?('CUCUMBER_SSHD_DEBUG'),
10
+ persist: ENV.key?('CUCUMBER_SSHD_PERSIST')
12
11
  end
13
12
 
14
13
  if !$_sshd && ENV.key?('CUCUMBER_SSHD_PERSIST')
@@ -1,27 +1,27 @@
1
1
  module Cucumber
2
2
  module SSHD
3
3
  class Server
4
- HOST = 'some_host.test'.freeze
5
- HOSTNAME = 'localhost'.freeze
6
- COMMAND = '/usr/sbin/sshd'.freeze
7
- COMMAND_ARGS = '-Deq'.freeze
8
- COMMAND_ARGS_DEBUG = '-De'.freeze
9
- KEY_PATH = 'etc/ssh_host_rsa_key'.freeze
10
- KEY_PUB_PATH = [KEY_PATH, '.pub'].join.freeze
11
- SSHD_CONFIG_PATH = 'etc/sshd_config'.freeze
12
- SSH_CONFIG_PATH = '.ssh/config'.freeze
13
- SSH_KNOWN_HOSTS_PATH = '.ssh/known_hosts'.freeze
14
- SFTP_SERVER_PATHS = %w[
4
+ HOST = 'some_host.test'.freeze
5
+ HOSTNAME = 'localhost'.freeze
6
+ COMMAND = '/usr/sbin/sshd'.freeze
7
+ COMMAND_ARGS = '-Deq'.freeze
8
+ COMMAND_ARGS_DEBUG = '-De'.freeze
9
+ KEY_PATH = 'etc/ssh_host_rsa_key'.freeze
10
+ KEY_PUB_PATH = [KEY_PATH, '.pub'].join.freeze
11
+ SSHD_CONFIG_PATH = 'etc/sshd_config'.freeze
12
+ SSH_CONFIG_PATH = '.ssh/config'.freeze
13
+ SSH_KNOWN_HOSTS_PATH = '.ssh/known_hosts'.freeze
14
+ SFTP_SERVER_PATHS = %w[
15
15
  /usr/libexec/sftp-server
16
16
  /usr/lib/openssh/sftp-server
17
17
  ].freeze
18
18
 
19
- KEY = <<-eoh.freeze
20
- -----BEGIN EC PRIVATE KEY-----
21
- MHcCAQEEIJbQy3yg9iU4xFvia9DWKWuhMzI5QGncR6OUldAOSIe7oAoGCCqGSM49
22
- AwEHoUQDQgAEJpS8Sknl2X6PNurToQCNu5lX/scaJLr3FkiufD+p67epbwIjiyzo
23
- qnLMVQddVitzQP7LEhXbNUuUAzEMfA6rAA==
24
- -----END EC PRIVATE KEY-----
19
+ KEY = <<~eoh.freeze
20
+ -----BEGIN EC PRIVATE KEY-----
21
+ MHcCAQEEIJbQy3yg9iU4xFvia9DWKWuhMzI5QGncR6OUldAOSIe7oAoGCCqGSM49
22
+ AwEHoUQDQgAEJpS8Sknl2X6PNurToQCNu5lX/scaJLr3FkiufD+p67epbwIjiyzo
23
+ qnLMVQddVitzQP7LEhXbNUuUAzEMfA6rAA==
24
+ -----END EC PRIVATE KEY-----
25
25
  eoh
26
26
  KEY_PUB =
27
27
  'ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNT' \
@@ -40,14 +40,13 @@ qnLMVQddVitzQP7LEhXbNUuUAzEMfA6rAA==
40
40
  attr_reader :home
41
41
 
42
42
  def initialize(
43
- home:, addr:, port:, debug: false, persist: false, wait_ready: false
43
+ home:, addr:, port:, debug: false, persist: false
44
44
  )
45
- @home = home
46
- @addr = addr
47
- @port = port
48
- @debug = debug
49
- @persist = persist
50
- @wait_ready = wait_ready
45
+ @home = home
46
+ @addr = addr
47
+ @port = port
48
+ @debug = debug
49
+ @persist = persist
51
50
  end
52
51
 
53
52
  def configure
@@ -68,7 +67,7 @@ qnLMVQddVitzQP7LEhXbNUuUAzEMfA6rAA==
68
67
  end
69
68
  end
70
69
  print_server_info if debug?
71
- wait_ready! if wait_ready?
70
+ wait_ready
72
71
  end
73
72
 
74
73
  def stop
@@ -78,7 +77,7 @@ qnLMVQddVitzQP7LEhXbNUuUAzEMfA6rAA==
78
77
 
79
78
  private
80
79
 
81
- attr_reader :addr, :port, :debug, :persist, :wait_ready, :pid
80
+ attr_reader :addr, :port, :debug, :persist, :pid
82
81
 
83
82
  def command
84
83
  [
@@ -91,10 +90,10 @@ qnLMVQddVitzQP7LEhXbNUuUAzEMfA6rAA==
91
90
 
92
91
  def configure_client
93
92
  write_file_secure SSH_CONFIG_PATH, <<-eoh
94
- Host #{HOST}
95
- HostName #{HOSTNAME}
96
- Port #{port}
97
- UserKnownHostsFile #{File.expand_path home}/#{SSH_KNOWN_HOSTS_PATH}
93
+ Host #{HOST}
94
+ HostName #{HOSTNAME}
95
+ Port #{port}
96
+ UserKnownHostsFile #{File.expand_path home}/#{SSH_KNOWN_HOSTS_PATH}
98
97
  eoh
99
98
  write_file_secure SSH_KNOWN_HOSTS_PATH, "[#{HOSTNAME}]:2222 #{KEY_PUB}"
100
99
  end
@@ -108,7 +107,6 @@ ListenAddress #{addr}
108
107
  Protocol 2
109
108
  HostKey #{File.expand_path home}/#{KEY_PATH}
110
109
  PidFile /dev/null
111
- UsePrivilegeSeparation no
112
110
  Subsystem sftp #{sftp_server_path}
113
111
  ForceCommand HOME=#{File.expand_path home} sh -c "cd ~; [ -f .ssh/rc ] && . .ssh/rc; $SSH_ORIGINAL_COMMAND"
114
112
  eoh
@@ -132,7 +130,6 @@ CUCUMBER SSHD STARTING ---------------------------------------------------------
132
130
  HOME: #{home}
133
131
  LISTEN: #{addr}:#{port}
134
132
  PERSIST: #{persist}
135
- WAIT_READY: #{wait_ready}
136
133
  --------------------------------------------------------------------------------
137
134
  eoh
138
135
  end
@@ -141,17 +138,13 @@ WAIT_READY: #{wait_ready}
141
138
  SFTP_SERVER_PATHS.detect { |e| File.exist? e }
142
139
  end
143
140
 
144
- def wait_ready!
141
+ def wait_ready
145
142
  TCPSocket.new HOSTNAME, port
146
143
  rescue Errno::ECONNREFUSED
147
- sleep 0.05
144
+ sleep 0.005
148
145
  retry
149
146
  end
150
147
 
151
- def wait_ready?
152
- !!wait_ready
153
- end
154
-
155
148
  def write_file_secure path, content
156
149
  File.open File.join(home, path), ?w, 0600 do |file|
157
150
  file.write content
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber-sshd
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.pre5
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thibault Jouan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-17 00:00:00.000000000 Z
11
+ date: 2022-04-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cucumber
@@ -61,7 +61,6 @@ files:
61
61
  - lib/cucumber/sshd.rb
62
62
  - lib/cucumber/sshd/cucumber.rb
63
63
  - lib/cucumber/sshd/server.rb
64
- - lib/cucumber/sshd/version.rb
65
64
  homepage: https://rubygems.org/gems/cucumber-sshd
66
65
  licenses:
67
66
  - BSD-3-Clause
@@ -77,11 +76,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
77
76
  version: '0'
78
77
  required_rubygems_version: !ruby/object:Gem::Requirement
79
78
  requirements:
80
- - - ">"
79
+ - - ">="
81
80
  - !ruby/object:Gem::Version
82
- version: 1.3.1
81
+ version: '0'
83
82
  requirements: []
84
- rubygems_version: 3.2.29
83
+ rubygems_version: 3.3.11
85
84
  signing_key:
86
85
  specification_version: 4
87
86
  summary: Cucumber sshd helpers
@@ -1,5 +0,0 @@
1
- module Cucumber
2
- module SSHD
3
- VERSION = '2.0.0.pre5'.freeze
4
- end
5
- end