bfs-scp 0.7.2 → 0.7.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d30fbc577f75cfa618423e299e08dc7ca08fe857d2139d69082e7a0a4b629b88
4
- data.tar.gz: 04ad9c4acb42fa70b33233f6662057c336e67c1999394f5ee98607589f1557bc
3
+ metadata.gz: '082511639a1f7eb8048581b475eb529cd49c804bc2b403ae19b69eb0ab43a42a'
4
+ data.tar.gz: 548569c50be5de5d6866167260cd343e938241f2f7fe4a5b55fb88130db1f763
5
5
  SHA512:
6
- metadata.gz: e691623195168d64a689be190fc88282b796ee4fa52bbed51e0cbe5c7831ed027e043709ccbe27ceb620d1120b2bf4bb95f37c638954d9c71024fc05c2d8114f
7
- data.tar.gz: 4433f5ceaf8d66ef4ed14cc4fb34be4a0eb0b6e212e29c3223f545935ce15e739280884aea46f54f522771dcdac1e656dc95eb9122bc55e06f42637abf94fee8
6
+ metadata.gz: 24a18cba7f9bfae36ee116e026f89e3bd3755f1e16ec465b6cf8f2ed4512d27f52d239450f5686038507750879aeb03e4631cac297d9eba387618229896b1ea1
7
+ data.tar.gz: d1f1567669599b9677ecc19eb9db863605d8cfbb87170c9881b1810e0866c975200226af1d7c03fd68b57f03d72501858b359f2fe9aec93c33bc6d1648d1761d
@@ -184,6 +184,8 @@ module BFS
184
184
  end
185
185
 
186
186
  BFS.register('scp', 'ssh') do |url, opts, block|
187
+ prefix = BFS.norm_path(opts[:prefix] || url.path)
188
+ opts[:prefix] = prefix unless prefix.empty?
187
189
  opts[:user] ||= CGI.unescape(url.user) if url.user
188
190
  opts[:password] ||= CGI.unescape(url.password) if url.password
189
191
  opts[:port] ||= url.port if url.port
@@ -1,18 +1,8 @@
1
1
  require 'spec_helper'
2
2
 
3
- sandbox = { host: '127.0.0.1', opts: { port: 7022, user: 'root', password: 'root' } }.freeze
4
- run_spec = \
5
- begin
6
- Net::SCP.start sandbox[:host], nil, sandbox[:opts].merge(timeout: 1) do |scp|
7
- scp.session.exec!('hostname')
8
- end
9
- true
10
- rescue Net::SSH::Exception, Errno::ECONNREFUSED => e
11
- warn "WARNING: unable to run #{File.basename __FILE__}: #{e.message}"
12
- false
13
- end
3
+ sandbox = { host: '127.0.0.1', opts: { port: 7022, user: 'root', password: 'root' } }.freeze
14
4
 
15
- RSpec.describe BFS::Bucket::SCP, if: run_spec do
5
+ RSpec.describe BFS::Bucket::SCP, scp: true do
16
6
  context 'absolute' do
17
7
  subject { described_class.new sandbox[:host], **sandbox[:opts].merge(prefix: SecureRandom.uuid) }
18
8
  after { subject.close }
@@ -30,6 +20,13 @@ RSpec.describe BFS::Bucket::SCP, if: run_spec do
30
20
  it 'should resolve from URL' do
31
21
  bucket = BFS.resolve('scp://root:root@127.0.0.1:7022')
32
22
  expect(bucket).to be_instance_of(described_class)
23
+ expect(bucket.instance_variable_get(:@prefix)).to be_nil
24
+ bucket.close
25
+
26
+ bucket = BFS.resolve('scp://root:root@127.0.0.1:7022/a/b/')
27
+ expect(bucket).to be_instance_of(described_class)
28
+ expect(bucket.instance_variable_get(:@prefix)).to eq('a/b/')
29
+ bucket.close
33
30
  end
34
31
 
35
32
  it 'should handle absolute and relative paths' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bfs-scp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.7.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dimitrij Denissenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-02 00:00:00.000000000 Z
11
+ date: 2020-07-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bfs
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.7.2
19
+ version: 0.7.3
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.7.2
26
+ version: 0.7.3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: net-scp
29
29
  requirement: !ruby/object:Gem::Requirement