aspera-cli 4.22.0 → 4.24.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 +0 -0
- data/CHANGELOG.md +405 -364
- data/CONTRIBUTING.md +86 -29
- data/README.md +1856 -961
- data/bin/ascli +2 -1
- data/bin/asession +4 -4
- data/lib/aspera/agent/base.rb +4 -0
- data/lib/aspera/agent/connect.rb +20 -18
- data/lib/aspera/agent/desktop.rb +14 -11
- data/lib/aspera/agent/direct.rb +39 -31
- data/lib/aspera/agent/httpgw.rb +2 -2
- data/lib/aspera/agent/node.rb +9 -11
- data/lib/aspera/agent/transferd.rb +18 -11
- data/lib/aspera/api/aoc.rb +53 -43
- data/lib/aspera/api/cos_node.rb +7 -5
- data/lib/aspera/api/httpgw.rb +23 -22
- data/lib/aspera/api/node.rb +104 -22
- data/lib/aspera/ascmd.rb +35 -21
- data/lib/aspera/ascp/installation.rb +43 -43
- data/lib/aspera/ascp/management.rb +5 -4
- data/lib/aspera/assert.rb +55 -24
- data/lib/aspera/cli/basic_auth_plugin.rb +8 -7
- data/lib/aspera/cli/error.rb +1 -1
- data/lib/aspera/cli/extended_value.rb +28 -29
- data/lib/aspera/cli/formatter.rb +191 -168
- data/lib/aspera/cli/hints.rb +38 -4
- data/lib/aspera/cli/main.rb +139 -108
- data/lib/aspera/cli/manager.rb +51 -31
- data/lib/aspera/cli/plugin.rb +149 -78
- data/lib/aspera/cli/plugin_factory.rb +2 -2
- data/lib/aspera/cli/plugins/aoc.rb +217 -88
- data/lib/aspera/cli/plugins/ats.rb +15 -13
- data/lib/aspera/cli/plugins/config.rb +105 -227
- data/lib/aspera/cli/plugins/console.rb +49 -18
- data/lib/aspera/cli/plugins/cos.rb +4 -4
- data/lib/aspera/cli/plugins/faspex.rb +45 -51
- data/lib/aspera/cli/plugins/faspex5.rb +162 -163
- data/lib/aspera/cli/plugins/faspio.rb +6 -5
- data/lib/aspera/cli/plugins/httpgw.rb +2 -2
- data/lib/aspera/cli/plugins/node.rb +233 -247
- data/lib/aspera/cli/plugins/orchestrator.rb +10 -14
- data/lib/aspera/cli/plugins/preview.rb +26 -29
- data/lib/aspera/cli/plugins/server.rb +29 -28
- data/lib/aspera/cli/plugins/shares.rb +40 -28
- data/lib/aspera/cli/sync_actions.rb +101 -80
- data/lib/aspera/cli/transfer_agent.rb +55 -58
- data/lib/aspera/cli/transfer_progress.rb +29 -20
- data/lib/aspera/cli/version.rb +1 -1
- data/lib/aspera/cli/wizard.rb +160 -0
- data/lib/aspera/colors.rb +13 -8
- data/lib/aspera/command_line_builder.rb +28 -22
- data/lib/aspera/command_line_converter.rb +31 -0
- data/lib/aspera/data_repository.rb +1 -0
- data/lib/aspera/environment.rb +144 -100
- data/lib/aspera/faspex_gw.rb +1 -1
- data/lib/aspera/faspex_postproc.rb +3 -2
- data/lib/aspera/hash_ext.rb +1 -1
- data/lib/aspera/id_generator.rb +10 -10
- data/lib/aspera/keychain/base.rb +18 -0
- data/lib/aspera/keychain/encrypted_hash.rb +6 -12
- data/lib/aspera/keychain/factory.rb +9 -3
- data/lib/aspera/keychain/hashicorp_vault.rb +9 -6
- data/lib/aspera/keychain/macos_security.rb +13 -13
- data/lib/aspera/log.rb +70 -20
- data/lib/aspera/nagios.rb +5 -6
- data/lib/aspera/node_simulator.rb +12 -7
- data/lib/aspera/oauth/base.rb +6 -2
- data/lib/aspera/oauth/factory.rb +25 -18
- data/lib/aspera/oauth/jwt.rb +13 -1
- data/lib/aspera/oauth/url_json.rb +3 -3
- data/lib/aspera/oauth/web.rb +5 -3
- data/lib/aspera/persistency_folder.rb +2 -2
- data/lib/aspera/preview/file_types.rb +43 -35
- data/lib/aspera/preview/generator.rb +26 -13
- data/lib/aspera/preview/terminal.rb +10 -7
- data/lib/aspera/preview/utils.rb +11 -9
- data/lib/aspera/products/connect.rb +2 -1
- data/lib/aspera/products/desktop.rb +1 -1
- data/lib/aspera/products/other.rb +2 -2
- data/lib/aspera/products/transferd.rb +8 -6
- data/lib/aspera/proxy_auto_config.rb +1 -1
- data/lib/aspera/rest.rb +46 -28
- data/lib/aspera/rest_call_error.rb +1 -1
- data/lib/aspera/rest_error_analyzer.rb +1 -0
- data/lib/aspera/resumer.rb +1 -1
- data/lib/aspera/secret_hider.rb +46 -40
- data/lib/aspera/ssh.rb +14 -4
- data/lib/aspera/sync/args.schema.yaml +102 -0
- data/lib/aspera/sync/conf.schema.yaml +701 -0
- data/lib/aspera/sync/database.rb +83 -0
- data/lib/aspera/{transfer/sync.rb → sync/operations.rb} +145 -68
- data/lib/aspera/temp_file_manager.rb +4 -2
- data/lib/aspera/timer_limiter.rb +7 -5
- data/lib/aspera/transfer/error.rb +1 -1
- data/lib/aspera/transfer/error_info.rb +1 -2
- data/lib/aspera/transfer/faux_file.rb +11 -10
- data/lib/aspera/transfer/parameters.rb +6 -5
- data/lib/aspera/transfer/spec.rb +15 -1
- data/lib/aspera/transfer/spec.schema.yaml +316 -293
- data/lib/aspera/transfer/spec_doc.rb +34 -16
- data/lib/aspera/transfer/uri.rb +5 -5
- data/lib/aspera/uri_reader.rb +14 -10
- data/lib/aspera/web_auth.rb +2 -2
- data/lib/aspera/web_server_simple.rb +2 -2
- data.tar.gz.sig +0 -0
- metadata +15 -15
- metadata.gz.sig +0 -0
- data/examples/dascli +0 -30
- data/examples/get_proto_file.rb +0 -8
- data/examples/proxy.pac +0 -60
- data/lib/aspera/transfer/convert.rb +0 -29
- data/lib/aspera/transfer/sync_instance.schema.yaml +0 -13
- data/lib/aspera/transfer/sync_session.schema.yaml +0 -79
@@ -7,52 +7,54 @@ title: Aspera Transfer Specification
|
|
7
7
|
description: Information defining an Aspera transfer.
|
8
8
|
type: object
|
9
9
|
required:
|
10
|
-
- destination_root
|
11
|
-
- direction
|
12
|
-
- paths
|
13
|
-
- remote_host
|
14
|
-
- remote_user
|
10
|
+
- destination_root
|
11
|
+
- direction
|
12
|
+
- paths
|
13
|
+
- remote_host
|
14
|
+
- remote_user
|
15
15
|
properties:
|
16
16
|
apply_local_docroot:
|
17
17
|
description: Apply local docroot to source paths.
|
18
18
|
x-agents:
|
19
|
-
|
20
|
-
|
19
|
+
- direct
|
20
|
+
- transferd
|
21
21
|
x-cli-switch: true
|
22
22
|
cipher:
|
23
23
|
description: In transit encryption algorithms.
|
24
24
|
enum:
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
25
|
+
- none
|
26
|
+
- aes-128
|
27
|
+
- aes-192
|
28
|
+
- aes-256
|
29
|
+
- aes-128-cfb
|
30
|
+
- aes-192-cfb
|
31
|
+
- aes-256-cfb
|
32
|
+
- aes-128-gcm
|
33
|
+
- aes-192-gcm
|
34
|
+
- aes-256-gcm
|
35
35
|
default: none
|
36
|
-
x-cli-option:
|
36
|
+
x-cli-option: -c
|
37
37
|
x-cli-convert: remove_hyphen
|
38
38
|
content_protection:
|
39
|
-
description: Enable client-side encryption at rest
|
39
|
+
description: Enable client-side encryption at rest (CSEAR).
|
40
|
+
(content protection)
|
40
41
|
enum:
|
41
|
-
|
42
|
-
|
43
|
-
x-cli-option:
|
42
|
+
- encrypt
|
43
|
+
- decrypt
|
44
|
+
x-cli-option: --file-crypt
|
44
45
|
content_protection_password:
|
45
|
-
description:
|
46
|
+
description: Specifies CSEAR password.
|
47
|
+
(content protection)
|
46
48
|
type: string
|
47
49
|
x-cli-envvar: ASPERA_SCP_FILEPASS
|
48
50
|
cookie:
|
49
|
-
description: Metadata for transfer specified by application
|
51
|
+
description: Metadata for transfer specified by application.
|
50
52
|
type: string
|
51
53
|
x-cli-envvar: ASPERA_SCP_COOKIE
|
52
54
|
create_dir:
|
53
55
|
description: Specifies whether to create new directories.
|
54
56
|
type: boolean
|
55
|
-
x-cli-option:
|
57
|
+
x-cli-option: -d
|
56
58
|
x-cli-switch: true
|
57
59
|
delete_before_transfer:
|
58
60
|
description: >-
|
@@ -63,14 +65,15 @@ properties:
|
|
63
65
|
Objects on the destination that have the same name but different type or size as objects
|
64
66
|
on the source are not deleted.
|
65
67
|
x-cli-switch: true
|
66
|
-
delete_source:
|
67
|
-
description: Remove
|
68
|
+
delete_source:
|
69
|
+
description: Remove transfered source files after transfer success.
|
70
|
+
TODO equivalent to `remove_after_transfer` + `remove_empty_directories` + `remove_empty_source_directory`
|
68
71
|
type: boolean
|
69
72
|
x-agents:
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
x-cli-option:
|
73
|
+
- node
|
74
|
+
- direct
|
75
|
+
- transferd
|
76
|
+
x-cli-option: --remove-after-transfer
|
74
77
|
x-cli-switch: true
|
75
78
|
destination_root:
|
76
79
|
description: Destination root directory.
|
@@ -82,13 +85,13 @@ properties:
|
|
82
85
|
Required when using Bearer token auth for the destination node.
|
83
86
|
type: string
|
84
87
|
x-agents:
|
85
|
-
|
88
|
+
- transferd
|
86
89
|
direction:
|
87
|
-
description:
|
90
|
+
description: Direction of transfer (on client side).
|
88
91
|
enum:
|
89
|
-
|
90
|
-
|
91
|
-
x-cli-option:
|
92
|
+
- send
|
93
|
+
- receive
|
94
|
+
x-cli-option: --mode
|
92
95
|
x-cli-convert:
|
93
96
|
receive: recv
|
94
97
|
send: send
|
@@ -97,102 +100,102 @@ properties:
|
|
97
100
|
Exclude files, but not directories, from the transfer if they are newer
|
98
101
|
than the specified number of seconds added to the source computer's epoch.
|
99
102
|
|
100
|
-
e.g.
|
103
|
+
e.g. `-86400` for newer than a day back.
|
101
104
|
type: string
|
102
105
|
exclude_older_than:
|
103
106
|
description: >-
|
104
107
|
Exclude files, but not directories, from the transfer if they are older
|
105
108
|
than the specified number of seconds added to the source computer's epoch.
|
106
109
|
|
107
|
-
e.g.
|
110
|
+
e.g. `-86400` for older than a day back.
|
108
111
|
type: string
|
109
112
|
fail_bad_filepass:
|
110
113
|
description: Fail on bad file decryption passphrase.
|
111
114
|
type: boolean
|
112
115
|
x-cli-switch: true
|
113
116
|
x-agents:
|
114
|
-
|
115
|
-
|
117
|
+
- direct
|
118
|
+
- transferd
|
116
119
|
fasp_port:
|
117
120
|
description: Specifies fasp (UDP) port.
|
118
121
|
type: integer
|
119
122
|
default: 33001
|
120
|
-
x-cli-option:
|
123
|
+
x-cli-option: -O
|
121
124
|
fasp_proxy:
|
122
|
-
description: Proxy for communications between the remote server and the (local) client.
|
125
|
+
description: Proxy for communications between the remote server and the (local) client.
|
123
126
|
type: object
|
124
127
|
x-agents:
|
125
|
-
|
128
|
+
- transferd
|
126
129
|
file_checksum:
|
127
|
-
description:
|
130
|
+
description: Enable checksum reporting for transferred files by specifying the hash to use.
|
128
131
|
enum:
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
132
|
+
- sha-512
|
133
|
+
- sha-384
|
134
|
+
- sha-256
|
135
|
+
- sha1
|
136
|
+
- md5
|
137
|
+
- none
|
135
138
|
default: none
|
136
139
|
x-agents:
|
137
|
-
|
138
|
-
|
140
|
+
- node
|
141
|
+
- direct
|
139
142
|
http_fallback:
|
140
143
|
description: When true(1), attempts to perform an HTTP transfer if a FASP transfer cannot be performed.
|
141
144
|
type:
|
142
|
-
|
143
|
-
|
144
|
-
x-cli-option:
|
145
|
+
- boolean
|
146
|
+
- string
|
147
|
+
x-cli-option: -y
|
145
148
|
x-cli-convert:
|
146
149
|
force: F
|
147
150
|
true: 1
|
148
151
|
false: 0
|
149
152
|
http_fallback_port:
|
150
|
-
description: Specifies
|
153
|
+
description: Specifies HTTP port when no cipher is used.
|
151
154
|
type: integer
|
152
|
-
x-cli-option:
|
155
|
+
x-cli-option: -t
|
153
156
|
https_fallback_port:
|
154
|
-
description: Specifies
|
157
|
+
description: Specifies HTTPS port when cipher is used.
|
155
158
|
type: integer
|
156
|
-
x-cli-option:
|
159
|
+
x-cli-option: -t
|
157
160
|
icos:
|
158
161
|
description: Configuration parameters for IBM Cloud Object Storage (ICOS).
|
159
162
|
type: object
|
160
163
|
x-agents:
|
161
|
-
|
164
|
+
- transferd
|
162
165
|
lock_min_rate:
|
163
166
|
description: "TODO: remove ?"
|
164
167
|
type: boolean
|
165
168
|
x-agents:
|
166
|
-
|
169
|
+
- connect
|
167
170
|
lock_min_rate_kbps:
|
168
171
|
description: >-
|
169
|
-
If true
|
172
|
+
If `true`, lock the minimum transfer rate to the value set for min_rate_kbps.
|
170
173
|
|
171
|
-
If false
|
174
|
+
If `false`, users can adjust the transfer rate up to the value set for target_rate_cap_kbps.
|
172
175
|
type: boolean
|
173
176
|
x-agents:
|
174
|
-
|
175
|
-
|
177
|
+
- transferd
|
178
|
+
- connect
|
176
179
|
lock_rate_policy:
|
177
|
-
description: If true
|
180
|
+
description: If `true`, lock the rate policy to the default value.
|
178
181
|
type: boolean
|
179
182
|
x-agents:
|
180
|
-
|
181
|
-
|
183
|
+
- transferd
|
184
|
+
- connect
|
182
185
|
lock_target_rate:
|
183
186
|
description: "TODO: remove ?"
|
184
187
|
type: boolean
|
185
188
|
x-agents:
|
186
|
-
|
189
|
+
- connect
|
187
190
|
lock_target_rate_kbps:
|
188
191
|
description: >-
|
189
|
-
If true
|
192
|
+
If `true`, lock the target transfer rate to the default value set for target_rate_kbps.
|
190
193
|
|
191
|
-
If false
|
194
|
+
If `false`, users can adjust the transfer rate up to the value set for target_rate_cap_kbps.
|
192
195
|
type: boolean
|
193
196
|
x-agents:
|
194
|
-
|
195
|
-
|
197
|
+
- transferd
|
198
|
+
- connect
|
196
199
|
min_rate_cap_kbps:
|
197
200
|
description: >-
|
198
201
|
The highest minimum rate that an incoming transfer can request, in kilobits per second.
|
@@ -202,26 +205,44 @@ properties:
|
|
202
205
|
The default value of unlimited applies no cap to the minimum rate. (Default: 0)
|
203
206
|
type: integer
|
204
207
|
x-agents:
|
205
|
-
|
206
|
-
|
208
|
+
- connect
|
209
|
+
- transferd
|
207
210
|
move_after_transfer:
|
208
211
|
description: >-
|
209
|
-
|
212
|
+
Move source files to the specified `archive-dir` directory after they are transferred correctly.
|
213
|
+
|
210
214
|
Available as of 3.8.0.
|
215
|
+
Details in ascp manual.
|
216
|
+
|
217
|
+
Requires write permissions on the source.
|
218
|
+
|
219
|
+
If `src_base` is specified, files are moved to `archive-dir`/`path-relative-to-srcbase`.
|
220
|
+
|
221
|
+
`archive-dir` must be in the same file system (or cloud storage account) as the source files being transferred.
|
222
|
+
|
223
|
+
`archive-dir` is subject to the same docroot restrictions as source files.
|
224
|
+
|
225
|
+
`move_after_transfer` and `remove_after_transfer` are mutually exclusive options.
|
226
|
+
|
227
|
+
After files have been moved to the archive, the original source directory structure is left in place.
|
228
|
+
Empty directories are not saved to `archive-dir`.
|
229
|
+
To remove empty source directories after a successful move operation, also set `remove_empty_directories` to `true`.
|
230
|
+
When using `remove_empty_directories`, empty directory removal examination starts at the `srcbase` and proceeds down any subdirectories.
|
231
|
+
If no `srcbase` is used and a file path (as opposed to a directory path) is specified, then only the immediate parent directory is examined and removed if it is empty following the move of the source file.
|
211
232
|
type: string
|
212
233
|
x-agents:
|
213
|
-
|
214
|
-
|
215
|
-
|
234
|
+
- direct
|
235
|
+
- node
|
236
|
+
- transferd
|
216
237
|
multi_session:
|
217
238
|
description: >-
|
218
239
|
Use multi-session transfer. max 128.
|
219
240
|
|
220
241
|
Each participant on one host needs an independent UDP (-O) port.
|
221
242
|
|
222
|
-
Large files are split between sessions only when transferring with resume_policy
|
243
|
+
Large files are split between sessions only when transferring with `resume_policy`=`none`.
|
223
244
|
type: integer
|
224
|
-
x-cli-option:
|
245
|
+
x-cli-option: -C
|
225
246
|
x-cli-special: true
|
226
247
|
multi_session_threshold:
|
227
248
|
description: >-
|
@@ -231,68 +252,68 @@ properties:
|
|
231
252
|
(0=no file is split)
|
232
253
|
type: integer
|
233
254
|
x-agents:
|
234
|
-
|
235
|
-
|
236
|
-
|
255
|
+
- direct
|
256
|
+
- node
|
257
|
+
- transferd
|
237
258
|
overwrite:
|
238
259
|
description: >-
|
239
260
|
Overwrite files at the destination with source files of the same name based
|
240
261
|
on the policy:
|
241
|
-
|
242
|
-
- always
|
243
|
-
|
244
|
-
- never
|
262
|
+
|
263
|
+
- `always` : Always overwrite the file.
|
264
|
+
|
265
|
+
- `never` : Never overwrite the file.
|
245
266
|
If the destination contains partial files that are older or the same
|
246
267
|
as the source files and resume is enabled, the partial files resume transfer.
|
247
268
|
Partial files with checksums or sizes that differ from the source files
|
248
269
|
are not overwritten.
|
249
|
-
|
250
|
-
- diff
|
251
|
-
depending on the compare method (default is size).
|
252
|
-
If the destination is object storage, diff has the same effect as always.
|
270
|
+
|
271
|
+
- `diff` : (default) Overwrite the file if it is different from the source,
|
272
|
+
depending on the compare method (default is size).
|
273
|
+
If the destination is object storage, `diff` has the same effect as always.
|
253
274
|
If resume is not enabled, partial files are overwritten if they are different
|
254
|
-
from the source, otherwise they are skipped.
|
275
|
+
from the source, otherwise they are skipped.
|
255
276
|
If resume is enabled, only partial files with different sizes or checksums
|
256
|
-
from the source are overwritten; otherwise, files resume.
|
257
|
-
|
258
|
-
- diff+older
|
259
|
-
depending on the compare method (default is size).
|
277
|
+
from the source are overwritten; otherwise, files resume.
|
278
|
+
|
279
|
+
- `diff+older` : Overwrite the file if it is older and different from the source,
|
280
|
+
depending on the compare method (default is size).
|
260
281
|
If resume is not enabled, partial files are overwritten if they are older
|
261
|
-
and different from the source, otherwise they are skipped.
|
282
|
+
and different from the source, otherwise they are skipped.
|
262
283
|
If resume is enabled, only partial files that are different and older than
|
263
|
-
the source are overwritten, otherwise they are resumed.
|
264
|
-
|
265
|
-
- older
|
266
|
-
|
267
|
-
If you set an overwrite policy of diff or diff+older
|
268
|
-
by the value set for resume_policy
|
269
|
-
|
270
|
-
|
284
|
+
the source are overwritten, otherwise they are resumed.
|
285
|
+
|
286
|
+
- `older` : Overwrite the file if its timestamp is older than the source timestamp.
|
287
|
+
|
288
|
+
If you set an overwrite policy of `diff` or `diff+older`, difference is determined
|
289
|
+
by the value set for `resume_policy`:
|
290
|
+
|
291
|
+
`none` : The source and destination files are always considered different and
|
271
292
|
the destination file is always overwritten
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
293
|
+
|
294
|
+
`attributes` : The source and destination files are compared based on file attributes
|
295
|
+
|
296
|
+
`sparse_checksum` : The source and destination files are compared based on sparse checksums, (currently file size)
|
297
|
+
|
298
|
+
`full_checksum` : The source and destination files are compared based on full checksums
|
278
299
|
default: diff
|
279
300
|
enum:
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
301
|
+
- never
|
302
|
+
- always
|
303
|
+
- diff
|
304
|
+
- older
|
305
|
+
- diff+older
|
285
306
|
password:
|
286
307
|
description: >-
|
287
|
-
Password for local Windows user when transfer user associated with node
|
288
|
-
the same as the one running asperanoded
|
308
|
+
Password for local Windows user when transfer user associated with node API user is not
|
309
|
+
the same as the one running `asperanoded`.
|
289
310
|
|
290
311
|
Allows impersonating the transfer user and have access to resources (e.g. network shares).
|
291
312
|
|
292
|
-
Windows only, node
|
313
|
+
Windows only, node API only.
|
293
314
|
type: string
|
294
315
|
x-agents:
|
295
|
-
|
316
|
+
- node
|
296
317
|
paths:
|
297
318
|
description: Array of path to the source (required) and a path to the destination (optional).
|
298
319
|
type: array
|
@@ -309,46 +330,45 @@ properties:
|
|
309
330
|
the timestamp that is preserved is the one just before to the transfer.
|
310
331
|
x-cli-switch: true
|
311
332
|
preserve_acls:
|
312
|
-
description:
|
333
|
+
description: Preserve access control lists.
|
313
334
|
enum:
|
314
|
-
|
315
|
-
|
316
|
-
|
335
|
+
- none
|
336
|
+
- native
|
337
|
+
- metafile
|
317
338
|
default: none
|
318
339
|
x-agents:
|
319
|
-
|
320
|
-
|
340
|
+
- direct
|
341
|
+
- transferd
|
321
342
|
preserve_creation_time:
|
322
343
|
description: >-
|
323
|
-
|
344
|
+
Preserve source-file creation timestamps at the destination.
|
324
345
|
|
325
346
|
Only Windows systems retain information about creation time.
|
326
|
-
|
327
347
|
If the destination is not a Windows computer, this option is ignored.
|
328
348
|
x-cli-switch: true
|
329
349
|
preserve_extended_attrs:
|
330
|
-
description:
|
350
|
+
description: Preserve the extended attributes.
|
331
351
|
enum:
|
332
|
-
|
333
|
-
|
334
|
-
|
352
|
+
- none
|
353
|
+
- native
|
354
|
+
- metafile
|
335
355
|
default: none
|
336
356
|
x-agents:
|
337
|
-
|
338
|
-
x-cli-option:
|
357
|
+
- transferd
|
358
|
+
x-cli-option: --preserve-xattrs
|
339
359
|
preserve_file_owner_gid:
|
340
|
-
description: Preserve the group ID for a file owner
|
360
|
+
description: Preserve the group ID for a file owner.
|
341
361
|
type: boolean
|
342
362
|
x-agents:
|
343
|
-
|
344
|
-
|
363
|
+
- transferd
|
364
|
+
- direct
|
345
365
|
x-cli-switch: true
|
346
366
|
preserve_file_owner_uid:
|
347
|
-
description: Preserve the user ID for a file owner
|
367
|
+
description: Preserve the user ID for a file owner.
|
348
368
|
type: boolean
|
349
369
|
x-agents:
|
350
|
-
|
351
|
-
|
370
|
+
- transferd
|
371
|
+
- direct
|
352
372
|
x-cli-switch: true
|
353
373
|
preserve_modification_time:
|
354
374
|
description: >-
|
@@ -358,159 +378,161 @@ properties:
|
|
358
378
|
Preserve source-file modification timestamps at the destination.
|
359
379
|
x-cli-switch: true
|
360
380
|
preserve_remote_acls:
|
361
|
-
description:
|
381
|
+
description: Preserve remote access control lists.
|
362
382
|
enum:
|
363
|
-
|
364
|
-
|
365
|
-
|
383
|
+
- none
|
384
|
+
- native
|
385
|
+
- metafile
|
366
386
|
default: none
|
367
387
|
x-agents:
|
368
|
-
|
369
|
-
|
370
|
-
x-cli-option:
|
388
|
+
- transferd
|
389
|
+
- direct
|
390
|
+
x-cli-option: --remote-preserve-acls
|
371
391
|
preserve_remote_extended_attrs:
|
372
|
-
description:
|
392
|
+
description: Preserve remote extended attributes.
|
373
393
|
enum:
|
374
|
-
|
375
|
-
|
376
|
-
|
394
|
+
- none
|
395
|
+
- native
|
396
|
+
- metafile
|
377
397
|
default: none
|
378
398
|
x-agents:
|
379
|
-
|
380
|
-
|
381
|
-
x-cli-option:
|
399
|
+
- transferd
|
400
|
+
- direct
|
401
|
+
x-cli-option: --remote-preserve-xattrs
|
382
402
|
preserve_source_access_time:
|
383
|
-
description: Preserve the time logged for when the source file was accessed
|
403
|
+
description: Preserve the time logged for when the source file was accessed.
|
384
404
|
type: boolean
|
385
405
|
x-agents:
|
386
|
-
|
387
|
-
|
406
|
+
- transferd
|
407
|
+
- direct
|
388
408
|
x-cli-switch: true
|
389
409
|
preserve_times:
|
390
410
|
description: Preserve file timestamps.
|
391
411
|
type: boolean
|
392
412
|
x-agents:
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
x-cli-option:
|
413
|
+
- transferd
|
414
|
+
- node
|
415
|
+
- direct
|
416
|
+
x-cli-option: -p
|
397
417
|
rate_policy:
|
398
418
|
description: >-
|
399
419
|
The transfer rate policy to use when sharing bandwidth.
|
400
420
|
Allowable values:
|
401
|
-
|
402
|
-
- high : When sharing bandwidth, transfer at twice the rate of a transfer using a fair policy.
|
403
|
-
|
404
|
-
- fair : (Default) Share bandwidth equally with other traffic.
|
405
|
-
|
406
|
-
- low : Use only unused bandwidth.
|
407
|
-
|
408
|
-
- fixed : Transfer at the target rate, regardless of the actual network capacity.
|
421
|
+
|
422
|
+
- `high` : When sharing bandwidth, transfer at twice the rate of a transfer using a fair policy.
|
423
|
+
|
424
|
+
- `fair` : (Default) Share bandwidth equally with other traffic.
|
425
|
+
|
426
|
+
- `low` : Use only unused bandwidth.
|
427
|
+
|
428
|
+
- `fixed` : Transfer at the target rate, regardless of the actual network capacity.
|
409
429
|
Do not share bandwidth.
|
410
430
|
Aspera recommends that you do not use this setting except under special circumstances,
|
411
|
-
otherwise the destination storage can be damaged.
|
431
|
+
otherwise the destination storage can be damaged.
|
412
432
|
enum:
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
x-cli-option:
|
433
|
+
- low
|
434
|
+
- fair
|
435
|
+
- high
|
436
|
+
- fixed
|
437
|
+
x-cli-option: --policy
|
418
438
|
remote_access_key:
|
419
439
|
description: The access key ID of the access key that was used to construct the bearer token that is used to authenticate to the remote node.
|
420
440
|
type: string
|
421
441
|
x-agents:
|
422
|
-
|
442
|
+
- transferd
|
423
443
|
remote_host:
|
424
|
-
description: IP or fully qualified domain name of the remote server
|
425
|
-
x-cli-option:
|
444
|
+
description: IP or fully qualified domain name (FQDN) of the remote server.
|
445
|
+
x-cli-option: --host
|
426
446
|
remote_password:
|
427
|
-
description: SSH session password
|
447
|
+
description: SSH session password.
|
428
448
|
x-cli-envvar: ASPERA_SCP_PASS
|
429
449
|
remote_user:
|
430
|
-
description: Remote user. Default value is
|
431
|
-
x-cli-option:
|
450
|
+
description: Remote user. Default value is `xfer` on node or connect.
|
451
|
+
x-cli-option: --user
|
432
452
|
remove_after_transfer:
|
433
|
-
description: Remove SRC files after transfer success
|
453
|
+
description: Remove SRC files after transfer success.
|
434
454
|
type: boolean
|
435
455
|
x-agents:
|
436
|
-
|
437
|
-
|
438
|
-
|
456
|
+
- direct
|
457
|
+
- node
|
458
|
+
- transferd
|
439
459
|
x-cli-switch: true
|
440
460
|
remove_empty_directories:
|
441
461
|
description: Specifies whether to remove empty directories.
|
442
462
|
type: boolean
|
443
463
|
x-agents:
|
444
|
-
|
445
|
-
|
446
|
-
|
464
|
+
- direct
|
465
|
+
- node
|
466
|
+
- transferd
|
447
467
|
x-cli-switch: true
|
448
468
|
remove_empty_source_dir:
|
449
469
|
description: Remove empty source subdirectories and remove the source directory itself, if empty.
|
450
470
|
type: boolean
|
451
471
|
x-agents:
|
452
|
-
|
472
|
+
- transferd
|
453
473
|
remove_empty_source_directory:
|
454
474
|
description: Remove empty source subdirectories and remove the source directory itself, if empty.
|
455
475
|
type: boolean
|
456
476
|
x-agents:
|
457
|
-
|
477
|
+
- direct
|
458
478
|
x-cli-switch: true
|
459
479
|
remove_skipped:
|
460
|
-
description: Must also have remove_after_transfer set to true
|
480
|
+
description: Must also have `remove_after_transfer` set to `true`.
|
481
|
+
Defaults to `false`.
|
482
|
+
If `true`, skipped files will be removed as well.
|
461
483
|
type: boolean
|
462
484
|
x-agents:
|
463
|
-
|
464
|
-
|
465
|
-
|
485
|
+
- direct
|
486
|
+
- connect
|
487
|
+
- node
|
466
488
|
x-cli-switch: true
|
467
489
|
proxy:
|
468
490
|
description: >-
|
469
491
|
Specify the address of the Aspera high-speed proxy server.
|
470
492
|
|
471
|
-
dnat(s)://[user[:password]@]server:port
|
493
|
+
`dnat(s)://[user[:password]@]server:port`
|
472
494
|
|
473
495
|
Default ports for DNAT and DNATS protocols are 9091 and 9092.
|
474
496
|
|
475
|
-
Password, if specified here, overrides the value of environment variable ASPERA_PROXY_PASS
|
497
|
+
Password, if specified here, overrides the value of environment variable `ASPERA_PROXY_PASS`.
|
476
498
|
x-agents:
|
477
|
-
|
478
|
-
|
499
|
+
- direct
|
500
|
+
- noded
|
479
501
|
resume_policy:
|
480
502
|
description: >-
|
481
503
|
If a transfer is interrupted or fails to finish,
|
482
504
|
this policy directs the transfer to resume without retransferring the files.
|
483
505
|
Allowable values:
|
484
|
-
|
485
|
-
- none : Always re-transfer the entire file
|
486
|
-
|
487
|
-
- attrs : Compare file attributes and resume if they match, and re-transfer if they do not
|
488
|
-
|
489
|
-
- sparse_csum : Compare file attributes and the sparse file checksums; resume if they match, and re-transfer if they do not
|
490
|
-
|
491
|
-
- full_csum : Compare file attributes and the full file checksums; resume if they match, and re-transfer if they do not.
|
492
|
-
|
493
|
-
Note: transferd uses values: attributes
|
506
|
+
|
507
|
+
- `none` : Always re-transfer the entire file.
|
508
|
+
|
509
|
+
- `attrs` : Compare file attributes and resume if they match, and re-transfer if they do not.
|
510
|
+
|
511
|
+
- `sparse_csum` : Compare file attributes and the sparse file checksums; resume if they match, and re-transfer if they do not.
|
512
|
+
|
513
|
+
- `full_csum` : Compare file attributes and the full file checksums; resume if they match, and re-transfer if they do not.
|
514
|
+
|
515
|
+
Note: transferd uses values: `attributes`, `sparse_checksum`, `full_checksum`.
|
494
516
|
default: faspmgr:none;other:sparse_csum
|
495
517
|
enum:
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
x-cli-option:
|
518
|
+
- none
|
519
|
+
- attrs
|
520
|
+
- sparse_csum
|
521
|
+
- full_csum
|
522
|
+
x-cli-option: -k
|
501
523
|
x-cli-convert:
|
502
524
|
none: 0
|
503
525
|
attrs: 1
|
504
526
|
sparse_csum: 2
|
505
527
|
full_csum: 3
|
506
528
|
retry_duration:
|
507
|
-
description: Specifies how long to wait before retrying transfer
|
529
|
+
description: Specifies how long to wait before retrying transfer (e.g. `5min`).
|
508
530
|
$comment: "TODO: check this."
|
509
531
|
type:
|
510
|
-
|
511
|
-
|
532
|
+
- integer
|
533
|
+
- string
|
512
534
|
x-agents:
|
513
|
-
|
535
|
+
- transferd
|
514
536
|
save_before_overwrite:
|
515
537
|
description: >-
|
516
538
|
If a transfer would result in an existing file <filename>.<ext> being overwritten,
|
@@ -522,33 +544,33 @@ properties:
|
|
522
544
|
File attributes are maintained in the renamed file.
|
523
545
|
x-cli-switch: true
|
524
546
|
x-agents:
|
525
|
-
|
526
|
-
|
527
|
-
|
547
|
+
- direct
|
548
|
+
- node
|
549
|
+
- transferd
|
528
550
|
skip_duplicate_check:
|
529
551
|
description: Don't check for duplicate files at the destination.
|
530
552
|
type: boolean
|
531
553
|
x-agents:
|
532
|
-
|
533
|
-
|
534
|
-
x-cli-option:
|
554
|
+
- transferd
|
555
|
+
- direct
|
556
|
+
x-cli-option: --skip-dir-traversal-dupes
|
535
557
|
x-cli-switch: true
|
536
558
|
skip_special_files:
|
537
559
|
description: >-
|
538
560
|
All assets other than files, directories and symbolic links are considered special.
|
539
561
|
A transfer will fail if the user attempts to transfer special assets.
|
540
|
-
If true
|
562
|
+
If `true`, `ascp` skips special assets and proceeds with the transfer of all other assets.
|
541
563
|
type: boolean
|
542
564
|
x-agents:
|
543
|
-
|
544
|
-
|
565
|
+
- transferd
|
566
|
+
- direct
|
545
567
|
x-cli-switch: true
|
546
568
|
source_root:
|
547
569
|
description: >-
|
548
570
|
Path to be prepended to each source path.
|
549
571
|
|
550
572
|
This is either a conventional path or it can be a URI but only if there is no root defined.
|
551
|
-
x-cli-option:
|
573
|
+
x-cli-option: --source-prefix64
|
552
574
|
x-cli-convert: base64
|
553
575
|
source_root_id:
|
554
576
|
description: >-
|
@@ -556,8 +578,8 @@ properties:
|
|
556
578
|
Required when using Bearer token auth for the source node.
|
557
579
|
type: string
|
558
580
|
x-agents:
|
559
|
-
|
560
|
-
|
581
|
+
- transferd
|
582
|
+
- node
|
561
583
|
src_base:
|
562
584
|
description: >-
|
563
585
|
Specify the prefix to be stripped off from each source object.
|
@@ -566,23 +588,23 @@ properties:
|
|
566
588
|
|
567
589
|
Special care must be taken when used with cloud storage.
|
568
590
|
x-agents:
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
x-cli-option:
|
591
|
+
- direct
|
592
|
+
- node
|
593
|
+
- transferd
|
594
|
+
x-cli-option: --src-base64
|
573
595
|
x-cli-convert: base64
|
574
596
|
src_base64:
|
575
597
|
description: The folder name below which the directory structure is preserved (base64 encoded).
|
576
598
|
type: string
|
577
599
|
x-agents:
|
578
|
-
|
579
|
-
|
580
|
-
x-cli-option:
|
600
|
+
- transferd
|
601
|
+
- direct
|
602
|
+
x-cli-option: --src-base64
|
581
603
|
ssh_port:
|
582
604
|
description: Specifies SSH (TCP) port.
|
583
605
|
default: "direct:22, other:33001"
|
584
606
|
type: integer
|
585
|
-
x-cli-option:
|
607
|
+
x-cli-option: -P
|
586
608
|
ssh_private_key:
|
587
609
|
description: >-
|
588
610
|
Private key used for SSH authentication.
|
@@ -591,145 +613,146 @@ properties:
|
|
591
613
|
|
592
614
|
Note the JSON encoding: \n for newlines.
|
593
615
|
x-agents:
|
594
|
-
|
595
|
-
|
616
|
+
- direct
|
617
|
+
- transferd
|
596
618
|
x-cli-envvar: ASPERA_SCP_KEY
|
597
619
|
ssh_private_key_passphrase:
|
598
620
|
description: The passphrase associated with the transfer user's SSH private key. Available as of 3.7.2.
|
599
621
|
type: string
|
600
622
|
x-agents:
|
601
|
-
|
602
|
-
|
623
|
+
- transferd
|
624
|
+
- direct
|
603
625
|
x-cli-envvar: ASPERA_SCP_PASS
|
604
626
|
ssh_private_key_path:
|
605
627
|
description: Path to private key for SSH.
|
606
628
|
type: string
|
607
629
|
x-agents:
|
608
|
-
|
609
|
-
|
610
|
-
x-cli-option:
|
630
|
+
- transferd
|
631
|
+
- direct
|
632
|
+
x-cli-option: -i
|
611
633
|
ssh_args:
|
612
634
|
description: Array of arguments to pass to SSH. Use with caution.
|
613
635
|
type: array
|
614
636
|
x-agents:
|
615
|
-
|
616
|
-
x-cli-option:
|
637
|
+
- transferd
|
638
|
+
x-cli-option: --ssh-args
|
617
639
|
symlink_policy:
|
618
|
-
description:
|
640
|
+
description: Handle source side symbolic links.
|
619
641
|
enum:
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
642
|
+
- follow
|
643
|
+
- copy
|
644
|
+
- copy+force
|
645
|
+
- skip
|
624
646
|
default: follow
|
625
|
-
x-cli-option:
|
647
|
+
x-cli-option: --symbolic-links
|
626
648
|
tags:
|
627
649
|
description: >-
|
628
650
|
Metadata for transfer as JSON.
|
629
651
|
Key `aspera` is reserved.
|
630
|
-
Key `aspera.xfer_retry` specifies a retry timeout for node
|
652
|
+
Key `aspera.xfer_retry` specifies a retry timeout for node API initiated transfers.
|
631
653
|
type: object
|
632
|
-
x-cli-option:
|
654
|
+
x-cli-option: --tags64
|
633
655
|
x-cli-convert: json64
|
634
656
|
tags64:
|
635
657
|
description: >-
|
636
658
|
Metadata for transfer as JSON.
|
637
659
|
Key `aspera` is reserved.
|
638
|
-
Key `aspera.xfer_retry` specifies a retry timeout for node
|
660
|
+
Key `aspera.xfer_retry` specifies a retry timeout for node API initiated transfers.
|
639
661
|
type: string
|
640
662
|
x-agents:
|
641
|
-
|
642
|
-
|
663
|
+
- transferd
|
664
|
+
- direct
|
643
665
|
target_rate_cap_kbps:
|
644
666
|
description: >-
|
645
|
-
Maximum target rate for incoming transfers, in kilobits per second.
|
667
|
+
Maximum target rate for incoming transfers, in kilobits per second.
|
646
668
|
Returned by upload/download_setup node API.
|
647
669
|
type: integer
|
648
670
|
x-agents:
|
649
|
-
|
650
|
-
|
671
|
+
- connect
|
672
|
+
- transferd
|
651
673
|
target_rate_kbps:
|
652
674
|
description: Specifies desired speed for the transfer.
|
653
675
|
type: integer
|
654
|
-
x-cli-option:
|
676
|
+
x-cli-option: -l
|
655
677
|
title:
|
656
678
|
description: Title of the transfer.
|
657
679
|
type: string
|
658
680
|
x-agents:
|
659
|
-
|
660
|
-
|
661
|
-
|
681
|
+
- node
|
682
|
+
- connect
|
683
|
+
- transferd
|
662
684
|
token:
|
663
|
-
description:
|
685
|
+
description: "Authorization token. Type: Bearer, Basic or ATM. (Also arg -W)"
|
664
686
|
x-cli-envvar: ASPERA_SCP_TOKEN
|
665
687
|
use_ascp4:
|
666
688
|
description: Specify version of protocol. Do not use ascp4.
|
667
689
|
type: boolean
|
668
690
|
default: false
|
669
691
|
x-agents:
|
670
|
-
|
671
|
-
|
672
|
-
|
692
|
+
- direct
|
693
|
+
- node
|
694
|
+
- transferd
|
673
695
|
x-cli-special: true
|
674
696
|
use_system_ssh:
|
675
697
|
description: TODO, comment...
|
676
698
|
type: string
|
677
699
|
x-agents:
|
678
|
-
|
679
|
-
|
680
|
-
x-cli-option:
|
700
|
+
- transferd
|
701
|
+
- direct
|
702
|
+
x-cli-option: -SSH
|
681
703
|
keepalive:
|
682
704
|
description: The session is running in persistent session mode.
|
683
705
|
x-agents:
|
684
|
-
|
685
|
-
|
706
|
+
- transferd
|
707
|
+
- direct
|
686
708
|
x-cli-switch: true
|
687
709
|
dgram_size:
|
688
|
-
description: UDP datagram size in bytes
|
710
|
+
description: UDP datagram size in bytes.
|
689
711
|
type: integer
|
690
|
-
x-cli-option:
|
712
|
+
x-cli-option: -Z
|
691
713
|
min_rate_kbps:
|
692
714
|
description: Set the minimum transfer rate in kilobits per second.
|
693
715
|
type: integer
|
694
716
|
default: 0
|
695
|
-
x-cli-option:
|
717
|
+
x-cli-option: -m
|
696
718
|
sshfp:
|
697
719
|
description: Check it against server SSH host key fingerprint.
|
698
|
-
x-cli-option:
|
720
|
+
x-cli-option: --check-sshfp
|
699
721
|
target_rate_percentage:
|
700
722
|
description: "TODO: remove ?"
|
701
723
|
x-agents: []
|
702
724
|
rate_policy_allowed:
|
703
|
-
description:
|
725
|
+
description: Specifies most aggressive rate policy that is allowed.
|
726
|
+
Returned by node API.
|
704
727
|
enum:
|
705
|
-
|
706
|
-
|
707
|
-
|
708
|
-
|
728
|
+
- low
|
729
|
+
- fair
|
730
|
+
- high
|
731
|
+
- fixed
|
709
732
|
x-agents:
|
710
|
-
|
733
|
+
- connect
|
711
734
|
fasp_url:
|
712
735
|
description: Only used in Faspex.
|
713
736
|
x-agents: []
|
714
737
|
authentication:
|
715
|
-
description:
|
738
|
+
description: Set to `token` for SSH bypass keys, else password asked if not provided.
|
716
739
|
x-agents:
|
717
|
-
|
740
|
+
- connect
|
718
741
|
cipher_allowed:
|
719
|
-
description:
|
742
|
+
description: Returned by node API. Valid literals include `aes-128` and `none`.
|
720
743
|
x-agents:
|
721
|
-
|
744
|
+
- connect
|
722
745
|
obfuscate_file_names:
|
723
|
-
description: HTTP Gateway obfuscates file names when set to true
|
746
|
+
description: HTTP Gateway obfuscates file names when set to `true`.
|
724
747
|
type: boolean
|
725
748
|
x-agents:
|
726
|
-
|
749
|
+
- httpgw
|
727
750
|
wss_enabled:
|
728
|
-
description: Server has Web Socket service enabled
|
751
|
+
description: Server has Web Socket service enabled.
|
729
752
|
type: boolean
|
730
753
|
x-cli-special: true
|
731
754
|
wss_port:
|
732
|
-
description: TCP port used for websocket service feed
|
755
|
+
description: TCP port used for websocket service feed.
|
733
756
|
type: integer
|
734
757
|
x-cli-special: true
|
735
758
|
compression:
|
@@ -750,4 +773,4 @@ properties:
|
|
750
773
|
Shall not exceed aspera.conf `transfer_manager_max_retries` (default 5).
|
751
774
|
type: integer
|
752
775
|
x-agents:
|
753
|
-
|
776
|
+
- node
|