odisk 0.9.0 → 1.0.0

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 894e016fdb7500d4c16de0066f8165943f6aba8f
4
+ data.tar.gz: f88e240eaefcf75d4f16781221014af8c1940b33
5
+ SHA512:
6
+ metadata.gz: eadc880cf4cb6ab1f9827c9475c72e8a06542406d25e9fb873c6192780595a1867daa952059a94fe3de183446f116ebfa215515416a858e99a961d54b5464b03
7
+ data.tar.gz: 60d03915af7ad91af8ad4f37a99b86037f64deb33919356cd0692789ab45f8aaedfed795092febe0ad420ca96bd29efd6cb414bde0e91cdcc982b46e8c95e721
data/README.md CHANGED
@@ -25,6 +25,12 @@ which utilizes an alternative approach to dealing with multiple threads.
25
25
 
26
26
  ## <a name="release">Release Notes</a>
27
27
 
28
+ ### Release 1.0.0
29
+
30
+ - Added support for the Opee/OTerm Inspector
31
+
32
+ - Fixed race condition on shutdown bug
33
+
28
34
  ### Release 0.9.0
29
35
 
30
36
  - Updated to work properly with Ubuntu 12.
data/bin/odisk CHANGED
@@ -1,14 +1,21 @@
1
- #!/usr/bin/env ruby -wW1
1
+ #!/usr/bin/env ruby
2
2
  # encoding: UTF-8
3
3
 
4
- while (i = ARGV.index('-I'))
5
- x,path = ARGV.slice!(i, 2)
4
+ # Ubuntu does not accept arguments to ruby when called using env. To get warnings to show up the -w options is
5
+ # required. That can be set in the RUBYOPT environment variable.
6
+ # export RUBYOPT=-w
7
+
8
+ $VERBOSE = true
9
+
10
+ while (index = ARGV.index('-I'))
11
+ _,path = ARGV.slice!(index, 2)
6
12
  $: << path
7
13
  end
8
14
 
9
15
  # TBD tmp for testing
10
16
  $: << ::File.join(::File.dirname(__FILE__), "../../oj/lib")
11
17
  $: << ::File.join(::File.dirname(__FILE__), "../../oj/ext")
18
+ $: << ::File.join(::File.dirname(__FILE__), "../../oterm/lib")
12
19
  $: << ::File.join(::File.dirname(__FILE__), "../../opee/lib")
13
20
  $: << ::File.join(::File.dirname(__FILE__), "../lib")
14
21
 
@@ -34,6 +41,8 @@ $remote = ::ODisk::Remote.new()
34
41
  $crypter_count = 2
35
42
  $copier_count = 4
36
43
  $careful = false
44
+ $group_tolerant = false
45
+ $inspector_port = 0
37
46
 
38
47
  opts = OptionParser.new(%{Usage: odisk [options] <local_directory>
39
48
 
@@ -45,6 +54,7 @@ opts.on('-v', 'increase verbosity') { $verbose -= 1 unless 0 ==
45
54
  opts.on('-d', 'generate digests only') { $digests_only = true }
46
55
  opts.on('-u', 'unencrypted or plain remote files') { $plain = true }
47
56
  opts.on('-c', 'careful mode, no local removes') { $careful = true }
57
+ opts.on('-g', 'allow differences in groups') { $group_tolerant = true }
48
58
  opts.on('-n', 'dry run / no modifications') { $dry_run = true }
49
59
  opts.on('-r', '--remote [user@host:dir:pass_file]',
50
60
  String, 'remote user, host, directory, passphrase file for gpg') { |r|
@@ -62,8 +72,9 @@ opts.on('-m', '--master [local | remote]',
62
72
  Process.exit!(0)
63
73
  end
64
74
  }
65
- opts.on('-e', '--encrypt-count Integer', Integer, 'number of encryption actors') { |i| $crypter_count = i }
66
- opts.on('-c', '--copier-count Integer', Integer, 'number of copier actors') { |i| $copier_count = i }
75
+ opts.on('-e', '--encrypt-count Integer', Integer, 'number of encryption actors') { |cnt| $crypter_count = cnt }
76
+ opts.on('-c', '--copier-count Integer', Integer, 'number of copier actors') { |cnt| $copier_count = cnt }
77
+ opts.on('-i', '--inspector-port Integer', Integer, 'inspector port') { |port| $inspector_port = port }
67
78
  opts.on('-h', '--help', 'Show this display') { puts opts.help; Process.exit!(0) }
68
79
  dirs = opts.parse(ARGV)
69
80
 
@@ -101,10 +112,16 @@ if Logger::INFO >= $verbose
101
112
  local: #{::File.expand_path($local_top)}
102
113
  dry run: #{$dry_run}
103
114
  master: #{$master.nil? ? 'NONE' : (::ODisk::Planner::Step::LOCAL == $master ? 'LOCAL' : 'REMOTE')}
115
+ inspector port: #{$inspector_port}
104
116
  })
105
117
  end
106
118
  end
107
119
 
120
+ inspector = nil
121
+ if 0 < $inspector_port
122
+ inspector = Opee::SocketInspector.new($inspector_port)
123
+ end
124
+
108
125
  # If $local_top/.odisk/remote does not exist or is different that what is in $remote, replace it.
109
126
  remote_str = $remote.to_s
110
127
  top_remote_path = ::File.join($local_top, '.odisk', 'remote')
@@ -151,12 +168,13 @@ fetcher = ::ODisk::Fetcher.new(:name => 'Fetcher',
151
168
  :collector => planner) unless $digests_only
152
169
  digester = ::ODisk::Digester.new(:name => 'Digester',
153
170
  :collector => planner)
154
- starter = ::ODisk::SyncStarter.new(:name => 'Starter',
155
- :dir_queue => dir_wq,
156
- :digester => digester,
157
- :fetcher => fetcher,
158
- :collector => planner)
171
+ ::ODisk::SyncStarter.new(:name => 'Starter',
172
+ :dir_queue => dir_wq,
173
+ :digester => digester,
174
+ :fetcher => fetcher,
175
+ :collector => planner)
159
176
 
160
177
  dir_wq.ask(:add, '')
161
178
 
162
179
  ::Opee::Env.wait_close()
180
+ #inspector.acceptThread.join() if nil != inspector
@@ -1,6 +1,12 @@
1
- #!/usr/bin/env ruby -wW1
1
+ #!/usr/bin/env ruby
2
2
  # encoding: UTF-8
3
3
 
4
+ # Ubuntu does not accept arguments to ruby when called using env. To get warnings to show up the -w options is
5
+ # required. That can be set in the RUBYOPT environment variable.
6
+ # export RUBYOPT=-w
7
+
8
+ $VERBOSE = true
9
+
4
10
  while (i = ARGV.index('-I'))
5
11
  x,path = ARGV.slice!(i, 2)
6
12
  $: << path
@@ -1,6 +1,12 @@
1
- #!/usr/bin/env ruby -wW1
1
+ #!/usr/bin/env ruby
2
2
  # encoding: UTF-8
3
3
 
4
+ # Ubuntu does not accept arguments to ruby when called using env. To get warnings to show up the -w options is
5
+ # required. That can be set in the RUBYOPT environment variable.
6
+ # export RUBYOPT=-w
7
+
8
+ $VERBOSE = true
9
+
4
10
  while (i = ARGV.index('-I'))
5
11
  x,path = ARGV.slice!(i, 2)
6
12
  $: << path
@@ -81,7 +81,7 @@ module ODisk
81
81
  end
82
82
 
83
83
  def remove_remote(path)
84
- unless $dry_runb
84
+ unless $dry_run
85
85
  @ssh = Net::SSH.start($remote.host, $remote.user) if @ssh.nil?
86
86
  out = @ssh.exec!(%{rm -rf "#{path}" "#{path}.gpg"})
87
87
  raise out unless out.nil? || out.strip().empty?
@@ -25,9 +25,9 @@ module ODisk
25
25
  end
26
26
 
27
27
  def close()
28
+ super()
28
29
  @ftp.close_channel() unless @ftp.nil?
29
30
  @ftp = nil
30
- super()
31
31
  end
32
32
 
33
33
  private
@@ -30,7 +30,7 @@ module ODisk
30
30
  # don't check master flag
31
31
  (@name == o.name &&
32
32
  @owner == o.owner &&
33
- @group == o.group &&
33
+ (@group == o.group || $group_tolerant) &&
34
34
  @mode == o.mode &&
35
35
  @removed == o.removed)
36
36
  end
@@ -1,5 +1,5 @@
1
1
 
2
2
  module ODisk
3
3
  # Current version of the module.
4
- VERSION = '0.9.0'
4
+ VERSION = '1.0.0'
5
5
  end
metadata CHANGED
@@ -1,78 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: odisk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
5
- prerelease:
4
+ version: 1.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Peter Ohler
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-11-20 00:00:00.000000000 Z
11
+ date: 2013-12-27 00:00:00.000000000 Z
13
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: oterm
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
14
27
  - !ruby/object:Gem::Dependency
15
28
  name: opee
16
29
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
30
  requirements:
19
- - - ! '>='
31
+ - - "~>"
20
32
  - !ruby/object:Gem::Version
21
33
  version: '0'
22
34
  type: :runtime
23
35
  prerelease: false
24
36
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
37
  requirements:
27
- - - ! '>='
38
+ - - "~>"
28
39
  - !ruby/object:Gem::Version
29
40
  version: '0'
30
41
  - !ruby/object:Gem::Dependency
31
42
  name: oj
32
43
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
44
  requirements:
35
- - - ! '>='
45
+ - - "~>"
36
46
  - !ruby/object:Gem::Version
37
47
  version: '0'
38
48
  type: :runtime
39
49
  prerelease: false
40
50
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
51
  requirements:
43
- - - ! '>='
52
+ - - "~>"
44
53
  - !ruby/object:Gem::Version
45
54
  version: '0'
46
55
  - !ruby/object:Gem::Dependency
47
56
  name: net-ssh
48
57
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
58
  requirements:
51
- - - ! '>='
59
+ - - "~>"
52
60
  - !ruby/object:Gem::Version
53
61
  version: '0'
54
62
  type: :runtime
55
63
  prerelease: false
56
64
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
65
  requirements:
59
- - - ! '>='
66
+ - - "~>"
60
67
  - !ruby/object:Gem::Version
61
68
  version: '0'
62
69
  - !ruby/object:Gem::Dependency
63
70
  name: net-sftp
64
71
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
72
  requirements:
67
- - - ! '>='
73
+ - - "~>"
68
74
  - !ruby/object:Gem::Version
69
75
  version: '0'
70
76
  type: :runtime
71
77
  prerelease: false
72
78
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
79
  requirements:
75
- - - ! '>='
80
+ - - "~>"
76
81
  - !ruby/object:Gem::Version
77
82
  version: '0'
78
83
  description: Remote Encrypted File Synchronization, oDisk
@@ -85,6 +90,12 @@ extensions: []
85
90
  extra_rdoc_files:
86
91
  - README.md
87
92
  files:
93
+ - LICENSE
94
+ - README.md
95
+ - bin/odisk
96
+ - bin/odisk_forget
97
+ - bin/odisk_remove
98
+ - lib/odisk.rb
88
99
  - lib/odisk/copier.rb
89
100
  - lib/odisk/crypter.rb
90
101
  - lib/odisk/diff.rb
@@ -103,36 +114,29 @@ files:
103
114
  - lib/odisk/syncjob.rb
104
115
  - lib/odisk/syncstarter.rb
105
116
  - lib/odisk/version.rb
106
- - lib/odisk.rb
107
- - LICENSE
108
- - README.md
109
- - bin/odisk
110
- - bin/odisk_forget
111
- - bin/odisk_remove
112
117
  homepage: http://www.ohler.com/odisk
113
118
  licenses: []
119
+ metadata: {}
114
120
  post_install_message:
115
121
  rdoc_options:
116
- - --main
122
+ - "--main"
117
123
  - README.md
118
124
  require_paths:
119
125
  - lib
120
126
  required_ruby_version: !ruby/object:Gem::Requirement
121
- none: false
122
127
  requirements:
123
- - - ! '>='
128
+ - - ">="
124
129
  - !ruby/object:Gem::Version
125
130
  version: '0'
126
131
  required_rubygems_version: !ruby/object:Gem::Requirement
127
- none: false
128
132
  requirements:
129
- - - ! '>='
133
+ - - ">="
130
134
  - !ruby/object:Gem::Version
131
135
  version: '0'
132
136
  requirements: []
133
137
  rubyforge_project: odisk
134
- rubygems_version: 1.8.23
138
+ rubygems_version: 2.2.0
135
139
  signing_key:
136
- specification_version: 3
140
+ specification_version: 4
137
141
  summary: Remote Encrypted File Synchronization, oDisk
138
142
  test_files: []