aspera-cli 4.9.0 → 4.11.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/BUGS.md +20 -0
- data/CHANGELOG.md +509 -0
- data/CONTRIBUTING.md +118 -0
- data/README.md +1241 -916
- data/bin/ascli +4 -4
- data/bin/asession +11 -11
- data/docs/test_env.conf +32 -21
- data/examples/aoc.rb +4 -4
- data/examples/dascli +16 -9
- data/examples/faspex4.rb +8 -8
- data/examples/node.rb +12 -12
- data/examples/server.rb +10 -10
- data/lib/aspera/aoc.rb +273 -266
- data/lib/aspera/ascmd.rb +56 -54
- data/lib/aspera/ats_api.rb +4 -4
- data/lib/aspera/cli/basic_auth_plugin.rb +15 -12
- data/lib/aspera/cli/extended_value.rb +5 -5
- data/lib/aspera/cli/formater.rb +64 -64
- data/lib/aspera/cli/info.rb +2 -2
- data/lib/aspera/cli/listener/line_dump.rb +1 -1
- data/lib/aspera/cli/listener/logger.rb +1 -1
- data/lib/aspera/cli/listener/progress.rb +5 -6
- data/lib/aspera/cli/listener/progress_multi.rb +14 -19
- data/lib/aspera/cli/main.rb +66 -67
- data/lib/aspera/cli/manager.rb +112 -110
- data/lib/aspera/cli/plugin.rb +57 -36
- data/lib/aspera/cli/plugins/alee.rb +4 -4
- data/lib/aspera/cli/plugins/aoc.rb +309 -670
- data/lib/aspera/cli/plugins/ats.rb +44 -46
- data/lib/aspera/cli/plugins/bss.rb +10 -10
- data/lib/aspera/cli/plugins/config.rb +497 -378
- data/lib/aspera/cli/plugins/console.rb +12 -12
- data/lib/aspera/cli/plugins/cos.rb +18 -20
- data/lib/aspera/cli/plugins/faspex.rb +112 -114
- data/lib/aspera/cli/plugins/faspex5.rb +71 -46
- data/lib/aspera/cli/plugins/node.rb +379 -283
- data/lib/aspera/cli/plugins/orchestrator.rb +46 -46
- data/lib/aspera/cli/plugins/preview.rb +122 -114
- data/lib/aspera/cli/plugins/server.rb +137 -83
- data/lib/aspera/cli/plugins/shares.rb +30 -29
- data/lib/aspera/cli/plugins/sync.rb +13 -33
- data/lib/aspera/cli/transfer_agent.rb +60 -59
- data/lib/aspera/cli/version.rb +1 -1
- data/lib/aspera/colors.rb +3 -3
- data/lib/aspera/command_line_builder.rb +27 -27
- data/lib/aspera/cos_node.rb +22 -20
- data/lib/aspera/data_repository.rb +1 -1
- data/lib/aspera/environment.rb +35 -15
- data/lib/aspera/fasp/agent_base.rb +15 -15
- data/lib/aspera/fasp/agent_connect.rb +23 -21
- data/lib/aspera/fasp/agent_direct.rb +66 -64
- data/lib/aspera/fasp/agent_httpgw.rb +141 -78
- data/lib/aspera/fasp/agent_node.rb +23 -21
- data/lib/aspera/fasp/agent_trsdk.rb +20 -20
- data/lib/aspera/fasp/error.rb +3 -2
- data/lib/aspera/fasp/error_info.rb +11 -8
- data/lib/aspera/fasp/installation.rb +79 -79
- data/lib/aspera/fasp/listener.rb +1 -1
- data/lib/aspera/fasp/parameters.rb +86 -71
- data/lib/aspera/fasp/parameters.yaml +7 -4
- data/lib/aspera/fasp/resume_policy.rb +8 -8
- data/lib/aspera/fasp/transfer_spec.rb +35 -2
- data/lib/aspera/fasp/uri.rb +7 -7
- data/lib/aspera/faspex_gw.rb +7 -5
- data/lib/aspera/hash_ext.rb +3 -3
- data/lib/aspera/id_generator.rb +5 -5
- data/lib/aspera/keychain/encrypted_hash.rb +38 -105
- data/lib/aspera/keychain/macos_security.rb +128 -57
- data/lib/aspera/log.rb +7 -7
- data/lib/aspera/nagios.rb +19 -18
- data/lib/aspera/node.rb +209 -35
- data/lib/aspera/oauth.rb +37 -36
- data/lib/aspera/open_application.rb +19 -11
- data/lib/aspera/persistency_action_once.rb +4 -4
- data/lib/aspera/persistency_folder.rb +16 -15
- data/lib/aspera/preview/file_types.rb +8 -8
- data/lib/aspera/preview/generator.rb +67 -67
- data/lib/aspera/preview/utils.rb +27 -27
- data/lib/aspera/proxy_auto_config.js +41 -41
- data/lib/aspera/proxy_auto_config.rb +21 -14
- data/lib/aspera/rest.rb +72 -67
- data/lib/aspera/rest_call_error.rb +2 -1
- data/lib/aspera/rest_error_analyzer.rb +18 -17
- data/lib/aspera/rest_errors_aspera.rb +16 -16
- data/lib/aspera/secret_hider.rb +15 -13
- data/lib/aspera/ssh.rb +11 -10
- data/lib/aspera/sync.rb +158 -44
- data/lib/aspera/temp_file_manager.rb +2 -2
- data/lib/aspera/uri_reader.rb +4 -4
- data/lib/aspera/web_auth.rb +14 -13
- data.tar.gz.sig +0 -0
- metadata +11 -36
- 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: '08292755646ee9ced95363ddb7b109cec20c3826a72d8df12e54cabc9cfab2dd'
|
4
|
+
data.tar.gz: 881782cb6655d6be4783ae34761bb44ffc84cb6972e223ec7cdde8020de6af1d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d222717fdc4632b1d423b4df6479714135469ba2d5ddaa6fb6cac185eeba8f9d96db4adf4484872224c3c5b4e7afe5dcc48d7365e0933954d1eadc80b9951b6b
|
7
|
+
data.tar.gz: ca5b15ae38a0bd0841e5cb1aba74f75de99954d8ee09b8f86b0109bc11e58d4e54862b9c52afdca6da54808be17c6a778ae7000f8d2e6c8947a74eb66aac74a0
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/BUGS.md
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
# Reporting bugs and security vulnerabilities
|
2
|
+
|
3
|
+
Report bug, including vulnerability issues following this:
|
4
|
+
|
5
|
+
Please, make sure to include the following information:
|
6
|
+
|
7
|
+
* aspera-cli version number.
|
8
|
+
* Operating system name/version (uname -a if Unix)
|
9
|
+
* relevant section of output of error with option --log-level=debug
|
10
|
+
* Any other relevant information.
|
11
|
+
|
12
|
+
[Use Github (Public Issue Reporting)](https://github.com/IBM/aspera-cli/issues)
|
13
|
+
|
14
|
+
|
15
|
+
## Security Policy
|
16
|
+
|
17
|
+
| Version | Supported |
|
18
|
+
| ------- | ------------------ |
|
19
|
+
| >= 4.0 | :white_check_mark: |
|
20
|
+
| < 4.0 | :x: |
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,509 @@
|
|
1
|
+
# Changes (Release notes)
|
2
|
+
|
3
|
+
* 4.11.0
|
4
|
+
|
5
|
+
* new: vault: secret finder, migration from config file
|
6
|
+
* new: allow removal of transferspec parameter by setting value to `null`
|
7
|
+
* new: option `ascp_opts` allows to provide native `ascp` options on command line
|
8
|
+
* new: command `sync` added to `node` (gen4) and `server` plugins, also available in `aoc`
|
9
|
+
* fix: security: no shell interpolation
|
10
|
+
* fix: when WSS and node agent: no localhost (certificate)
|
11
|
+
* fix: #99 `aoc file download` for single shared folder
|
12
|
+
* fix: due to change of API in faspex 5 for send pakage (paths is mandatory for any type of transfer now)
|
13
|
+
* fix: Oauth web authentication was broken, fixed now
|
14
|
+
* change: (break) container image has entry point
|
15
|
+
* change: (break) `aoc admin res node` commands `v3` and `v4` replaced with `do` and command `v3` moved inside `do`
|
16
|
+
* change: (break) renamed options for `sync`
|
17
|
+
* change: node gen4 operations are moved from aoc plugin to node plugin but made available where gen4 is used
|
18
|
+
* change: if wss is enabled on server, use wss
|
19
|
+
* lots of cleanup and refactoring
|
20
|
+
|
21
|
+
* 4.10.0
|
22
|
+
|
23
|
+
* new: httpgw transfer agent: support api v2, support transfer through http proxy, including proxy password
|
24
|
+
* new: faspex5: get bearer token
|
25
|
+
* updates: for docker container version
|
26
|
+
* break: option `secrets` is renamed to `vault`
|
27
|
+
|
28
|
+
* 4.9.0
|
29
|
+
|
30
|
+
* new: shares: import of SAML users and LDAP users
|
31
|
+
* new: M1 apple silicon support SDK install (uses x86 ascp)
|
32
|
+
* new: support bulk operation more globally (create/delete), not all ops , though
|
33
|
+
* new: added missing transfer spec parameters, e.g. `src_base`, `password`
|
34
|
+
* new: improved documentation on faspex and aoc package send
|
35
|
+
* fix: `node do` command fixed
|
36
|
+
* fix: improved secret hiding from logs
|
37
|
+
* change: (break) removed rarely commands nodeadmin, configuration, userdata, ctl from plugin `server`
|
38
|
+
as well as option `cmd_prefix`
|
39
|
+
* change: `ascli` runs as user `cliuser` instead of `root` in container
|
40
|
+
* change: default access right for config folder is now user only, including private keys
|
41
|
+
|
42
|
+
* 4.8.0
|
43
|
+
|
44
|
+
* new: #76 add resource `group_membership` in `aoc`
|
45
|
+
* new: add resource `metadata_profile` in `faspex5`
|
46
|
+
* new: add command `user profile` in `faspex5`
|
47
|
+
* new: add config wizard for `faspex5`
|
48
|
+
* new: #75 gem is signed
|
49
|
+
* change: (break) removed dependency on gem `grpc` which is used only for the `trsdk` transfer agent. Users can install the gem manually if needed.
|
50
|
+
* change: (break) hash vault keys are string instead of symbol
|
51
|
+
* change: cleanup with rubocop, all strings are immutable now by default, list contants are frozen
|
52
|
+
* change: removed Hash.dig implemetation because it is by default in Ruby >= 2.3
|
53
|
+
* change: default is now to hide secrets on command output. Set option `show_secrets` to reveal secrets.
|
54
|
+
* change: option `insecure` displays a warning
|
55
|
+
|
56
|
+
* 4.7.0
|
57
|
+
|
58
|
+
* new: option to specify font used to generate image of text file in `preview`
|
59
|
+
* new: #66 improvement for content protection (support standard transfer spec options for direct agent)
|
60
|
+
* new: option `fpac` is now applicable to all ruby based HTTP connections, i.e. API calls
|
61
|
+
* new: option `show_secrets` to reveal secrets in command output
|
62
|
+
* new: added and updated commands for Faspex 5
|
63
|
+
* new: option `cache_tokens`
|
64
|
+
* new: Faspex4 dropbox packages can now be received by id
|
65
|
+
* change: (break) command `conf gem path` replaces `conf gem_path`
|
66
|
+
* change: (break) option `fpac` expects a value instead of URL
|
67
|
+
* change: (break) option `cipher` in transfer spec must have hyphen
|
68
|
+
* change: (break) renamed option `log_passwords` to `log_secrets`
|
69
|
+
* change: (break) removed plugin `shares2` as products is now EOL
|
70
|
+
* fix: After AoC version update, wizard did not detect AoC properly
|
71
|
+
|
72
|
+
* 4.6.0
|
73
|
+
|
74
|
+
* new: command `conf plugin create`
|
75
|
+
* new: global option `plugin_folder`
|
76
|
+
* new: global option `transpose_single`
|
77
|
+
* new: simplified metadata passing for shared inbox package creation in AoC
|
78
|
+
* change: (break) command `aoc packages shared_inboxes list` replaces `aoc user shared_inboxes`
|
79
|
+
* change: (break) command `aoc user profile` replaces `aoc user info`
|
80
|
+
* change: (break) command `aoc user workspaces list` replaces `aoc user workspaces`
|
81
|
+
* change: (break) command `aoc user workspaces current` replaces `aoc workspace`
|
82
|
+
* change: (break) command `conf plugin list` replaces `conf plugins`
|
83
|
+
* change: (break) command `conf connect` simplified
|
84
|
+
* fix: #60 ascli executable was not installed by default in 4.5.0
|
85
|
+
* fix: add password hiding case in logs
|
86
|
+
|
87
|
+
* 4.5.0
|
88
|
+
|
89
|
+
* new: support transfer agent: [Transfer SDK](README.md#agt_trsdk)
|
90
|
+
* new: support [http socket options](README.md#http_options)
|
91
|
+
* new: logs hide passwords and secrets, option `log_passwords` to enable logging secrets
|
92
|
+
* new: `config vault` supports encrypted passwords, also macos keychain
|
93
|
+
* new: `config preset` command for consistency with id
|
94
|
+
* new: identifier can be provided using either option `id` or directly after the command, e.g. `delete 123` is the same as `delete --id=123`
|
95
|
+
* change: when using wss, use [ruby's CA certs](README.md#certificates)
|
96
|
+
* change: unexpected parameter makes exit code not zero
|
97
|
+
* change: (break) options `id` and `name` cannot be specified at the same time anymore, use [positional identifer or name selection](README.md#res_select)
|
98
|
+
* change: (break) `aoc admin res node` does not take workspace main node as default node if no `id` specified.
|
99
|
+
* change: (break): `orchestrator workflow status` requires id, and supports special id `ALL`
|
100
|
+
* fix: various smaller fixes and renaming of some internal classes (transfer agents and few other)
|
101
|
+
|
102
|
+
* 4.4.0
|
103
|
+
|
104
|
+
* new: `aoc packages list` add possibility to add filter with option `query`
|
105
|
+
* new: `aoc admin res xxx list` now get all items by default #50
|
106
|
+
* new: `preset` option can specify name or hash value
|
107
|
+
* new: `node` plugin accepts bearer token and access key as credential
|
108
|
+
* new: `node` option `token_type` allows using basic token in addition to aspera type.
|
109
|
+
* change: `server`: option `username` not mandatory anymore: xfer user is by default. If transfer spec token is provided, password or keys are optional, and bypass keys are used by default.
|
110
|
+
* change: (break) resource `apps_new` of `aoc` replaced with `application` (more clear)
|
111
|
+
|
112
|
+
* 4.3.0
|
113
|
+
|
114
|
+
* new: parameter `multi_incr_udp` for option `transfer_info`: control if UDP port is incremented when multi-session is used on [`direct`](README.md#agt_direct) transfer agent.
|
115
|
+
* new: command `aoc files node_info` to get node information for a given folder in the Files application of AoC. Allows cross-org or cross-workspace transfers.
|
116
|
+
|
117
|
+
* 4.2.2
|
118
|
+
|
119
|
+
* new: `faspex package list` retrieves the whole list, not just first page
|
120
|
+
* new: support web based auth to aoc and faspex 5 using HTTPS, new dependency on gem `webrick`
|
121
|
+
* new: the error "Remote host is not who we expected" displays a special remediation message
|
122
|
+
* new: `conf ascp spec` displays supported transfer spec
|
123
|
+
* new: options `notif_to` and `notif_template` to send email notifications on transfer (and other events)
|
124
|
+
* fix: space character in `faspe:` url are precent encoded if needed
|
125
|
+
* fix: `preview scan`: if file_id is unknown, ignore and continue scan
|
126
|
+
* change: for commands that potentially execute several transfers (`package recv --id=ALL`), if one transfer fails then ascli exits with code 1 (instead of zero=success)
|
127
|
+
* change: (break) option `notify` or `aoc` replaced with `notif_to` and `notif_template`
|
128
|
+
|
129
|
+
* 4.2.1
|
130
|
+
|
131
|
+
* new: command `faspex package recv` supports link of type: `faspe:`
|
132
|
+
* new: command `faspex package recv` supports option `recipient` to specify dropbox with leading `*`
|
133
|
+
|
134
|
+
* 4.2.0
|
135
|
+
|
136
|
+
* new: command `aoc remind` to receive organization membership by email
|
137
|
+
* new: in `preview` option `value` to filter out on file name
|
138
|
+
* new: `initdemo` to initialize for demo server
|
139
|
+
* new: [`direct`](README.md#agt_direct) transfer agent options: `spawn_timeout_sec` and `spawn_delay_sec`
|
140
|
+
* fix: on Windows `conf ascp use` expects ascp.exe
|
141
|
+
* fix: (break) multi_session_threshold is Integer, not String
|
142
|
+
* fix: `conf ascp install` renames sdk folder if it already exists (leftover shared lib may make fail)
|
143
|
+
* fix: removed replace_illegal_chars from default aspera.conf causing "Error creating illegal char conversion table"
|
144
|
+
* change: (break) `aoc apiinfo` is removed, use `aoc servers` to provide the list of cloud systems
|
145
|
+
* change: (break) parameters for resume in `transfer-info` for [`direct`](README.md#agt_direct) are now in sub-key `"resume"`
|
146
|
+
|
147
|
+
* 4.1.0
|
148
|
+
|
149
|
+
* fix: remove keys from transfer spec and command line when not needed
|
150
|
+
* fix: default to create_dir:true so that sending single file to a folder does not rename file if folder does not exist
|
151
|
+
* new: update documentation with regard to offline and docker installation
|
152
|
+
* new: renamed command `nagios_check` to `health`
|
153
|
+
* new: agent `http_gw` now supports upload
|
154
|
+
* new: added option `sdk_url` to install SDK from local file for offline install
|
155
|
+
* new: check new gem version periodically
|
156
|
+
* new: the --fields= option, support -_fieldname_ to remove a field from default fields
|
157
|
+
* new: Oauth tokens are discarded automatically after 30 minutes (useful for COS delegated refresh tokens)
|
158
|
+
* new: mimemagic is now optional, needs manual install for `preview`, compatible with version 0.4.x
|
159
|
+
* new: AoC a password can be provided for a public link
|
160
|
+
* new: `conf doc` take an optional parameter to go to a section
|
161
|
+
* new: initial support for Faspex 5 Beta 1
|
162
|
+
|
163
|
+
* 4.0.0
|
164
|
+
|
165
|
+
* now available as open source (github) with general cleanup
|
166
|
+
* changed default tool name from `mlia` to `ascli`
|
167
|
+
* changed `aspera` command to `aoc`
|
168
|
+
* changed gem name from `asperalm` to `aspera-cli`
|
169
|
+
* changed module name from `Asperalm` to `Aspera`
|
170
|
+
* removed command `folder` in `preview`, merged to `scan`
|
171
|
+
* persistency files go to sub folder instead of main folder
|
172
|
+
* added possibility to install SDK: `config ascp install`
|
173
|
+
|
174
|
+
* 0.11.8
|
175
|
+
|
176
|
+
* Simplified to use `unoconv` instead of bare `libreoffice` for office conversion, as `unoconv` does not require a X server (previously using Xvfb
|
177
|
+
|
178
|
+
* 0.11.7
|
179
|
+
|
180
|
+
* rework on rest call error handling
|
181
|
+
* use option `display` with value `data` to remove out of extraneous information
|
182
|
+
* fixed option `lock_port` not working
|
183
|
+
* generate special icon if preview failed
|
184
|
+
* possibility to choose transfer progress bar type with option `progress`
|
185
|
+
* AoC package creation now output package id
|
186
|
+
|
187
|
+
* 0.11.6
|
188
|
+
|
189
|
+
* orchestrator : added more choice in auth type
|
190
|
+
* preview: cleanup in generator (removed and renamed parameters)
|
191
|
+
* preview: better documentation
|
192
|
+
* preview: animated thumbnails for video (option: `video_png_conv=animated`)
|
193
|
+
* preview: new event trigger: `trevents` (`events` seems broken)
|
194
|
+
* preview: unique tmp folder to avoid clash of multiple instances
|
195
|
+
* repo: added template for secrets used for testing
|
196
|
+
|
197
|
+
* 0.11.5
|
198
|
+
|
199
|
+
* added option `default_ports` for AoC (see manual)
|
200
|
+
* allow bulk delete in `aspera files` with option `bulk=yes`
|
201
|
+
* fix getting connect versions
|
202
|
+
* added section for Aix
|
203
|
+
* support all ciphers for [`direct`](README.md#agt_direct) agent (including gcm, etc..)
|
204
|
+
* added transfer spec param `apply_local_docroot` for [`direct`](README.md#agt_direct)
|
205
|
+
|
206
|
+
* 0.11.4
|
207
|
+
|
208
|
+
* possibility to give shared inbox name when sending a package (else use id and type)
|
209
|
+
|
210
|
+
* 0.11.3
|
211
|
+
|
212
|
+
* minor fixes on multi-session: avoid exception on progress bar
|
213
|
+
|
214
|
+
* 0.11.2
|
215
|
+
|
216
|
+
* fixes on multi-session: progress bat and transfer spec param for "direct"
|
217
|
+
|
218
|
+
* 0.11.1
|
219
|
+
|
220
|
+
* enhanced short_link creation commands (see examples)
|
221
|
+
|
222
|
+
* 0.11
|
223
|
+
|
224
|
+
* add transfer spec option (agent `direct` only) to provide file list directly to ascp: `EX_file_list`.
|
225
|
+
|
226
|
+
* 0.10.18
|
227
|
+
|
228
|
+
* new option in. `server` : `ssh_options`
|
229
|
+
|
230
|
+
* 0.10.17
|
231
|
+
|
232
|
+
* fixed problem on `server` for option `ssh_keys`, now accepts both single value and list.
|
233
|
+
* new modifier: `@list:<separator>val1<separator>...`
|
234
|
+
|
235
|
+
* 0.10.16
|
236
|
+
|
237
|
+
* added list of shared inboxes in workspace (or global), use `--query=@json:'{}'`
|
238
|
+
|
239
|
+
* 0.10.15
|
240
|
+
|
241
|
+
* in case of command line error, display the error cause first, and non-parsed argument second
|
242
|
+
* AoC : Activity / Analytics
|
243
|
+
|
244
|
+
* 0.10.14
|
245
|
+
|
246
|
+
* added missing bss plugin
|
247
|
+
|
248
|
+
* 0.10.13
|
249
|
+
|
250
|
+
* added Faspex5 (use option `value` to give API arguments)
|
251
|
+
|
252
|
+
* 0.10.12
|
253
|
+
|
254
|
+
* added support for AoC node registration keys
|
255
|
+
* replaced option : `local_resume` with `transfer_info` for agent [`direct`](README.md#agt_direct)
|
256
|
+
* Transfer agent is no more a Singleton instance, but only one is used in CLI
|
257
|
+
* `@incps` : new extended value modifier
|
258
|
+
* ATS: no more provides access keys secrets: now user must provide it
|
259
|
+
* begin work on "aoc" transfer agent
|
260
|
+
|
261
|
+
* 0.10.11
|
262
|
+
|
263
|
+
* minor refactor and fixes
|
264
|
+
|
265
|
+
* 0.10.10
|
266
|
+
|
267
|
+
* fix on documentation
|
268
|
+
|
269
|
+
* 0.10.9.1
|
270
|
+
|
271
|
+
* add total number of items for AoC resource list
|
272
|
+
* better gem version dependency (and fixes to support Ruby 2.0.0)
|
273
|
+
* removed aoc search_nodes
|
274
|
+
|
275
|
+
* 0.10.8
|
276
|
+
|
277
|
+
* removed option: `fasp_proxy`, use pseudo transfer spec parameter: `EX_fasp_proxy_url`
|
278
|
+
* removed option: `http_proxy`, use pseudo transfer spec parameter: `EX_http_proxy_url`
|
279
|
+
* several other changes..
|
280
|
+
|
281
|
+
* 0.10.7
|
282
|
+
|
283
|
+
* fix: ascli fails when username cannot be computed on Linux.
|
284
|
+
|
285
|
+
* 0.10.6
|
286
|
+
|
287
|
+
* FaspManager: transfer spec `authentication` no more needed for local transfer to use Aspera public keys. public keys will be used if there is a token and no key or password is provided.
|
288
|
+
* gem version requirements made more open
|
289
|
+
|
290
|
+
* 0.10.5
|
291
|
+
|
292
|
+
* fix faspex package receive command not working
|
293
|
+
|
294
|
+
* 0.10.4
|
295
|
+
|
296
|
+
* new options for AoC : `secrets`
|
297
|
+
* ACLI-533 temp file list folder to use file lists is set by default, and used by asession
|
298
|
+
|
299
|
+
* 0.10.3
|
300
|
+
|
301
|
+
* included user name in oauth bearer token cache for AoC when JWT is used.
|
302
|
+
|
303
|
+
* 0.10.2
|
304
|
+
|
305
|
+
* updated `search_nodes` to be more generic, so it can search not only on access key, but also other queries.
|
306
|
+
* added doc for "cargo" like actions
|
307
|
+
* added doc for multi-session
|
308
|
+
|
309
|
+
* 0.10.1
|
310
|
+
|
311
|
+
* AoC and node v4 "browse" works now on non-folder items: file, link
|
312
|
+
* initial support for AoC automation (do not use yet)
|
313
|
+
|
314
|
+
* 0.10
|
315
|
+
|
316
|
+
* support for transfer using IBM Cloud Object Storage
|
317
|
+
* improved `find` action using arbitrary expressions
|
318
|
+
|
319
|
+
* 0.9.36
|
320
|
+
|
321
|
+
* added option to specify file pair lists
|
322
|
+
|
323
|
+
* 0.9.35
|
324
|
+
|
325
|
+
* updated plugin `preview` , changed parameter names, added documentation
|
326
|
+
* fix in `ats` plugin : instance id needed in request header
|
327
|
+
|
328
|
+
* 0.9.34
|
329
|
+
|
330
|
+
* parser "@preset" can be used again in option "transfer_info"
|
331
|
+
* some documentation re-organizing
|
332
|
+
|
333
|
+
* 0.9.33
|
334
|
+
|
335
|
+
* new command to display basic token of node
|
336
|
+
* new command to display bearer token of node in AoC
|
337
|
+
* the --fields= option, support +_fieldname_ to add a field to default fields
|
338
|
+
* many small changes
|
339
|
+
|
340
|
+
* 0.9.32
|
341
|
+
|
342
|
+
* all Faspex public links are now supported
|
343
|
+
* removed faspex operation recv_publink
|
344
|
+
* replaced with option `link` (consistent with AoC)
|
345
|
+
|
346
|
+
* 0.9.31
|
347
|
+
|
348
|
+
* added more support for public link: receive and send package, to user or dropbox and files view.
|
349
|
+
* delete expired file lists
|
350
|
+
* changed text table gem from text-table to terminal-table because it supports multiline values
|
351
|
+
|
352
|
+
* 0.9.27
|
353
|
+
|
354
|
+
* basic email support with SMTP
|
355
|
+
* basic proxy auto config support
|
356
|
+
|
357
|
+
* 0.9.26
|
358
|
+
|
359
|
+
* table display with --fields=ALL now includes all column names from all lines, not only first one
|
360
|
+
* unprocessed argument shows error even if there is an error beforehand
|
361
|
+
|
362
|
+
* 0.9.25
|
363
|
+
|
364
|
+
* the option `value` of command `find`, to filter on name, is not optional
|
365
|
+
* `find` now also reports all types (file, folder, link)
|
366
|
+
* `find` now is able to report all fields (type, size, etc...)
|
367
|
+
|
368
|
+
* 0.9.24
|
369
|
+
|
370
|
+
* fix bug where AoC node to node transfer did not work
|
371
|
+
* fix bug on error if ED25519 private key is defined in .ssh
|
372
|
+
|
373
|
+
* 0.9.23
|
374
|
+
|
375
|
+
* defined REST error handlers, more error conditions detected
|
376
|
+
* commands to select specific ascp location
|
377
|
+
|
378
|
+
* 0.9.21
|
379
|
+
|
380
|
+
* supports simplified wizard using global client
|
381
|
+
* only ascp binary is required, other SDK (keys) files are now generated
|
382
|
+
|
383
|
+
* 0.9.20
|
384
|
+
|
385
|
+
* improved wizard (prepare for AoC global client id)
|
386
|
+
* preview generator: addedoption : --skip-format=<png,mp4>
|
387
|
+
* removed outdated pictures from this doc
|
388
|
+
|
389
|
+
* 0.9.19
|
390
|
+
|
391
|
+
* added command aspera bearer --scope=xx
|
392
|
+
|
393
|
+
* 0.9.18
|
394
|
+
|
395
|
+
* enhanced aspera admin events to support query
|
396
|
+
|
397
|
+
* 0.9.16
|
398
|
+
|
399
|
+
* AoC transfers are now reported in activity app
|
400
|
+
* new interface for Rest class authentication (keep backward compatibility)
|
401
|
+
|
402
|
+
* 0.9.15
|
403
|
+
|
404
|
+
* new feature: "find" command in aspera files
|
405
|
+
* sample code for transfer API
|
406
|
+
|
407
|
+
* 0.9.12
|
408
|
+
|
409
|
+
* add nagios commands
|
410
|
+
* support of ATS for IBM Cloud, removed old version based on aspera id
|
411
|
+
|
412
|
+
* 0.9.11
|
413
|
+
|
414
|
+
* Breaking change: @stdin is now @stdin:
|
415
|
+
* support of ATS for IBM Cloud, removed old version based on aspera id
|
416
|
+
|
417
|
+
* 0.9.10
|
418
|
+
|
419
|
+
* Breaking change: parameter transfer-node becomes more generic: transfer-info
|
420
|
+
* Display SaaS storage usage with command: aspera admin res node --id=nn info
|
421
|
+
* cleaner way of specifying source file list for transfers
|
422
|
+
* Breaking change: replaced download_mode option with http_download action
|
423
|
+
|
424
|
+
* 0.9.9
|
425
|
+
|
426
|
+
* Breaking change: "aspera package send" parameter deprecated, use the --value option instead with "recipients" value. See example.
|
427
|
+
* Now supports "cargo" for Aspera on Cloud (automatic package download)
|
428
|
+
|
429
|
+
* 0.9.8
|
430
|
+
|
431
|
+
* Faspex: use option once_only set to yes to enable cargo like function. id=NEW deprecated.
|
432
|
+
* AoC: share to share transfer with command "transfer"
|
433
|
+
|
434
|
+
* 0.9.7
|
435
|
+
|
436
|
+
* homogeneous transfer spec for `node` and [`direct`](README.md#agt_direct) transfer agents
|
437
|
+
* preview persistency goes to unique file by default
|
438
|
+
* catch mxf extension in preview as video
|
439
|
+
* Faspex: possibility to download all packages by specifying id=ALL
|
440
|
+
* Faspex: to come: cargo-like function to download only new packages with id=NEW
|
441
|
+
|
442
|
+
* 0.9.6
|
443
|
+
|
444
|
+
* Breaking change: `@param:`is now `@preset:` and is generic
|
445
|
+
* AoC: added command to display current workspace information
|
446
|
+
|
447
|
+
* 0.9.5
|
448
|
+
|
449
|
+
* new parameter: new_user_option used to choose between public_link and invite of external users.
|
450
|
+
* fixed bug in wizard, and wizard uses now product detection
|
451
|
+
|
452
|
+
* 0.9.4
|
453
|
+
|
454
|
+
* Breaking change: onCloud file list follow --source convention as well (plus specific case for download when first path is source folder, and other are source file names).
|
455
|
+
* AoC Package send supports external users
|
456
|
+
* new command to export AoC config to Aspera CLI config
|
457
|
+
|
458
|
+
* 0.9.3
|
459
|
+
|
460
|
+
* REST error message show host and code
|
461
|
+
* option for quiet display
|
462
|
+
* modified transfer interface and allow token re-generation on error
|
463
|
+
* async add admin command
|
464
|
+
* async add db parameters
|
465
|
+
* Breaking change: new option "sources" to specify files to transfer
|
466
|
+
|
467
|
+
* 0.9.2
|
468
|
+
|
469
|
+
* Breaking change: changed AoC package creation to match API, see AoC section
|
470
|
+
|
471
|
+
* 0.9.1
|
472
|
+
|
473
|
+
* Breaking change: changed faspex package creation to match API, see Faspex section
|
474
|
+
|
475
|
+
* 0.9
|
476
|
+
|
477
|
+
* Renamed the CLI from aslmcli to ascli
|
478
|
+
* Automatic rename and conversion of former config folder from aslmcli to ascli
|
479
|
+
|
480
|
+
* 0.7.6
|
481
|
+
|
482
|
+
* add "sync" plugin
|
483
|
+
|
484
|
+
* 0.7
|
485
|
+
|
486
|
+
* Breaking change: AoC package recv take option if for package instead of argument.
|
487
|
+
* Breaking change: Rest class and Oauth class changed init parameters
|
488
|
+
* AoC: receive package from public link
|
489
|
+
* select by col value on output
|
490
|
+
* added rename (AoC, node)
|
491
|
+
|
492
|
+
* 0.6.19
|
493
|
+
|
494
|
+
* change: (break) ats server list provisioned → ats cluster list
|
495
|
+
* change: (break) ats server list clouds → ats cluster clouds
|
496
|
+
* change: (break) ats server list instance --cloud=x --region=y → ats cluster show --cloud=x --region=y
|
497
|
+
* change: (break) ats server id xxx → ats cluster show --id=xxx
|
498
|
+
* change: (break) ats subscriptions → ats credential subscriptions
|
499
|
+
* change: (break) ats api_key repository list → ats credential cache list
|
500
|
+
* change: (break) ats api_key list → ats credential list
|
501
|
+
* change: (break) ats access_key id xxx → ats access_key --id=xxx
|
502
|
+
|
503
|
+
* 0.6.18
|
504
|
+
|
505
|
+
* some commands take now --id option instead of id command.
|
506
|
+
|
507
|
+
* 0.6.15
|
508
|
+
|
509
|
+
* Breaking change: "files" application renamed to "aspera" (for "Aspera on Cloud"). "repository" renamed to "files". Default is automatically reset, e.g. in config files and change key "files" to "aspera" in preset "default".
|
data/CONTRIBUTING.md
ADDED
@@ -0,0 +1,118 @@
|
|
1
|
+
# Contributing
|
2
|
+
|
3
|
+
## Reporting Issues and Vulnerabilities
|
4
|
+
|
5
|
+
You can report issues at <https://github.com/IBM/aspera-cli/issues>
|
6
|
+
|
7
|
+
Before you go ahead please search existing issues for your problem.
|
8
|
+
|
9
|
+
To make sure that we can help you quickly please include and check the following information:
|
10
|
+
|
11
|
+
- Include the ascli version you are running in your report.
|
12
|
+
- If you are not running the latest version (please check), update.
|
13
|
+
- Include your `ruby -e "puts RUBY_DESCRIPTION"`.
|
14
|
+
|
15
|
+
Thanks!
|
16
|
+
|
17
|
+
## Making Contributions
|
18
|
+
|
19
|
+
To fetch & test the gem for development, do:
|
20
|
+
|
21
|
+
```bash
|
22
|
+
git clone https://github.com/IBM/aspera-cli.git
|
23
|
+
cd aspera-cli
|
24
|
+
bundle install
|
25
|
+
make test
|
26
|
+
```
|
27
|
+
|
28
|
+
If you want to contribute, please:
|
29
|
+
|
30
|
+
- Fork the project.
|
31
|
+
- Make your feature addition or bug fix.
|
32
|
+
- Add tests for it. This is important so I don't break it in a future version unintentionally.
|
33
|
+
- **Bonus Points** go out to anyone who also updates `CHANGELOG.md` :)
|
34
|
+
- Send a pull request on GitHub.
|
35
|
+
- run Rubocop to comply for coding standards
|
36
|
+
|
37
|
+
## Running Tests
|
38
|
+
|
39
|
+
First, a testing environment must be created:
|
40
|
+
|
41
|
+
```bash
|
42
|
+
mkdir local
|
43
|
+
cp docs/test_env.conf local/.
|
44
|
+
```
|
45
|
+
|
46
|
+
Fill `local/test_env.conf` with system URLs and credentials for tests.
|
47
|
+
|
48
|
+
This project uses a Makefile for tests:
|
49
|
+
|
50
|
+
```bash
|
51
|
+
cd tests
|
52
|
+
make
|
53
|
+
```
|
54
|
+
|
55
|
+
When new commands are added to the CLI, new tests shall be added to the test suite.
|
56
|
+
|
57
|
+
## Coverage
|
58
|
+
|
59
|
+
A coverage report can be generated in folder `coverage` using gem `SimpleCov`.
|
60
|
+
Enable coverage monitoring using env var `ENABLE_COVERAGE`.
|
61
|
+
|
62
|
+
```bash
|
63
|
+
ENABLE_COVERAGE=1 make test
|
64
|
+
```
|
65
|
+
|
66
|
+
Once tests are completed, or during test, consult the page: [coverage/index.html](coverage/index.html)
|
67
|
+
|
68
|
+
## Build
|
69
|
+
|
70
|
+
By default the gem is built signed: `make`.
|
71
|
+
The appropriate signing key is required, and its path must be set to env var `SIGNING_KEY`.
|
72
|
+
It is also possible to build a non-signed version for development purpose: `make unsigned_gem`.
|
73
|
+
|
74
|
+
### Gem Signature
|
75
|
+
|
76
|
+
Refer to: <https://guides.rubygems.org/security/>
|
77
|
+
|
78
|
+
The gem is signed with the public certificate found in `certs` and a secret key (kept secret by maintainer).
|
79
|
+
|
80
|
+
To build the signed gem:
|
81
|
+
|
82
|
+
```bash
|
83
|
+
SIGNING_KEY=/path/to/signing_key.pem make
|
84
|
+
```
|
85
|
+
|
86
|
+
The user can activate gem signature verification on installation:
|
87
|
+
|
88
|
+
- Add the certificate to gem trusted certificates:
|
89
|
+
|
90
|
+
```bash
|
91
|
+
curl https://raw.githubusercontent.com/IBM/aspera-cli/main/certs/aspera-cli-public-cert.pem -so aspera-cli-certificate.pem
|
92
|
+
gem cert --add aspera-cli-certificate.pem
|
93
|
+
rm aspera-cli-certificate.pem
|
94
|
+
```
|
95
|
+
|
96
|
+
- Install the gem with `HighSecurity` or `MediumSecurity`: this will succeed only of the gem is trusted.
|
97
|
+
|
98
|
+
```bash
|
99
|
+
gem install -P HighSecurity aspera-cli
|
100
|
+
```
|
101
|
+
|
102
|
+
## Docker image build
|
103
|
+
|
104
|
+
### on MacOS using ubuntu multipass
|
105
|
+
|
106
|
+
Install [multipass](https://multipass.run/docs) with [brew](https://multipass.run/docs/installing-on-macos#heading--use-brew):
|
107
|
+
|
108
|
+
[Initialize the docker environment](https://multipass.run/docs/docker-tutorial).
|
109
|
+
|
110
|
+
Make sure the ubuntu user in container is part of the docker group.
|
111
|
+
|
112
|
+
## Long Term Implementation and delivery improvements
|
113
|
+
|
114
|
+
- replace rest and oauth classes with ruby standard gems:
|
115
|
+
- <https://github.com/rest-client/rest-client>
|
116
|
+
- <https://github.com/oauth-xx/oauth2>
|
117
|
+
- use gem Thor <http://whatisthor.com/> (or other standard Ruby CLI manager)
|
118
|
+
- Package with <https://github.com/pmq20/ruby-packer> (rubyc)
|