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.
Files changed (104) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +1 -0
  3. data/README.md +1894 -1574
  4. data/bin/ascli +21 -1
  5. data/bin/asession +38 -34
  6. data/docs/test_env.conf +14 -3
  7. data/examples/aoc.rb +17 -15
  8. data/examples/dascli +26 -0
  9. data/examples/faspex4.rb +42 -35
  10. data/examples/proxy.pac +1 -1
  11. data/examples/transfer.rb +38 -37
  12. data/lib/aspera/aoc.rb +245 -205
  13. data/lib/aspera/ascmd.rb +111 -90
  14. data/lib/aspera/ats_api.rb +16 -14
  15. data/lib/aspera/cli/basic_auth_plugin.rb +19 -18
  16. data/lib/aspera/cli/extended_value.rb +50 -39
  17. data/lib/aspera/cli/formater.rb +161 -135
  18. data/lib/aspera/cli/info.rb +18 -0
  19. data/lib/aspera/cli/listener/line_dump.rb +4 -2
  20. data/lib/aspera/cli/listener/logger.rb +3 -1
  21. data/lib/aspera/cli/listener/progress.rb +20 -21
  22. data/lib/aspera/cli/listener/progress_multi.rb +29 -31
  23. data/lib/aspera/cli/main.rb +194 -183
  24. data/lib/aspera/cli/manager.rb +213 -206
  25. data/lib/aspera/cli/plugin.rb +71 -49
  26. data/lib/aspera/cli/plugins/alee.rb +8 -7
  27. data/lib/aspera/cli/plugins/aoc.rb +675 -558
  28. data/lib/aspera/cli/plugins/ats.rb +116 -109
  29. data/lib/aspera/cli/plugins/bss.rb +35 -34
  30. data/lib/aspera/cli/plugins/config.rb +722 -542
  31. data/lib/aspera/cli/plugins/console.rb +28 -22
  32. data/lib/aspera/cli/plugins/cos.rb +28 -37
  33. data/lib/aspera/cli/plugins/faspex.rb +281 -227
  34. data/lib/aspera/cli/plugins/faspex5.rb +129 -84
  35. data/lib/aspera/cli/plugins/node.rb +426 -232
  36. data/lib/aspera/cli/plugins/orchestrator.rb +106 -98
  37. data/lib/aspera/cli/plugins/preview.rb +196 -191
  38. data/lib/aspera/cli/plugins/server.rb +131 -126
  39. data/lib/aspera/cli/plugins/shares.rb +49 -36
  40. data/lib/aspera/cli/plugins/sync.rb +27 -28
  41. data/lib/aspera/cli/transfer_agent.rb +84 -79
  42. data/lib/aspera/cli/version.rb +3 -1
  43. data/lib/aspera/colors.rb +37 -28
  44. data/lib/aspera/command_line_builder.rb +84 -63
  45. data/lib/aspera/cos_node.rb +68 -34
  46. data/lib/aspera/data_repository.rb +4 -2
  47. data/lib/aspera/environment.rb +61 -46
  48. data/lib/aspera/fasp/agent_base.rb +36 -31
  49. data/lib/aspera/fasp/agent_connect.rb +44 -37
  50. data/lib/aspera/fasp/agent_direct.rb +101 -104
  51. data/lib/aspera/fasp/agent_httpgw.rb +91 -90
  52. data/lib/aspera/fasp/agent_node.rb +36 -33
  53. data/lib/aspera/fasp/agent_trsdk.rb +28 -31
  54. data/lib/aspera/fasp/error.rb +3 -1
  55. data/lib/aspera/fasp/error_info.rb +81 -54
  56. data/lib/aspera/fasp/installation.rb +171 -151
  57. data/lib/aspera/fasp/listener.rb +2 -0
  58. data/lib/aspera/fasp/parameters.rb +105 -111
  59. data/lib/aspera/fasp/parameters.yaml +305 -249
  60. data/lib/aspera/fasp/resume_policy.rb +20 -20
  61. data/lib/aspera/fasp/transfer_spec.rb +27 -0
  62. data/lib/aspera/fasp/uri.rb +31 -29
  63. data/lib/aspera/faspex_gw.rb +95 -118
  64. data/lib/aspera/hash_ext.rb +12 -13
  65. data/lib/aspera/id_generator.rb +11 -9
  66. data/lib/aspera/keychain/encrypted_hash.rb +73 -57
  67. data/lib/aspera/keychain/macos_security.rb +27 -29
  68. data/lib/aspera/log.rb +40 -39
  69. data/lib/aspera/nagios.rb +24 -22
  70. data/lib/aspera/node.rb +38 -30
  71. data/lib/aspera/oauth.rb +217 -248
  72. data/lib/aspera/open_application.rb +9 -7
  73. data/lib/aspera/persistency_action_once.rb +15 -14
  74. data/lib/aspera/persistency_folder.rb +15 -18
  75. data/lib/aspera/preview/file_types.rb +266 -270
  76. data/lib/aspera/preview/generator.rb +94 -92
  77. data/lib/aspera/preview/image_error.png +0 -0
  78. data/lib/aspera/preview/options.rb +20 -17
  79. data/lib/aspera/preview/utils.rb +99 -102
  80. data/lib/aspera/preview/video_error.png +0 -0
  81. data/lib/aspera/{proxy_auto_config.erb.js → proxy_auto_config.js} +23 -31
  82. data/lib/aspera/proxy_auto_config.rb +114 -21
  83. data/lib/aspera/rest.rb +144 -142
  84. data/lib/aspera/rest_call_error.rb +3 -2
  85. data/lib/aspera/rest_error_analyzer.rb +31 -31
  86. data/lib/aspera/rest_errors_aspera.rb +18 -16
  87. data/lib/aspera/secret_hider.rb +68 -0
  88. data/lib/aspera/ssh.rb +20 -16
  89. data/lib/aspera/sync.rb +57 -54
  90. data/lib/aspera/temp_file_manager.rb +20 -14
  91. data/lib/aspera/timer_limiter.rb +10 -8
  92. data/lib/aspera/uri_reader.rb +14 -15
  93. data/lib/aspera/web_auth.rb +85 -80
  94. data.tar.gz.sig +0 -0
  95. metadata +169 -40
  96. metadata.gz.sig +2 -0
  97. data/bin/dascli +0 -13
  98. data/docs/Makefile +0 -63
  99. data/docs/README.erb.md +0 -4221
  100. data/docs/README.md +0 -13
  101. data/docs/diagrams.txt +0 -49
  102. data/docs/doc_tools.rb +0 -58
  103. data/lib/aspera/cli/plugins/shares2.rb +0 -114
  104. 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
- set_folder(folder)
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("got from memory cache")
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("got from file cache")
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 "value: only String supported" unless value.is_a?(String)
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 "object_id: only String supported" unless object_id.is_a?(String)
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