drb_fileserver_plus 0.4.0 → 0.4.1
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
- checksums.yaml.gz.sig +0 -0
- data/lib/drb_fileserver_plus.rb +60 -58
- data.tar.gz.sig +0 -0
- metadata +32 -32
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 45b978bb65e30e30be027dde50d7fb2dc74c827187b48c3b9d329a1e4db47135
|
|
4
|
+
data.tar.gz: 8658d87c9d8c999655e114610c412851a67ab015e11c364bfdc62db8cbff6dad
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c449a64827a526009e8a78a09471f9c50ff6494cec76a0dcd71d21ad1d86442aad8cca528ed4a734022cbddb39e3bb8345f692e2d93213f07265d9f639739c7f
|
|
7
|
+
data.tar.gz: 375c3ad38607edfa37e0553453d500752e96b79b348b8ab017fccd63e89ad29256d013db57326af9bfb3862c63c6512c1dd3ab3d4738d611e694276cb6f506ff
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/lib/drb_fileserver_plus.rb
CHANGED
|
@@ -10,15 +10,15 @@ require 'drb_fileclient'
|
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
class DRbFileServer
|
|
13
|
-
|
|
13
|
+
|
|
14
14
|
attr_accessor :nodes
|
|
15
15
|
|
|
16
16
|
def initialize(nodes, sps: nil, topic: 'file')
|
|
17
|
-
|
|
17
|
+
|
|
18
18
|
@nodes = nodes
|
|
19
19
|
@failcount = 0
|
|
20
20
|
@sps, @topic = sps, topic
|
|
21
|
-
|
|
21
|
+
|
|
22
22
|
end
|
|
23
23
|
|
|
24
24
|
def chmod(permissions, fname)
|
|
@@ -37,41 +37,43 @@ class DRbFileServer
|
|
|
37
37
|
|
|
38
38
|
end
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
|
|
41
41
|
def cp(path, path2)
|
|
42
|
-
|
|
42
|
+
|
|
43
43
|
node = ''
|
|
44
|
-
|
|
44
|
+
|
|
45
45
|
file_op do |f|
|
|
46
|
-
node = 'dfs://' + @nodes.first
|
|
46
|
+
node = 'dfs://' + @nodes.first
|
|
47
47
|
f.cp File.join(node, path), File.join(node, path2)
|
|
48
48
|
end
|
|
49
|
-
|
|
49
|
+
|
|
50
50
|
if @sps then
|
|
51
|
-
@sps.notice "%s/copy: %s %s" % [@topic, File.join(node, path),
|
|
51
|
+
@sps.notice "%s/copy: %s %s" % [@topic, File.join(node, path),
|
|
52
52
|
File.join(node, path2)]
|
|
53
53
|
end
|
|
54
54
|
|
|
55
|
-
end
|
|
56
|
-
|
|
55
|
+
end
|
|
56
|
+
|
|
57
57
|
def directory?(fname)
|
|
58
|
-
|
|
59
|
-
file_op do |f|
|
|
58
|
+
|
|
59
|
+
file_op do |f|
|
|
60
60
|
node = 'dfs://' + @nodes.first
|
|
61
|
-
f.directory? File.join(node, fname)
|
|
61
|
+
f.directory? File.join(node, fname)
|
|
62
62
|
end
|
|
63
63
|
|
|
64
|
-
end
|
|
64
|
+
end
|
|
65
65
|
|
|
66
|
-
def
|
|
67
|
-
|
|
68
|
-
file_op do |f|
|
|
66
|
+
def exist?(fname)
|
|
67
|
+
|
|
68
|
+
file_op do |f|
|
|
69
69
|
node = 'dfs://' + @nodes.first
|
|
70
|
-
f.
|
|
70
|
+
f.exist? File.join(node, fname)
|
|
71
71
|
end
|
|
72
72
|
|
|
73
73
|
end
|
|
74
74
|
|
|
75
|
+
alias exists? exist?
|
|
76
|
+
|
|
75
77
|
def glob(path)
|
|
76
78
|
|
|
77
79
|
file_op do |f|
|
|
@@ -81,85 +83,85 @@ class DRbFileServer
|
|
|
81
83
|
|
|
82
84
|
end
|
|
83
85
|
|
|
84
|
-
|
|
86
|
+
|
|
85
87
|
def ls(path)
|
|
86
|
-
|
|
87
|
-
file_op do |f|
|
|
88
|
+
|
|
89
|
+
file_op do |f|
|
|
88
90
|
node = 'dfs://' + @nodes.first
|
|
89
91
|
f.ls File.join(node, path)
|
|
90
92
|
end
|
|
91
93
|
|
|
92
|
-
end
|
|
93
|
-
|
|
94
|
+
end
|
|
95
|
+
|
|
94
96
|
def mkdir(path)
|
|
95
97
|
|
|
96
98
|
node = ''
|
|
97
|
-
|
|
98
|
-
file_op do |f|
|
|
99
|
+
|
|
100
|
+
file_op do |f|
|
|
99
101
|
node = 'dfs://' + @nodes.first
|
|
100
102
|
f.mkdir File.join(node, path)
|
|
101
103
|
end
|
|
102
|
-
|
|
104
|
+
|
|
103
105
|
if @sps then
|
|
104
|
-
@sps.notice "%s/mkdir: %s" % [@topic, File.join(node, path)]
|
|
106
|
+
@sps.notice "%s/mkdir: %s" % [@topic, File.join(node, path)]
|
|
105
107
|
end
|
|
106
108
|
|
|
107
109
|
end
|
|
108
|
-
|
|
110
|
+
|
|
109
111
|
def mkdir_p(path)
|
|
110
112
|
|
|
111
|
-
node = ''
|
|
113
|
+
node = ''
|
|
112
114
|
|
|
113
115
|
file_op do |f|
|
|
114
116
|
node = 'dfs://' + @nodes.first
|
|
115
117
|
f.mkdir_p File.join(node, path)
|
|
116
118
|
end
|
|
117
|
-
|
|
119
|
+
|
|
118
120
|
if @sps then
|
|
119
121
|
@sps.notice "%s/mkdir_p: %s" % [@topic, File.join(node, path)]
|
|
120
122
|
end
|
|
121
|
-
|
|
123
|
+
|
|
122
124
|
end
|
|
123
|
-
|
|
125
|
+
|
|
124
126
|
def mv(path, path2)
|
|
125
127
|
|
|
126
128
|
node = ''
|
|
127
|
-
|
|
129
|
+
|
|
128
130
|
file_op do |f|
|
|
129
131
|
node = 'dfs://' + @nodes.first
|
|
130
132
|
f.mv File.join(node, path), File.join(node, path2)
|
|
131
133
|
end
|
|
132
|
-
|
|
134
|
+
|
|
133
135
|
if @sps then
|
|
134
|
-
@sps.notice "%s/mv: %s %s" % [@topic, File.join(node, path),
|
|
136
|
+
@sps.notice "%s/mv: %s %s" % [@topic, File.join(node, path),
|
|
135
137
|
File.join(node, path2)]
|
|
136
138
|
end
|
|
137
139
|
|
|
138
|
-
end
|
|
139
|
-
|
|
140
|
+
end
|
|
141
|
+
|
|
140
142
|
def read(fname)
|
|
141
|
-
|
|
143
|
+
|
|
142
144
|
file_op do |f|
|
|
143
145
|
node = 'dfs://' + @nodes.first
|
|
144
146
|
f.read File.join(node, fname)
|
|
145
147
|
end
|
|
146
148
|
|
|
147
149
|
end
|
|
148
|
-
|
|
150
|
+
|
|
149
151
|
def rm(fname)
|
|
150
152
|
|
|
151
153
|
node = ''
|
|
152
|
-
|
|
154
|
+
|
|
153
155
|
file_op do |f|
|
|
154
156
|
node = 'dfs://' + @nodes.first
|
|
155
157
|
f.rm File.join(node, fname)
|
|
156
158
|
end
|
|
157
|
-
|
|
159
|
+
|
|
158
160
|
if @sps then
|
|
159
161
|
@sps.notice "%s/rm: %s" % [@topic, File.join(node, fname)]
|
|
160
162
|
end
|
|
161
163
|
|
|
162
|
-
end
|
|
164
|
+
end
|
|
163
165
|
|
|
164
166
|
def rm_r(fname, force: false)
|
|
165
167
|
|
|
@@ -224,33 +226,33 @@ class DRbFileServer
|
|
|
224
226
|
def write(fname, content)
|
|
225
227
|
|
|
226
228
|
node = ''
|
|
227
|
-
|
|
229
|
+
|
|
228
230
|
file_op do |f|
|
|
229
231
|
node = 'dfs://' + @nodes.first
|
|
230
232
|
f.write File.join(node, fname), content
|
|
231
233
|
end
|
|
232
|
-
|
|
234
|
+
|
|
233
235
|
if @sps then
|
|
234
236
|
@sps.notice("%s/write: %s" % [@topic, File.join(node, fname)])
|
|
235
237
|
end
|
|
236
|
-
|
|
238
|
+
|
|
237
239
|
end
|
|
238
|
-
|
|
240
|
+
|
|
239
241
|
def zip(fname, a)
|
|
240
|
-
|
|
242
|
+
|
|
241
243
|
node = ''
|
|
242
|
-
|
|
244
|
+
|
|
243
245
|
file_op do |f|
|
|
244
246
|
node = 'dfs://' + @nodes.first
|
|
245
247
|
f.zip File.join(node, fname), a
|
|
246
248
|
end
|
|
247
|
-
|
|
249
|
+
|
|
248
250
|
if @sps then
|
|
249
251
|
@sps.notice "%s/zip: %s" % [@topic, File.join(node, fname)]
|
|
250
252
|
end
|
|
251
|
-
|
|
252
|
-
end
|
|
253
|
-
|
|
253
|
+
|
|
254
|
+
end
|
|
255
|
+
|
|
254
256
|
|
|
255
257
|
private
|
|
256
258
|
|
|
@@ -276,21 +278,21 @@ end
|
|
|
276
278
|
class DRbFileServerPlus
|
|
277
279
|
|
|
278
280
|
|
|
279
|
-
def initialize(host: 'localhost', port: '61010', nodes: [], sps_host: nil,
|
|
281
|
+
def initialize(host: 'localhost', port: '61010', nodes: [], sps_host: nil,
|
|
280
282
|
sps_port: '59010', sps_topic: 'file')
|
|
281
283
|
|
|
282
284
|
@host, @port, @nodes = host, port, nodes
|
|
283
|
-
|
|
285
|
+
|
|
284
286
|
if sps_host then
|
|
285
|
-
@sps = SPSPub.new(host: sps_host, port: sps_port)
|
|
287
|
+
@sps = SPSPub.new(host: sps_host, port: sps_port)
|
|
286
288
|
@topic = sps_topic
|
|
287
289
|
end
|
|
288
290
|
|
|
289
291
|
end
|
|
290
292
|
|
|
291
293
|
def start()
|
|
292
|
-
|
|
293
|
-
DRb.start_service "druby://#{@host}:#{@port}",
|
|
294
|
+
|
|
295
|
+
DRb.start_service "druby://#{@host}:#{@port}",
|
|
294
296
|
DRbFileServer.new(@nodes, sps: @sps, topic: @topic)
|
|
295
297
|
DRb.thread.join
|
|
296
298
|
|
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: drb_fileserver_plus
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.4.
|
|
4
|
+
version: 0.4.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- James Robertson
|
|
@@ -10,32 +10,33 @@ bindir: bin
|
|
|
10
10
|
cert_chain:
|
|
11
11
|
- |
|
|
12
12
|
-----BEGIN CERTIFICATE-----
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
13
|
+
MIIEljCCAv6gAwIBAgIBATANBgkqhkiG9w0BAQsFADBIMRIwEAYDVQQDDAlnZW1t
|
|
14
|
+
YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
|
|
15
|
+
8ixkARkWAmV1MB4XDTIzMDEyNTIxMjEwOFoXDTI0MDEyNTIxMjEwOFowSDESMBAG
|
|
16
|
+
A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
|
|
17
|
+
EjAQBgoJkiaJk/IsZAEZFgJldTCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoC
|
|
18
|
+
ggGBAKUhddvwozZjtYVEj/yqjWLKzvpRMU1wRBd6PWCCK/+t9hgMYt46lhP5GHsY
|
|
19
|
+
zM2OevMekeNKBEd5JSZketiK1ghbRlfALh1ONST6PKWNnt3BnikLEXK0xlWZbOGz
|
|
20
|
+
0S7Yca2p34exICkIu1wHOctvhSdNMe2NUybYjKHsef6qAxx43gySgnSgFS9FcGlm
|
|
21
|
+
oVtH0ugZQHU12fE6vhK4BJlFjMgyuLAMIMRM+BotlwoIEM8QY9ZMwY2MlN1ljOVA
|
|
22
|
+
e3/1mAvk4dZqj+J8CX58djzOGH0XUFw6tq9LO081yEb6Ca0pPONoDqQeU+NdyU0y
|
|
23
|
+
Ep/P683ESZQpjbBgB9OUI4dDD0x2N5ab1mN4OO/eBmE0ZDGcSCH0VVM5FJGVwJiT
|
|
24
|
+
7T74fzDX/diDutvMLnkgDTUMIntcbn/ruPjbnmYKB0ZoeXiacZ5RPm9LD9sQns9G
|
|
25
|
+
20sMOc8m6eSKK7T9VO77SjAYyQh7mArYDtkRRCI0h1lmr/WesFfmiUylSiAIEVyd
|
|
26
|
+
InhSpQIDAQABo4GKMIGHMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
|
|
27
|
+
BBQ0U9w98+0gW/IyGjq0uaw4cZ6tGjAmBgNVHREEHzAdgRtnZW1tYXN0ZXJAamFt
|
|
28
|
+
ZXNyb2JlcnRzb24uZXUwJgYDVR0SBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
|
|
29
|
+
c29uLmV1MA0GCSqGSIb3DQEBCwUAA4IBgQA3mG7NrH1mUM8L9IAlkwLZQuUhJ7GS
|
|
30
|
+
2V6uiTo9+5GZnBdLDddogVzl2TJxibaSjBHsD4q9cqlU0Q/zc6yWjE1S564ixxgO
|
|
31
|
+
Z+reN+03uJW278dgt6xCPElAevlyKzFSRIAJDGMTbyUasKQa5EyvkhzJmRlHlB2G
|
|
32
|
+
2h8glYWurSEMAEW3MwAlnM/dx9xY5ZPZmm7mrYibZyZ14VBFvhjDb8N5f0b1fFGk
|
|
33
|
+
hsKTNGtZsX2ZtEKdppb243kEDSB42H1j+rUJ+buhnNEInYPVJUssxBdGvT/dx6lH
|
|
34
|
+
hnWcmRcU24PREmDrkjS68yye9Q2zdxTRy0h6vfPoNj5OFYP5BRdnojw0FNIInawG
|
|
35
|
+
SUzB/uXV+0btPu9UxE7axB0CsLZc/HTEEHwVf2LXn/f64Hc4geyDFCmsVTYHbHG1
|
|
36
|
+
4AI2oRADnvq+nYMWGxnDYHN4TsTgfn4kn21RVrSj4UENz+KinmDEJgGqpWXmYMzh
|
|
37
|
+
zw/9Ryb7BSzoMUXa+KmdyeiL9ArhU9YQh7s=
|
|
37
38
|
-----END CERTIFICATE-----
|
|
38
|
-
date:
|
|
39
|
+
date: 2023-01-25 00:00:00.000000000 Z
|
|
39
40
|
dependencies:
|
|
40
41
|
- !ruby/object:Gem::Dependency
|
|
41
42
|
name: drb_fileclient
|
|
@@ -43,20 +44,20 @@ dependencies:
|
|
|
43
44
|
requirements:
|
|
44
45
|
- - "~>"
|
|
45
46
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: '0.
|
|
47
|
+
version: '0.8'
|
|
47
48
|
- - ">="
|
|
48
49
|
- !ruby/object:Gem::Version
|
|
49
|
-
version: 0.
|
|
50
|
+
version: 0.8.1
|
|
50
51
|
type: :runtime
|
|
51
52
|
prerelease: false
|
|
52
53
|
version_requirements: !ruby/object:Gem::Requirement
|
|
53
54
|
requirements:
|
|
54
55
|
- - "~>"
|
|
55
56
|
- !ruby/object:Gem::Version
|
|
56
|
-
version: '0.
|
|
57
|
+
version: '0.8'
|
|
57
58
|
- - ">="
|
|
58
59
|
- !ruby/object:Gem::Version
|
|
59
|
-
version: 0.
|
|
60
|
+
version: 0.8.1
|
|
60
61
|
- !ruby/object:Gem::Dependency
|
|
61
62
|
name: sps-pub
|
|
62
63
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -103,8 +104,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
103
104
|
- !ruby/object:Gem::Version
|
|
104
105
|
version: '0'
|
|
105
106
|
requirements: []
|
|
106
|
-
|
|
107
|
-
rubygems_version: 2.7.10
|
|
107
|
+
rubygems_version: 3.4.4
|
|
108
108
|
signing_key:
|
|
109
109
|
specification_version: 4
|
|
110
110
|
summary: Designed to provide fault tolerant access to a DRb file server when 2 or
|
metadata.gz.sig
CHANGED
|
Binary file
|