sambala 0.8.8 → 0.8.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/lib/sambala.rb +39 -34
- data/lib/sambala_gardener.rb +26 -10
- data/test/tc_sambala_main.rb +98 -0
- metadata +6 -6
- data/lib/test_sambala2.rb +0 -72
data/lib/sambala.rb
CHANGED
@@ -43,7 +43,7 @@ class Sambala
|
|
43
43
|
# * :password = the password to log into the server
|
44
44
|
# * :threads = how many parallel operations you want initiated, !!! higher than 4 at you own risk !!!
|
45
45
|
# === Example
|
46
|
-
#
|
46
|
+
# samba = Sambala.new( :domain => 'NTDOMAIN',
|
47
47
|
# :host => 'sambaserver',
|
48
48
|
# :share => 'sambashare',
|
49
49
|
# :user => 'walrus',
|
@@ -52,27 +52,23 @@ class Sambala
|
|
52
52
|
def initialize(options={:domain => '', :host => '', :share => '', :user => '', :password => '', :threads => 1})
|
53
53
|
begin
|
54
54
|
options[:threads] = 4 if options[:threads] > 4
|
55
|
-
options[:init_timeout] = options[:threads] *
|
55
|
+
options[:init_timeout] = options[:threads] * 1
|
56
56
|
@options = options; gardener_ok
|
57
|
-
rescue SmbInitError
|
58
|
-
raise SmbInitError.exception("Failed smbclient initialisation")
|
59
57
|
rescue
|
60
58
|
@gardener.close unless @gardener.nil? || @gardener.class != 'Gardener'
|
61
59
|
raise RuntimeError.exception("Unknown Process Failed!!")
|
62
60
|
end
|
63
61
|
end
|
64
|
-
|
65
|
-
#
|
66
|
-
# when queued operations are executed in parallel, one does not control which command will get executed first,
|
67
|
-
# making a queued +cd+ operation very dangerous.
|
62
|
+
|
63
|
+
# The +cd+ instance method takes only one argument, the path to which you wish to change directory
|
68
64
|
# === Parameters
|
69
65
|
# * :to = the path to change directory to
|
70
66
|
# === Interactive Returns
|
71
67
|
# * _boolean_ = confirms if +cd+ operation completed successfully
|
72
68
|
# === Example
|
73
|
-
#
|
69
|
+
# samba.cd(:to => 'aFolder/anOtherFolder/') # => true
|
74
70
|
def cd(opts={:to => ''})
|
75
|
-
|
71
|
+
execute_all('cd', opts[:to])
|
76
72
|
end
|
77
73
|
|
78
74
|
# The +du+ instance does exactly what _du_ usually does: estimates file space usage.
|
@@ -81,7 +77,7 @@ class Sambala
|
|
81
77
|
# === Interactive Returns
|
82
78
|
# * _string_ = +du+ command results
|
83
79
|
# === Example
|
84
|
-
# puts
|
80
|
+
# puts samba.du # => 34923 blocks of size 2097152. 27407 blocks available
|
85
81
|
# Total number of bytes: 59439077
|
86
82
|
def du(opts={:queue=>false})
|
87
83
|
execute('du', '', opts[:queue])[1]
|
@@ -94,12 +90,12 @@ class Sambala
|
|
94
90
|
# === Interactive Returns
|
95
91
|
# * _boolean_ = confirms if +del+ operation completed successfully
|
96
92
|
# === Example
|
97
|
-
#
|
93
|
+
# samba.del(:mask => 'aFile') # => true
|
98
94
|
def del(opts={:mask => nil, :queue=>false})
|
99
95
|
execute('del', opts[:mask], opts[:queue])[0]
|
100
96
|
end
|
101
|
-
|
102
|
-
# The
|
97
|
+
alias rm del
|
98
|
+
# The exist? instance method is borrowed from Ruby File Class idiome.
|
103
99
|
# It is used to test the presence of files or directories on the server
|
104
100
|
# === Parameters
|
105
101
|
# * :mask = the mask matching the file or directory to look for.
|
@@ -107,7 +103,7 @@ class Sambala
|
|
107
103
|
# === Interactive Returns
|
108
104
|
# * _boolean_ = confirm the presence of a matching file or directory
|
109
105
|
# === Example
|
110
|
-
#
|
106
|
+
# samba.exist?(:mask => 'aFile') # => true
|
111
107
|
def exist?(opts={:mask => nil, :queue => false})
|
112
108
|
execute('ls', opts[:mask], opts[:queue])[0]
|
113
109
|
end
|
@@ -121,24 +117,21 @@ class Sambala
|
|
121
117
|
# === Interactive Returns
|
122
118
|
# _array_ = [ _booleanSuccess_, _getResultMessage_ ]
|
123
119
|
# === Example
|
124
|
-
#
|
120
|
+
# samba.get(:from => 'aFile.txt') # => [true, "getting file \\aFile.txt.rb of size 3877 as test.rb (99.6 kb/s) (average 89.9 kb/s)\r\n"]
|
125
121
|
def get(opts={:from => nil, :to => nil, :queue => false})
|
126
122
|
opts[:to].nil? ? strng = opts[:from] : strng = opts[:from] + ' ' + opts[:to]
|
127
123
|
execute('get', strng, opts[:queue])
|
128
124
|
end
|
129
125
|
|
130
|
-
# The +lcd+ instance method changes the current working directory on the local machine to the directory specified.
|
131
|
-
# Its one of the only implemented command where queue mode is not available, for the simple reason that
|
132
|
-
# when queued operations are executed in parallel, one does not control which command will get executed first,
|
133
|
-
# making a queued +lcd+ operation very dangerous.
|
126
|
+
# The +lcd+ instance method changes the current working directory on the local machine to the directory specified.
|
134
127
|
# === Parameters
|
135
128
|
# * :to = the path to change directory to
|
136
129
|
# === Interactive Returns
|
137
130
|
# * _boolean_ = confirms if +cd+ operation completed successfully
|
138
131
|
# === Example
|
139
|
-
#
|
132
|
+
# samba.lcd(:to => 'aLocalFolder/anOtherFolder/') # => true
|
140
133
|
def lcd(opts={:to => ''})
|
141
|
-
|
134
|
+
execute_all('lcd', opts[:to])
|
142
135
|
end
|
143
136
|
|
144
137
|
# The +lowercase+ method toggles lowercasing of filenames for the get command.
|
@@ -147,7 +140,7 @@ class Sambala
|
|
147
140
|
# === Interactive Returns
|
148
141
|
# * _boolean_ = confirms if +lowercase+ operation completed successfully
|
149
142
|
# === Example
|
150
|
-
#
|
143
|
+
# samba.lowercase # => true # toggle from files all UPPERCASE to all lowercase
|
151
144
|
def lowercase
|
152
145
|
execute_all('lowercase' ,'')
|
153
146
|
end
|
@@ -159,7 +152,7 @@ class Sambala
|
|
159
152
|
# === Interactive Returns
|
160
153
|
# * _string_ = containing +ls+ command results
|
161
154
|
# === Example
|
162
|
-
#
|
155
|
+
# samba.ls # => genpi.rb A 81 Mon Nov 17 22:12:40 2008
|
163
156
|
# 34923 blocks of size 2097152. 27407 blocks available
|
164
157
|
def ls(opts={:mask => nil, :queue=>false})
|
165
158
|
execute('ls' ,opts[:mask], opts[:queue])[1]
|
@@ -172,7 +165,7 @@ class Sambala
|
|
172
165
|
# === Parameters
|
173
166
|
# * :mask = the matching filter
|
174
167
|
# === Example
|
175
|
-
#
|
168
|
+
# samba.mask(:mask => 'filter*') # => true
|
176
169
|
def mask(opts={:mask => nil})
|
177
170
|
execute_all('mask' ,opts[:mask])
|
178
171
|
end
|
@@ -185,7 +178,7 @@ class Sambala
|
|
185
178
|
# === Interactive Returns
|
186
179
|
# _array_ = [ _booleanSuccess_, _mgetResultMessage_ ]
|
187
180
|
# === Example
|
188
|
-
#
|
181
|
+
# samba.mget(:mask => 'file*') # => [true, "getting file \\file_new.txt of size 3877 as file_new.txt (99.6 kb/s) (average 89.9 kb/s)\r\n"]
|
189
182
|
def mget(opts={:mask => nil, :queue => false})
|
190
183
|
execute('mget' ,opts[:mask], opts[:queue])
|
191
184
|
end
|
@@ -197,7 +190,7 @@ class Sambala
|
|
197
190
|
# === Interactive Returns
|
198
191
|
# * _boolean_ = confirms if +mkdir+ operation completed successfully
|
199
192
|
# === Example
|
200
|
-
#
|
193
|
+
# samba.mkdir(:path => 'aFolder/aNewFolder') # => true
|
201
194
|
def mkdir(opts={:path => '', :queue => false})
|
202
195
|
execute('mkdir' ,opts[:path], opts[:queue])[0]
|
203
196
|
end
|
@@ -211,7 +204,7 @@ class Sambala
|
|
211
204
|
# === Interactive Returns
|
212
205
|
# _array_ = [ _booleanSuccess_, _mputResultMessage_ ]
|
213
206
|
# === Example
|
214
|
-
#
|
207
|
+
# samba.mput(:mask => 'file*') # => [true, "putting file \\file_new.txt of size 1004 as file_new.txt (65.4 kb/s) (average 65.4 kb/s)\r\n"]
|
215
208
|
def mput(opts={:mask => nil, :queue => false})
|
216
209
|
execute('mput' ,opts[:mask], opts[:queue])
|
217
210
|
end
|
@@ -225,7 +218,7 @@ class Sambala
|
|
225
218
|
# === Interactive Returns
|
226
219
|
# _array_ = [ _booleanSuccess_, _putResultMessage_ ]
|
227
220
|
# === Example
|
228
|
-
#
|
221
|
+
# samba.put(:from => 'aLocalFile.txt') # => [false, "aLocalFile.txt does not exist\r\n"]
|
229
222
|
|
230
223
|
def put(opts={:from => nil, :to => nil, :queue => false})
|
231
224
|
opts[:to].nil? ? strng = opts[:from] : strng = opts[:from] + ' ' + opts[:to]
|
@@ -237,10 +230,22 @@ class Sambala
|
|
237
230
|
# === Interactive Returns
|
238
231
|
# * _boolean_ = confirms if +mkdir+ operation completed successfully
|
239
232
|
# === Example
|
240
|
-
#
|
233
|
+
# samba.recurse # => true
|
241
234
|
def recurse
|
242
235
|
execute_all('recurse' ,'')
|
243
236
|
end
|
237
|
+
|
238
|
+
# The +rmdir+ method deletes the specified directory
|
239
|
+
# === Parameters
|
240
|
+
# * :path = the relative path to the directory to be deleted
|
241
|
+
# * :queue = sets queue processing mode. Defaults to interactive mode when no option given.
|
242
|
+
# === Interactive Returns
|
243
|
+
# * _boolean_ = confirms if +rmdir+ operation completed successfully
|
244
|
+
# === Example
|
245
|
+
# samba.rmdir(:path => 'mydir') # => true
|
246
|
+
def rmdir(opts={:path=>nil,:queue=>false})
|
247
|
+
execute('rmdir' ,opts[:path], opts[:queue])[0]
|
248
|
+
end
|
244
249
|
|
245
250
|
# The +volume+ method returns remote volume information.
|
246
251
|
# === Parameters
|
@@ -248,14 +253,14 @@ class Sambala
|
|
248
253
|
# === Interactive Returns
|
249
254
|
# * _string_ = containing +volume+ command results
|
250
255
|
# === Example
|
251
|
-
#
|
256
|
+
# samba.volume # => "Volume: |geminishare| serial number 0x6d723053"
|
252
257
|
def volume(opts={:queue=>false})
|
253
258
|
execute('volume' ,'', opts[:queue])[1]
|
254
259
|
end
|
255
260
|
|
256
261
|
# The +queue_results+ methods collect a done queue items results
|
257
262
|
# === Example
|
258
|
-
# result =
|
263
|
+
# result = samba.queue_results
|
259
264
|
def queue_results
|
260
265
|
crop = @gardener.harvest(:full_crop)
|
261
266
|
crop.map! { |result| [ result[:success], result[:seed], result[:message] ] }
|
@@ -263,14 +268,14 @@ class Sambala
|
|
263
268
|
|
264
269
|
# The +progress+ method returns a progress ratio indicator from 0.00 to 1.00
|
265
270
|
# === Example
|
266
|
-
# progress =
|
271
|
+
# progress = samba.progress # => 0.75
|
267
272
|
def progress
|
268
273
|
@gardener.growth(:progress)
|
269
274
|
end
|
270
275
|
|
271
276
|
# The +close+ method safely end the smbclient session
|
272
277
|
# === Example
|
273
|
-
#
|
278
|
+
# samba.close
|
274
279
|
def close
|
275
280
|
result = @gardener.close
|
276
281
|
result.values.map { |queue| queue.empty? }.uniq.size == 1 ? true : false
|
data/lib/sambala_gardener.rb
CHANGED
@@ -11,6 +11,7 @@ class Sambala
|
|
11
11
|
#
|
12
12
|
# :title:Sambala::Gardener
|
13
13
|
module Gardener
|
14
|
+
require 'timeout'
|
14
15
|
|
15
16
|
# The +execute+ method splits the execution according to the operation mode: queue or interactive.
|
16
17
|
# === Parameters
|
@@ -31,7 +32,6 @@ class Sambala
|
|
31
32
|
# === Example
|
32
33
|
# result = execute_all('mask','match*') # => true
|
33
34
|
def execute_all(command,data)
|
34
|
-
sleep 1
|
35
35
|
result = @gardener.seed_all("#{command} #{data}")
|
36
36
|
bools = result.map { |row| row[:success] }
|
37
37
|
bools.uniq.size == 1 ? true : false
|
@@ -65,11 +65,15 @@ class Sambala
|
|
65
65
|
init = []
|
66
66
|
catch :gardener do
|
67
67
|
4.times do |num|
|
68
|
-
init_gardener;
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
68
|
+
init_gardener; sleep 1
|
69
|
+
begin
|
70
|
+
Timeout.timeout(2) { @init_status = @gardener.init_status }
|
71
|
+
init = @init_status
|
72
|
+
init.map! { |result| result[:success] }
|
73
|
+
throw :gardener if init.uniq.size == 1 and init[0] == true
|
74
|
+
rescue Timeout::Error
|
75
|
+
end
|
76
|
+
kill_gardener_and_incr
|
73
77
|
end
|
74
78
|
raise SmbInitError.exception("Couldn't set smbclient properly")
|
75
79
|
end
|
@@ -81,7 +85,6 @@ class Sambala
|
|
81
85
|
PTY.spawn("smbclient //#{@options[:host]}/#{@options[:share]} #{@options[:password]} -W #{@options[:domain]} -U #{@options[:user]}") do |r,w,pid|
|
82
86
|
w.sync = true
|
83
87
|
$expect_verbose = false
|
84
|
-
|
85
88
|
catch :init do
|
86
89
|
loop do
|
87
90
|
r.expect(/.*\xD\xAsmb:[ \x5C]*\x3E.*/) do |text|
|
@@ -92,15 +95,14 @@ class Sambala
|
|
92
95
|
end
|
93
96
|
end
|
94
97
|
end
|
95
|
-
|
96
98
|
Abundance.grow do |seed|
|
97
99
|
w.print "#{seed.sprout}\r"
|
98
100
|
catch :result do
|
99
101
|
loop do
|
100
|
-
r.expect(/.*\xD\xAsmb: \w*[\x5C]
|
102
|
+
r.expect(/.*\xD\xAsmb: [\x5C]*\w*[\x5C]+\x3E.*/) do |text|
|
101
103
|
if text != nil
|
102
104
|
msg = text[0]
|
103
|
-
|
105
|
+
|
104
106
|
msg.gsub!(/smb: \w*\x5C\x3E\s*$/, '')
|
105
107
|
msg.gsub!(/^\s*#{seed.sprout}/, '')
|
106
108
|
msg.lstrip!
|
@@ -122,6 +124,20 @@ class Sambala
|
|
122
124
|
end
|
123
125
|
end
|
124
126
|
end
|
127
|
+
|
128
|
+
private
|
129
|
+
|
130
|
+
def kill_gardener_and_incr
|
131
|
+
begin
|
132
|
+
Timeout.timeout(2) { @gardener.close }
|
133
|
+
rescue Timeout::Error
|
134
|
+
pids = @gardener.rows_pids; pids << @gardener.garden_pid
|
135
|
+
pids.each { |pid| Process.kill('HUP', pid)}
|
136
|
+
end
|
137
|
+
@gardener = nil
|
138
|
+
@options[:threads] -= 1 unless @options[:threads] == 1; @options[:init_timeout] += 1
|
139
|
+
end
|
140
|
+
|
125
141
|
end
|
126
142
|
|
127
143
|
end
|
@@ -0,0 +1,98 @@
|
|
1
|
+
$:.unshift File.join(File.dirname(__FILE__), "..", "lib")
|
2
|
+
require 'test/unit'
|
3
|
+
require 'sambala'
|
4
|
+
|
5
|
+
TESTDIR = 'sambala_test'
|
6
|
+
|
7
|
+
class TestSambalaMain < Test::Unit::TestCase
|
8
|
+
|
9
|
+
def setup
|
10
|
+
check_smbclient_presence
|
11
|
+
get_samba_param_from_input
|
12
|
+
init_sambala
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_main
|
16
|
+
ls_one = check_ls
|
17
|
+
check_mkdir(TESTDIR)
|
18
|
+
check_exist(TESTDIR)
|
19
|
+
check_cd(TESTDIR)
|
20
|
+
ls_two = check_ls
|
21
|
+
assert(ls_one != ls_two)
|
22
|
+
# check_exist
|
23
|
+
check_cd('..')
|
24
|
+
check_rmdir(TESTDIR)
|
25
|
+
end
|
26
|
+
|
27
|
+
def teardown
|
28
|
+
close = @samba.close
|
29
|
+
assert(close)
|
30
|
+
end
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
def check_smbclient_presence
|
35
|
+
answer = `smbclient --help`
|
36
|
+
assert(answer.include?('Usage'), "No 'smbclient' tool was found on this computer,\nPlease install 'smbclient' and try again.")
|
37
|
+
end
|
38
|
+
|
39
|
+
def get_samba_param_from_input
|
40
|
+
puts "I will need you to input some working Samba connection settings..."
|
41
|
+
print "\n"; sleep 1
|
42
|
+
print "host name or IP: "
|
43
|
+
@host = $stdin.gets.chomp
|
44
|
+
print "share name: "
|
45
|
+
@share = $stdin.gets.chomp
|
46
|
+
print "domain: "
|
47
|
+
@domain = $stdin.gets.chomp
|
48
|
+
print "user: "
|
49
|
+
@user = $stdin.gets.chomp
|
50
|
+
print "password: "
|
51
|
+
@password = $stdin.gets.chomp
|
52
|
+
puts "I will now try to connect to #{@share.to_s} for the purpose of testing sambala..."
|
53
|
+
print "\n"
|
54
|
+
end
|
55
|
+
|
56
|
+
def init_sambala
|
57
|
+
@samba = Sambala.new( :domain => @domain,
|
58
|
+
:host => @host,
|
59
|
+
:share => @share,
|
60
|
+
:user => @user,
|
61
|
+
:password => @password,
|
62
|
+
:threads => 1)
|
63
|
+
puts "Connection successfull,\nnow proceding with test:"
|
64
|
+
end
|
65
|
+
|
66
|
+
def check_ls
|
67
|
+
result = @samba.ls
|
68
|
+
assert_not_nil(result)
|
69
|
+
result_alias = @samba.dir
|
70
|
+
assert_not_nil(result)
|
71
|
+
assert(result == result_alias)
|
72
|
+
return result
|
73
|
+
end
|
74
|
+
|
75
|
+
def check_cd(path)
|
76
|
+
cd = @samba.cd(:to => path)
|
77
|
+
assert_equal(true,cd)
|
78
|
+
end
|
79
|
+
|
80
|
+
def check_exist(path)
|
81
|
+
exist = @samba.exist?(:mask => path)
|
82
|
+
assert_equal(true,exist)
|
83
|
+
end
|
84
|
+
|
85
|
+
def check_mkdir(path)
|
86
|
+
re = @samba.mkdir(:path => path)
|
87
|
+
assert_equal(true,re)
|
88
|
+
end
|
89
|
+
|
90
|
+
def check_rmdir(path)
|
91
|
+
re = @samba.rmdir(:path => path)
|
92
|
+
assert_equal(true,re)
|
93
|
+
end
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
|
98
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sambala
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Louis-Philippe Perron
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-01-
|
12
|
+
date: 2009-01-27 00:00:00 -05:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -20,7 +20,7 @@ dependencies:
|
|
20
20
|
requirements:
|
21
21
|
- - ">="
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 1.
|
23
|
+
version: 1.3.1
|
24
24
|
version:
|
25
25
|
description:
|
26
26
|
email: lp@spiralix.org
|
@@ -33,7 +33,7 @@ extra_rdoc_files: []
|
|
33
33
|
files:
|
34
34
|
- lib/sambala.rb
|
35
35
|
- lib/sambala_gardener.rb
|
36
|
-
-
|
36
|
+
- test/tc_sambala_main.rb
|
37
37
|
has_rdoc: true
|
38
38
|
homepage: http://sambala.rubyforge.org/
|
39
39
|
post_install_message:
|
@@ -60,5 +60,5 @@ rubygems_version: 1.2.0
|
|
60
60
|
signing_key:
|
61
61
|
specification_version: 2
|
62
62
|
summary: ruby samba client, interactive smbclient commands session and multi-threaded smb transfer queued mode
|
63
|
-
test_files:
|
64
|
-
|
63
|
+
test_files:
|
64
|
+
- test/tc_sambala_main.rb
|
data/lib/test_sambala2.rb
DELETED
@@ -1,72 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
$:.unshift File.join(File.dirname(__FILE__), "..", "lib")
|
3
|
-
# require 'test/unit'
|
4
|
-
# require 'rubygems'
|
5
|
-
require 'sambala'
|
6
|
-
|
7
|
-
puts "init"
|
8
|
-
begin
|
9
|
-
# b = Sambala.new( :domain => 'TCSMTLPROD',
|
10
|
-
# :host => 'modulagampc',
|
11
|
-
# :share => 'testBkp',
|
12
|
-
# :user => 'perronlo',
|
13
|
-
# :password => 'lpMOD1135',
|
14
|
-
# :threads => 4 )
|
15
|
-
# rescue Sambala::SmbInitError
|
16
|
-
# raise RuntimeError.exception("Couldn't initialise Sambala")
|
17
|
-
# end
|
18
|
-
|
19
|
-
b = Sambala.new( :domain => '',
|
20
|
-
:host => 'spiralgemini',
|
21
|
-
:share => 'geminishare',
|
22
|
-
:user => 'leelasheel',
|
23
|
-
:password => 'goLEELAubu',
|
24
|
-
:threads => 2 )
|
25
|
-
rescue Sambala::SmbInitError
|
26
|
-
raise RuntimeError.exception("Couldn't initialise Sambala")
|
27
|
-
end
|
28
|
-
|
29
|
-
puts "init Sambala done"
|
30
|
-
puts "sambala object: #{b.inspect}"
|
31
|
-
b.lowercase
|
32
|
-
puts "done lowercase"
|
33
|
-
# l = b.ls
|
34
|
-
l = b.ls(:mask => 'gen*')
|
35
|
-
puts "progress is: #{b.progress}"
|
36
|
-
puts "ls: #{l.inspect}"
|
37
|
-
# pu = b.put(:from => 'shoe.rb')
|
38
|
-
# puts "progress is: #{b.progress}"
|
39
|
-
# puts "put: #{pu.inspect}"
|
40
|
-
|
41
|
-
# g = b.get(:from => 'inin.rb')
|
42
|
-
# puts "get: #{g.inspect}"
|
43
|
-
v = b.volume
|
44
|
-
puts "progress is: #{b.progress}"
|
45
|
-
puts "volume: #{v.inspect}"
|
46
|
-
|
47
|
-
b.recurse
|
48
|
-
d = b.du
|
49
|
-
puts "progress is: #{b.progress}"
|
50
|
-
puts "du: #{d.inspect}"
|
51
|
-
# c = b.close
|
52
|
-
# puts "CCCCCCCCCC is: #{c.inspect}"
|
53
|
-
|
54
|
-
lsqueue = b.ls(:queue => true)
|
55
|
-
puts "lsqueue: #{lsqueue.inspect} #{lsqueue.class}"
|
56
|
-
# b.put(:from => 'ore.rb', :queue => true)
|
57
|
-
puts "progress is: #{b.progress}"
|
58
|
-
# b.get(:from => 'TEST.rb', :queue => true)
|
59
|
-
b.volume(:queue => true)
|
60
|
-
puts "progress is: #{b.progress}"
|
61
|
-
b.du(:queue => true)
|
62
|
-
puts "progress is: #{b.progress}"
|
63
|
-
|
64
|
-
res = b.queue_results
|
65
|
-
puts "results is: #{res.inspect}"
|
66
|
-
# sleep 1
|
67
|
-
# b.recurse
|
68
|
-
# l = b.ls
|
69
|
-
# puts "ls: #{l.inspect}"
|
70
|
-
|
71
|
-
c = b.close
|
72
|
-
puts "CCCCCCCCCC is: #{c.inspect}"
|