aspera-cli 4.4.0 → 4.5.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 (45) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1042 -787
  3. data/bin/ascli +1 -1
  4. data/bin/asession +3 -5
  5. data/docs/Makefile +4 -7
  6. data/docs/README.erb.md +988 -740
  7. data/examples/faspex4.rb +4 -6
  8. data/examples/transfer.rb +2 -2
  9. data/lib/aspera/aoc.rb +139 -118
  10. data/lib/aspera/cli/listener/progress_multi.rb +5 -5
  11. data/lib/aspera/cli/main.rb +64 -34
  12. data/lib/aspera/cli/manager.rb +19 -20
  13. data/lib/aspera/cli/plugin.rb +9 -1
  14. data/lib/aspera/cli/plugins/aoc.rb +156 -143
  15. data/lib/aspera/cli/plugins/ats.rb +11 -10
  16. data/lib/aspera/cli/plugins/bss.rb +2 -2
  17. data/lib/aspera/cli/plugins/config.rb +236 -112
  18. data/lib/aspera/cli/plugins/faspex.rb +29 -7
  19. data/lib/aspera/cli/plugins/faspex5.rb +21 -8
  20. data/lib/aspera/cli/plugins/node.rb +21 -9
  21. data/lib/aspera/cli/plugins/orchestrator.rb +5 -3
  22. data/lib/aspera/cli/plugins/preview.rb +2 -2
  23. data/lib/aspera/cli/plugins/server.rb +3 -3
  24. data/lib/aspera/cli/plugins/shares.rb +17 -0
  25. data/lib/aspera/cli/transfer_agent.rb +47 -85
  26. data/lib/aspera/cli/version.rb +1 -1
  27. data/lib/aspera/environment.rb +4 -4
  28. data/lib/aspera/fasp/{manager.rb → agent_base.rb} +7 -6
  29. data/lib/aspera/fasp/{connect.rb → agent_connect.rb} +46 -39
  30. data/lib/aspera/fasp/{local.rb → agent_direct.rb} +14 -17
  31. data/lib/aspera/fasp/{http_gw.rb → agent_httpgw.rb} +4 -4
  32. data/lib/aspera/fasp/{node.rb → agent_node.rb} +25 -8
  33. data/lib/aspera/fasp/agent_trsdk.rb +106 -0
  34. data/lib/aspera/fasp/default.rb +17 -0
  35. data/lib/aspera/fasp/installation.rb +64 -48
  36. data/lib/aspera/fasp/parameters.rb +7 -3
  37. data/lib/aspera/faspex_gw.rb +6 -6
  38. data/lib/aspera/keychain/encrypted_hash.rb +120 -0
  39. data/lib/aspera/keychain/macos_security.rb +94 -0
  40. data/lib/aspera/log.rb +45 -32
  41. data/lib/aspera/node.rb +3 -6
  42. data/lib/aspera/rest.rb +65 -49
  43. metadata +68 -27
  44. data/lib/aspera/api_detector.rb +0 -60
  45. data/lib/aspera/secrets.rb +0 -20
data/bin/ascli CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'rubygems'
3
- $LOAD_PATH.unshift(File.dirname(__FILE__)+"/../lib")
3
+ $LOAD_PATH.unshift(File.realpath(File.dirname(File.realpath(__FILE__))+"/../lib"))
4
4
  require 'aspera/cli/main'
5
5
  require 'aspera/environment'
6
6
  Encoding.default_internal = Encoding::UTF_8
data/bin/asession CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  # Laurent Martin/2017
3
3
  $LOAD_PATH.unshift(File.dirname(__FILE__)+"/../lib")
4
- require 'aspera/fasp/local'
4
+ require 'aspera/fasp/agent_direct'
5
5
  require 'aspera/cli/listener/line_dump'
6
6
  require 'aspera/cli/extended_value'
7
7
  require 'aspera/log'
@@ -65,10 +65,8 @@ if transfer_spec.has_key?(TS_TMP_FILELIST_FOLDER)
65
65
  Aspera::Fasp::Parameters.file_list_folder=transfer_spec[TS_TMP_FILELIST_FOLDER]
66
66
  transfer_spec.delete(TS_TMP_FILELIST_FOLDER)
67
67
  end
68
- # get local agent (ascp)
69
- client=Aspera::Fasp::Local.new
70
- # disable ascp output on stdout to not mix with JSON events
71
- client.quiet=true
68
+ # get local agent (ascp), disable ascp output on stdout to not mix with JSON events
69
+ client=Aspera::Fasp::AgentDirect.new({quiet: true})
72
70
  # display JSON instead of legacy Lines
73
71
  client.add_listener(Aspera::Cli::Listener::LineDump.new)
74
72
  # start transfer (asynchronous)
data/docs/Makefile CHANGED
@@ -14,20 +14,18 @@ INCL_ASESSION=$(DIR_TMP)asession_usage.txt
14
14
  # env var used in README.erb.md
15
15
  export EXENAME GEMSPEC INCL_USAGE INCL_COMMANDS INCL_ASESSION
16
16
 
17
- TMPL_TEST_CONF=$(DIR_DOC)$(TEST_CONF_FILE_BASE)
18
-
19
17
  MANUAL_BASE=$(DIR_DOC)Manual_$(EXENAME)_$(GEMVERSION)
20
18
  MANUAL_PDF=$(MANUAL_BASE).pdf
21
19
  MANUAL_HTML=$(MANUAL_BASE).html
22
20
 
23
21
  # main target to build doc
24
- all:: $(MANUAL_PDF) $(TMPL_TEST_CONF)
22
+ all:: $(MANUAL_PDF) $(TMPL_CONF_FILE_PATH)
25
23
 
26
24
  doc: all
27
25
 
28
26
  # generate template configuration file for tests, remove own secrets
29
- $(TMPL_TEST_CONF): $(TEST_CONF_FILE_PATH)
30
- ruby -e 'require "yaml";n={};c=YAML.load_file("$(TEST_CONF_FILE_PATH)").each{|k,v| n[k]=["config","default"].include?(k)?v:v.keys.inject({}){|m,i|m[i]="your value here";m}};File.write("$(TMPL_TEST_CONF)",n.to_yaml)'
27
+ $(TMPL_CONF_FILE_PATH): $(TEST_CONF_FILE_PATH)
28
+ ruby -e 'require "yaml";n={};c=YAML.load_file("$(TEST_CONF_FILE_PATH)").each{|k,v| n[k]=["config","default"].include?(k)?v:v.keys.inject({}){|m,i|m[i]="your value here";m}};File.write("$(TMPL_CONF_FILE_PATH)",n.to_yaml)'
31
29
 
32
30
  $(MANUAL_PDF): $(DIR_TOP)README.md
33
31
  pandoc --number-sections --resource-path=. --toc -o $(MANUAL_HTML) $(DIR_TOP)README.md
@@ -58,8 +56,7 @@ $(INCL_COMMANDS): $(DIR_TMP).exists $(TEST_MAKEFILE)
58
56
  $(INCL_USAGE): $(DIR_TMP).exists
59
57
  -$(EXETESTB) -Cnone -h 2> $(INCL_USAGE)
60
58
  sed -i -e 's/\/Users\/[^\/]*/\/Users\/FooBar/g' $(INCL_USAGE)
61
- .PHONY: $(INCL_ASESSION)
62
- $(INCL_ASESSION): $(DIR_TMP).exists
59
+ $(INCL_ASESSION): $(DIR_TMP).exists $(DIR_BIN)/asession
63
60
  $(DIR_BIN)/asession -h 2> $(INCL_ASESSION) || true
64
61
  clean::
65
62
  rm -f $(MANUAL_PDF) $(MANUAL_HTML) $(INCL_COMMANDS) $(INCL_USAGE) $(INCL_ASESSION)