aspera-cli 4.5.0 → 4.8.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.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +1 -0
- data/README.md +1894 -1574
- data/bin/ascli +21 -1
- data/bin/asession +38 -34
- data/docs/test_env.conf +14 -3
- data/examples/aoc.rb +17 -15
- data/examples/dascli +26 -0
- data/examples/faspex4.rb +42 -35
- data/examples/proxy.pac +1 -1
- data/examples/transfer.rb +38 -37
- data/lib/aspera/aoc.rb +245 -205
- data/lib/aspera/ascmd.rb +111 -90
- data/lib/aspera/ats_api.rb +16 -14
- data/lib/aspera/cli/basic_auth_plugin.rb +19 -18
- data/lib/aspera/cli/extended_value.rb +50 -39
- data/lib/aspera/cli/formater.rb +161 -135
- data/lib/aspera/cli/info.rb +18 -0
- data/lib/aspera/cli/listener/line_dump.rb +4 -2
- data/lib/aspera/cli/listener/logger.rb +3 -1
- data/lib/aspera/cli/listener/progress.rb +20 -21
- data/lib/aspera/cli/listener/progress_multi.rb +29 -31
- data/lib/aspera/cli/main.rb +194 -183
- data/lib/aspera/cli/manager.rb +213 -206
- data/lib/aspera/cli/plugin.rb +71 -49
- data/lib/aspera/cli/plugins/alee.rb +8 -7
- data/lib/aspera/cli/plugins/aoc.rb +675 -558
- data/lib/aspera/cli/plugins/ats.rb +116 -109
- data/lib/aspera/cli/plugins/bss.rb +35 -34
- data/lib/aspera/cli/plugins/config.rb +722 -542
- data/lib/aspera/cli/plugins/console.rb +28 -22
- data/lib/aspera/cli/plugins/cos.rb +28 -37
- data/lib/aspera/cli/plugins/faspex.rb +281 -227
- data/lib/aspera/cli/plugins/faspex5.rb +129 -84
- data/lib/aspera/cli/plugins/node.rb +426 -232
- data/lib/aspera/cli/plugins/orchestrator.rb +106 -98
- data/lib/aspera/cli/plugins/preview.rb +196 -191
- data/lib/aspera/cli/plugins/server.rb +131 -126
- data/lib/aspera/cli/plugins/shares.rb +49 -36
- data/lib/aspera/cli/plugins/sync.rb +27 -28
- data/lib/aspera/cli/transfer_agent.rb +84 -79
- data/lib/aspera/cli/version.rb +3 -1
- data/lib/aspera/colors.rb +37 -28
- data/lib/aspera/command_line_builder.rb +84 -63
- data/lib/aspera/cos_node.rb +68 -34
- data/lib/aspera/data_repository.rb +4 -2
- data/lib/aspera/environment.rb +61 -46
- data/lib/aspera/fasp/agent_base.rb +36 -31
- data/lib/aspera/fasp/agent_connect.rb +44 -37
- data/lib/aspera/fasp/agent_direct.rb +101 -104
- data/lib/aspera/fasp/agent_httpgw.rb +91 -90
- data/lib/aspera/fasp/agent_node.rb +36 -33
- data/lib/aspera/fasp/agent_trsdk.rb +28 -31
- data/lib/aspera/fasp/error.rb +3 -1
- data/lib/aspera/fasp/error_info.rb +81 -54
- data/lib/aspera/fasp/installation.rb +171 -151
- data/lib/aspera/fasp/listener.rb +2 -0
- data/lib/aspera/fasp/parameters.rb +105 -111
- data/lib/aspera/fasp/parameters.yaml +305 -249
- data/lib/aspera/fasp/resume_policy.rb +20 -20
- data/lib/aspera/fasp/transfer_spec.rb +27 -0
- data/lib/aspera/fasp/uri.rb +31 -29
- data/lib/aspera/faspex_gw.rb +95 -118
- data/lib/aspera/hash_ext.rb +12 -13
- data/lib/aspera/id_generator.rb +11 -9
- data/lib/aspera/keychain/encrypted_hash.rb +73 -57
- data/lib/aspera/keychain/macos_security.rb +27 -29
- data/lib/aspera/log.rb +40 -39
- data/lib/aspera/nagios.rb +24 -22
- data/lib/aspera/node.rb +38 -30
- data/lib/aspera/oauth.rb +217 -248
- data/lib/aspera/open_application.rb +9 -7
- data/lib/aspera/persistency_action_once.rb +15 -14
- data/lib/aspera/persistency_folder.rb +15 -18
- data/lib/aspera/preview/file_types.rb +266 -270
- data/lib/aspera/preview/generator.rb +94 -92
- data/lib/aspera/preview/image_error.png +0 -0
- data/lib/aspera/preview/options.rb +20 -17
- data/lib/aspera/preview/utils.rb +99 -102
- data/lib/aspera/preview/video_error.png +0 -0
- data/lib/aspera/{proxy_auto_config.erb.js → proxy_auto_config.js} +23 -31
- data/lib/aspera/proxy_auto_config.rb +114 -21
- data/lib/aspera/rest.rb +144 -142
- data/lib/aspera/rest_call_error.rb +3 -2
- data/lib/aspera/rest_error_analyzer.rb +31 -31
- data/lib/aspera/rest_errors_aspera.rb +18 -16
- data/lib/aspera/secret_hider.rb +68 -0
- data/lib/aspera/ssh.rb +20 -16
- data/lib/aspera/sync.rb +57 -54
- data/lib/aspera/temp_file_manager.rb +20 -14
- data/lib/aspera/timer_limiter.rb +10 -8
- data/lib/aspera/uri_reader.rb +14 -15
- data/lib/aspera/web_auth.rb +85 -80
- data.tar.gz.sig +0 -0
- metadata +169 -40
- metadata.gz.sig +2 -0
- data/bin/dascli +0 -13
- data/docs/Makefile +0 -63
- data/docs/README.erb.md +0 -4221
- data/docs/README.md +0 -13
- data/docs/diagrams.txt +0 -49
- data/docs/doc_tools.rb +0 -58
- data/lib/aspera/cli/plugins/shares2.rb +0 -114
- data/lib/aspera/fasp/default.rb +0 -17
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'fileutils'
|
2
4
|
require 'aspera/log'
|
3
5
|
|
@@ -6,15 +8,11 @@ require 'aspera/log'
|
|
6
8
|
module Aspera
|
7
9
|
# Persist data on file system
|
8
10
|
class PersistencyFolder
|
9
|
-
FILE_SUFFIX='.txt'
|
11
|
+
FILE_SUFFIX = '.txt'
|
10
12
|
private_constant :FILE_SUFFIX
|
11
13
|
def initialize(folder)
|
12
|
-
@cache={}
|
13
|
-
|
14
|
-
end
|
15
|
-
|
16
|
-
def set_folder(folder)
|
17
|
-
@folder=folder
|
14
|
+
@cache = {}
|
15
|
+
@folder = folder
|
18
16
|
Log.log.debug("persistency folder: #{@folder}")
|
19
17
|
end
|
20
18
|
|
@@ -22,35 +20,35 @@ module Aspera
|
|
22
20
|
def get(object_id)
|
23
21
|
Log.log.debug("persistency get: #{object_id}")
|
24
22
|
if @cache.has_key?(object_id)
|
25
|
-
Log.log.debug(
|
23
|
+
Log.log.debug('got from memory cache')
|
26
24
|
else
|
27
|
-
persist_filepath=id_to_filepath(object_id)
|
25
|
+
persist_filepath = id_to_filepath(object_id)
|
28
26
|
Log.log.debug("persistency = #{persist_filepath}")
|
29
27
|
if File.exist?(persist_filepath)
|
30
|
-
Log.log.debug(
|
31
|
-
@cache[object_id]=File.read(persist_filepath)
|
28
|
+
Log.log.debug('got from file cache')
|
29
|
+
@cache[object_id] = File.read(persist_filepath)
|
32
30
|
end
|
33
31
|
end
|
34
32
|
return @cache[object_id]
|
35
33
|
end
|
36
34
|
|
37
35
|
def put(object_id,value)
|
38
|
-
raise
|
39
|
-
persist_filepath=id_to_filepath(object_id)
|
36
|
+
raise 'value: only String supported' unless value.is_a?(String)
|
37
|
+
persist_filepath = id_to_filepath(object_id)
|
40
38
|
Log.log.debug("persistency saving: #{persist_filepath}")
|
41
39
|
File.write(persist_filepath,value)
|
42
|
-
@cache[object_id]=value
|
40
|
+
@cache[object_id] = value
|
43
41
|
end
|
44
42
|
|
45
43
|
def delete(object_id)
|
46
|
-
persist_filepath=id_to_filepath(object_id)
|
44
|
+
persist_filepath = id_to_filepath(object_id)
|
47
45
|
Log.log.debug("persistency deleting: #{persist_filepath}")
|
48
46
|
File.delete(persist_filepath) if File.exist?(persist_filepath)
|
49
47
|
@cache.delete(object_id)
|
50
48
|
end
|
51
49
|
|
52
50
|
def garbage_collect(persist_category,max_age_seconds=nil)
|
53
|
-
garbage_files=Dir[File.join(@folder,persist_category+'*'+FILE_SUFFIX)]
|
51
|
+
garbage_files = Dir[File.join(@folder,persist_category + '*' + FILE_SUFFIX)]
|
54
52
|
if !max_age_seconds.nil?
|
55
53
|
current_time = Time.now
|
56
54
|
garbage_files.select! { |filepath| (current_time - File.stat(filepath).mtime).to_i > max_age_seconds}
|
@@ -66,11 +64,10 @@ module Aspera
|
|
66
64
|
|
67
65
|
# @param object_id String or Array
|
68
66
|
def id_to_filepath(object_id)
|
69
|
-
raise
|
67
|
+
raise 'object_id: only String supported' unless object_id.is_a?(String)
|
70
68
|
FileUtils.mkdir_p(@folder)
|
71
69
|
return File.join(@folder,"#{object_id}#{FILE_SUFFIX}")
|
72
70
|
#.gsub(/[^a-z]+/,FILE_FIELD_SEPARATOR)
|
73
71
|
end
|
74
|
-
|
75
72
|
end # PersistencyFolder
|
76
73
|
end # Aspera
|