aspera-cli 4.26.2 → 4.27.1
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 +310 -21
- data/CONTRIBUTING.md +99 -14
- data/TODO.md +50 -0
- data/bin/ascli +3 -3
- data/docs/README.md +10977 -0
- data/docs/test-mcp-with-ai.md +202 -0
- data/lib/aspera/agent/base.rb +29 -7
- data/lib/aspera/agent/connect.rb +58 -21
- data/lib/aspera/agent/desktop.rb +53 -18
- data/lib/aspera/agent/direct.rb +71 -40
- data/lib/aspera/agent/factory.rb +3 -3
- data/lib/aspera/agent/httpgw.rb +55 -14
- data/lib/aspera/agent/node.rb +34 -2
- data/lib/aspera/agent/transferd.rb +48 -12
- data/lib/aspera/api/alee.rb +1 -1
- data/lib/aspera/api/aoc.rb +42 -44
- data/lib/aspera/api/cos_node.rb +10 -9
- data/lib/aspera/api/faspex.rb +16 -15
- data/lib/aspera/api/httpgw.rb +23 -23
- data/lib/aspera/api/node.rb +51 -70
- data/lib/aspera/api/queries/bss_subscription_account.graphql +18 -0
- data/lib/aspera/api/queries/bss_subscription_usage.graphql +18 -0
- data/lib/aspera/ascmd.rb +32 -30
- data/lib/aspera/ascp/installation.rb +75 -69
- data/lib/aspera/ascp/management.rb +7 -8
- data/lib/aspera/assert.rb +12 -13
- data/lib/aspera/cli/ascp_actions.rb +155 -0
- data/lib/aspera/cli/async_transfer_store.rb +125 -0
- data/lib/aspera/cli/bootstrapper.rb +197 -0
- data/lib/aspera/cli/command_registry.rb +145 -0
- data/lib/aspera/cli/command_spec.rb +141 -0
- data/lib/aspera/cli/context.rb +19 -6
- data/lib/aspera/cli/error.rb +16 -0
- data/lib/aspera/cli/extended_value.rb +27 -26
- data/lib/aspera/cli/formatter.rb +95 -59
- data/lib/aspera/cli/gem_checker.rb +65 -0
- data/lib/aspera/cli/hints.rb +3 -3
- data/lib/aspera/cli/http.rb +74 -30
- data/lib/aspera/cli/info.rb +2 -0
- data/lib/aspera/cli/mailer.rb +97 -0
- data/lib/aspera/cli/mcp_tool.rb +225 -0
- data/lib/aspera/cli/option_declarator.rb +77 -0
- data/lib/aspera/cli/options.schema.yaml +634 -7
- data/lib/aspera/cli/parser.rb +1217 -0
- data/lib/aspera/cli/plugins/alee.rb +20 -22
- data/lib/aspera/cli/plugins/aoc.rb +1178 -881
- data/lib/aspera/cli/plugins/ats.rb +205 -162
- data/lib/aspera/cli/plugins/base.rb +703 -175
- data/lib/aspera/cli/plugins/basic_auth.rb +7 -9
- data/lib/aspera/cli/plugins/config.rb +434 -757
- data/lib/aspera/cli/plugins/console.rb +107 -65
- data/lib/aspera/cli/plugins/cos.rb +46 -33
- data/lib/aspera/cli/plugins/factory.rb +6 -6
- data/lib/aspera/cli/plugins/faspex5.rb +627 -388
- data/lib/aspera/cli/plugins/faspio.rb +54 -51
- data/lib/aspera/cli/plugins/httpgw.rb +18 -25
- data/lib/aspera/cli/plugins/mcp.rb +279 -0
- data/lib/aspera/cli/plugins/node.rb +988 -840
- data/lib/aspera/cli/plugins/oauth.rb +7 -10
- data/lib/aspera/cli/plugins/orchestrator.rb +112 -135
- data/lib/aspera/cli/plugins/preview.rb +195 -157
- data/lib/aspera/cli/plugins/server.rb +141 -91
- data/lib/aspera/cli/plugins/shares.rb +343 -110
- data/lib/aspera/cli/preset_actions.rb +159 -0
- data/lib/aspera/cli/preset_manager.rb +82 -39
- data/lib/aspera/cli/result.rb +78 -26
- data/lib/aspera/cli/runner.rb +323 -153
- data/lib/aspera/cli/secret_finder.rb +40 -0
- data/lib/aspera/cli/special_values.rb +1 -0
- data/lib/aspera/cli/sync_actions.rb +89 -64
- data/lib/aspera/cli/terminal_formatter.rb +3 -3
- data/lib/aspera/cli/transfer_actions.rb +90 -0
- data/lib/aspera/cli/transfer_agent.rb +129 -64
- data/lib/aspera/cli/transfer_progress.rb +9 -9
- data/lib/aspera/cli/vault_manager.rb +79 -0
- data/lib/aspera/cli/version.rb +1 -1
- data/lib/aspera/cli/wizard.rb +28 -30
- data/lib/aspera/colors.rb +3 -3
- data/lib/aspera/command_line_builder.rb +34 -34
- data/lib/aspera/command_line_converter.rb +1 -1
- data/lib/aspera/coverage.rb +1 -2
- data/lib/aspera/data_repository.rb +2 -1
- data/lib/aspera/dot_container.rb +12 -12
- data/lib/aspera/environment.rb +30 -23
- data/lib/aspera/exec_spec.rb +13 -0
- data/lib/aspera/faspex_gw.rb +5 -5
- data/lib/aspera/faspex_postproc.rb +16 -10
- data/lib/aspera/graphql.rb +37 -0
- data/lib/aspera/hash_ext.rb +8 -2
- data/lib/aspera/json_rpc/client.rb +62 -0
- data/lib/aspera/json_rpc/version.rb +7 -0
- data/lib/aspera/keychain/base.rb +10 -3
- data/lib/aspera/keychain/encrypted_hash.rb +92 -17
- data/lib/aspera/keychain/factory.rb +20 -8
- data/lib/aspera/keychain/hashicorp_vault.rb +1 -1
- data/lib/aspera/keychain/macos_security.rb +23 -25
- data/lib/aspera/keychain/one_password_api.rb +86 -0
- data/lib/aspera/keychain/one_password_base.rb +34 -0
- data/lib/aspera/keychain/one_password_cli.rb +98 -0
- data/lib/aspera/link_header.rb +82 -0
- data/lib/aspera/log.rb +29 -15
- data/lib/aspera/markdown.rb +90 -7
- data/lib/aspera/nagios.rb +8 -8
- data/lib/aspera/node_simulator.rb +35 -27
- data/lib/aspera/oauth/base.rb +9 -10
- data/lib/aspera/oauth/boot.rb +5 -5
- data/lib/aspera/oauth/factory.rb +12 -10
- data/lib/aspera/oauth/jwt.rb +9 -11
- data/lib/aspera/oauth/web.rb +6 -6
- data/lib/aspera/persistency_action_once.rb +12 -12
- data/lib/aspera/persistency_folder.rb +18 -11
- data/lib/aspera/preview/file_types.rb +5 -5
- data/lib/aspera/preview/generator.rb +52 -49
- data/lib/aspera/preview/options.rb +3 -2
- data/lib/aspera/preview/terminal.rb +5 -5
- data/lib/aspera/preview/utils.rb +66 -19
- data/lib/aspera/products/connect.rb +2 -2
- data/lib/aspera/products/desktop.rb +1 -1
- data/lib/aspera/products/other.rb +3 -3
- data/lib/aspera/products/transferd.rb +4 -4
- data/lib/aspera/proxy_auto_config.rb +15 -14
- data/lib/aspera/rest.rb +159 -151
- data/lib/aspera/rest_error_analyzer.rb +6 -6
- data/lib/aspera/rest_errors_aspera.rb +0 -10
- data/lib/aspera/rest_list.rb +11 -10
- data/lib/aspera/schema/IBM Aspera Node API-4.4.6.yaml +6232 -0
- data/lib/aspera/schema/IBM Aspera faspio Gateway API-1.0.0.yaml +249 -0
- data/lib/aspera/schema/IBM Aspera on Cloud API-0.2.6-enhanced.yaml +1853 -510
- data/lib/aspera/schema/IBM_Aspera_Shares.yaml +4653 -0
- data/lib/aspera/schema/documentation.rb +65 -28
- data/lib/aspera/schema/reader.rb +136 -13
- data/lib/aspera/schema/registry.rb +60 -8
- data/lib/aspera/secret_hider.rb +12 -7
- data/lib/aspera/ssh.rb +64 -31
- data/lib/aspera/ssl.rb +5 -5
- data/lib/aspera/sync/conf.schema.yaml +2 -2
- data/lib/aspera/sync/database.rb +2 -2
- data/lib/aspera/sync/operations.rb +22 -25
- data/lib/aspera/temp_file_manager.rb +25 -5
- data/lib/aspera/timer_limiter.rb +1 -1
- data/lib/aspera/transfer/faux_file.rb +24 -11
- data/lib/aspera/transfer/parameters.rb +36 -34
- data/lib/aspera/transfer/result.rb +74 -0
- data/lib/aspera/transfer/resumer.rb +10 -10
- data/lib/aspera/transfer/spec.rb +18 -1
- data/lib/aspera/transfer/spec.schema.yaml +12 -3
- data/lib/aspera/uri_reader.rb +52 -15
- data/lib/aspera/web_auth.rb +8 -7
- data/lib/aspera/web_server_simple.rb +15 -12
- data/lib/aspera/yaml.rb +5 -4
- data.tar.gz.sig +0 -0
- metadata +34 -6
- metadata.gz.sig +0 -0
- data/lib/aspera/cli/manager.rb +0 -766
- data/lib/aspera/cli/plugins/faspex.rb +0 -539
- data/lib/aspera/json_rpc.rb +0 -52
- data/lib/aspera/transfer/uri.rb +0 -56
|
@@ -6,9 +6,95 @@ info:
|
|
|
6
6
|
paths: {}
|
|
7
7
|
components:
|
|
8
8
|
schemas:
|
|
9
|
-
|
|
9
|
+
LogOptions:
|
|
10
10
|
type: object
|
|
11
|
-
description:
|
|
11
|
+
description: Logging options.
|
|
12
|
+
properties:
|
|
13
|
+
level:
|
|
14
|
+
type: string
|
|
15
|
+
description: Minimum log level displayed.
|
|
16
|
+
enum: [trace2, trace1, debug, info, warn, error, fatal, unknown]
|
|
17
|
+
default: warn
|
|
18
|
+
type:
|
|
19
|
+
type: string
|
|
20
|
+
description: Log output destination.
|
|
21
|
+
enum: [stderr, stdout, syslog]
|
|
22
|
+
default: stderr
|
|
23
|
+
format:
|
|
24
|
+
type: string
|
|
25
|
+
description: Log line formatter. Use `@ruby:` for a custom lambda.
|
|
26
|
+
enum: [default, caller, standard]
|
|
27
|
+
default: default
|
|
28
|
+
secrets:
|
|
29
|
+
type: boolean
|
|
30
|
+
description: Show passwords and secrets in logs.
|
|
31
|
+
default: false
|
|
32
|
+
McpServerOptions:
|
|
33
|
+
type: object
|
|
34
|
+
description: MCP server configuration for the `mcp server` command.
|
|
35
|
+
properties:
|
|
36
|
+
transport:
|
|
37
|
+
type: string
|
|
38
|
+
description: Transport used by the MCP server.
|
|
39
|
+
enum: [stdio, http]
|
|
40
|
+
default: stdio
|
|
41
|
+
extra_args:
|
|
42
|
+
type: array
|
|
43
|
+
description: Flags prepended to every `ascli` command.
|
|
44
|
+
items:
|
|
45
|
+
type: string
|
|
46
|
+
max_text_bytes:
|
|
47
|
+
type: integer
|
|
48
|
+
description: Maximum number of bytes for JSON text content in list results.
|
|
49
|
+
default: 100000
|
|
50
|
+
max_line_bytes:
|
|
51
|
+
type: integer
|
|
52
|
+
description: Maximum JSON frame size for stdio transport.
|
|
53
|
+
default: 4194304
|
|
54
|
+
port:
|
|
55
|
+
type: integer
|
|
56
|
+
description: TCP port for HTTP transport.
|
|
57
|
+
default: 3000
|
|
58
|
+
bind:
|
|
59
|
+
type: string
|
|
60
|
+
description: Bind address for HTTP transport.
|
|
61
|
+
default: 127.0.0.1
|
|
62
|
+
stateless:
|
|
63
|
+
type: boolean
|
|
64
|
+
description: Run HTTP transport in stateless mode.
|
|
65
|
+
default: false
|
|
66
|
+
allowed_origins:
|
|
67
|
+
type: array
|
|
68
|
+
description: Allowed HTTP origin values.
|
|
69
|
+
items:
|
|
70
|
+
type: string
|
|
71
|
+
allowed_hosts:
|
|
72
|
+
type: array
|
|
73
|
+
description: Allowed HTTP host values.
|
|
74
|
+
items:
|
|
75
|
+
type: string
|
|
76
|
+
session_idle_timeout:
|
|
77
|
+
type: integer
|
|
78
|
+
description: HTTP session idle timeout in seconds.
|
|
79
|
+
max_sessions:
|
|
80
|
+
type: integer
|
|
81
|
+
description: Maximum number of HTTP sessions.
|
|
82
|
+
instructions:
|
|
83
|
+
type: string
|
|
84
|
+
description: Instructions shown to the AI client.
|
|
85
|
+
description:
|
|
86
|
+
type: string
|
|
87
|
+
description: Description advertised by the MCP server.
|
|
88
|
+
protocol_version:
|
|
89
|
+
type: string
|
|
90
|
+
description: MCP protocol version, for example `2024-11-05`.
|
|
91
|
+
validate_tool_call_arguments:
|
|
92
|
+
type: boolean
|
|
93
|
+
description: Validate MCP tool call arguments.
|
|
94
|
+
default: true
|
|
95
|
+
DirectAgentOptions:
|
|
96
|
+
type: object
|
|
97
|
+
description: Parameters for the `ascp` transfer agent.
|
|
12
98
|
properties:
|
|
13
99
|
wss:
|
|
14
100
|
type: boolean
|
|
@@ -17,7 +103,14 @@ components:
|
|
|
17
103
|
quiet:
|
|
18
104
|
type: boolean
|
|
19
105
|
description: Suppress the `ascp` progress bar display.
|
|
20
|
-
default:
|
|
106
|
+
default: true
|
|
107
|
+
file_list:
|
|
108
|
+
type: boolean
|
|
109
|
+
description: >-
|
|
110
|
+
If `true`, source paths are written to a temp file passed to `ascp` via `--file-list` or `--file-pair-list`.
|
|
111
|
+
|
|
112
|
+
If `false`, source paths are placed directly on the `ascp` command line.
|
|
113
|
+
default: true
|
|
21
114
|
trusted_certs:
|
|
22
115
|
type: array
|
|
23
116
|
description: List of trusted certificate repositories.
|
|
@@ -41,7 +134,7 @@ components:
|
|
|
41
134
|
type: number
|
|
42
135
|
format: float
|
|
43
136
|
description: Multi session - Maximum time (in seconds) to verify that `ascp` is running.
|
|
44
|
-
default:
|
|
137
|
+
default: 2
|
|
45
138
|
spawn_delay_sec:
|
|
46
139
|
type: number
|
|
47
140
|
format: float
|
|
@@ -51,11 +144,12 @@ components:
|
|
|
51
144
|
type: boolean
|
|
52
145
|
description: >-
|
|
53
146
|
Multi session - Increment UDP port for each session.
|
|
54
|
-
|
|
147
|
+
|
|
55
148
|
If `true`, each session uses a different UDP port starting at `fasp_port` (default: 33001).
|
|
56
|
-
|
|
149
|
+
|
|
57
150
|
If `false`, all sessions use the same `fasp_port` (or `ascp` default).
|
|
58
|
-
|
|
151
|
+
|
|
152
|
+
Default: `true` on Windows, `false` on other platforms.
|
|
59
153
|
resume:
|
|
60
154
|
type: object
|
|
61
155
|
description: Configuration for automatic transfer resume on interruption.
|
|
@@ -80,3 +174,536 @@ components:
|
|
|
80
174
|
type: boolean
|
|
81
175
|
description: Enable use of the `ascp` management port for transfer monitoring.
|
|
82
176
|
default: true
|
|
177
|
+
NodeAgentOptions:
|
|
178
|
+
type: object
|
|
179
|
+
description: Parameters for the Node API transfer agent.
|
|
180
|
+
required:
|
|
181
|
+
- url
|
|
182
|
+
- username
|
|
183
|
+
- password
|
|
184
|
+
properties:
|
|
185
|
+
url:
|
|
186
|
+
type: string
|
|
187
|
+
description: URL of the Node API.
|
|
188
|
+
username:
|
|
189
|
+
type: string
|
|
190
|
+
description: Node API user or access key.
|
|
191
|
+
password:
|
|
192
|
+
type: string
|
|
193
|
+
description: Password, secret, or bearer token.
|
|
194
|
+
root_id:
|
|
195
|
+
type: string
|
|
196
|
+
description: Root file ID. Mandatory only when `password` is a bearer token.
|
|
197
|
+
HttpgwAgentOptions:
|
|
198
|
+
type: object
|
|
199
|
+
description: Parameters for the HTTP Gateway transfer agent.
|
|
200
|
+
required:
|
|
201
|
+
- url
|
|
202
|
+
properties:
|
|
203
|
+
url:
|
|
204
|
+
type: string
|
|
205
|
+
description: URL of the HTTP Gateway.
|
|
206
|
+
upload_chunk_size:
|
|
207
|
+
type: integer
|
|
208
|
+
description: Size in bytes of each upload chunk.
|
|
209
|
+
default: 64000
|
|
210
|
+
api_version:
|
|
211
|
+
type: string
|
|
212
|
+
description: Force use of a specific API version.
|
|
213
|
+
enum:
|
|
214
|
+
- v1
|
|
215
|
+
- v2
|
|
216
|
+
default: v2
|
|
217
|
+
synchronous:
|
|
218
|
+
type: boolean
|
|
219
|
+
description: Wait for acknowledgment after each message.
|
|
220
|
+
default: false
|
|
221
|
+
DesktopAgentOptions:
|
|
222
|
+
type: object
|
|
223
|
+
description: >-
|
|
224
|
+
Parameters for the IBM Aspera Desktop Client transfer agent.
|
|
225
|
+
The Desktop Client must be running locally. No additional options are required.
|
|
226
|
+
properties: {}
|
|
227
|
+
ConnectAgentOptions:
|
|
228
|
+
type: object
|
|
229
|
+
description: >-
|
|
230
|
+
Parameters for the IBM Aspera Connect Client transfer agent.
|
|
231
|
+
The Connect Client must be running locally. No additional options are required.
|
|
232
|
+
properties: {}
|
|
233
|
+
TransferdAgentOptions:
|
|
234
|
+
type: object
|
|
235
|
+
description: Parameters for the Transfer Daemon transfer agent.
|
|
236
|
+
properties:
|
|
237
|
+
url:
|
|
238
|
+
type: string
|
|
239
|
+
description: >-
|
|
240
|
+
Address and port listened by the daemon (e.g. `:55002`).
|
|
241
|
+
If port is `0`, the daemon listens on a random available port.
|
|
242
|
+
If no address is given, `127.0.0.1` is used.
|
|
243
|
+
default: ":0"
|
|
244
|
+
start:
|
|
245
|
+
type: boolean
|
|
246
|
+
description: Start a new daemon instance.
|
|
247
|
+
default: true
|
|
248
|
+
stop:
|
|
249
|
+
type: boolean
|
|
250
|
+
description: Stop the daemon when `ascli` exits.
|
|
251
|
+
default: true
|
|
252
|
+
TransferAgentOptions:
|
|
253
|
+
description: >-
|
|
254
|
+
Transfer agent selector and agent-specific parameters.
|
|
255
|
+
Set `agent` to select the agent type (default: `direct`).
|
|
256
|
+
Remaining keys are passed to the selected agent.
|
|
257
|
+
oneOf:
|
|
258
|
+
- $ref: "#/components/schemas/DirectAgentOptions"
|
|
259
|
+
- $ref: "#/components/schemas/NodeAgentOptions"
|
|
260
|
+
- $ref: "#/components/schemas/HttpgwAgentOptions"
|
|
261
|
+
- $ref: "#/components/schemas/TransferdAgentOptions"
|
|
262
|
+
- $ref: "#/components/schemas/DesktopAgentOptions"
|
|
263
|
+
- $ref: "#/components/schemas/ConnectAgentOptions"
|
|
264
|
+
discriminator:
|
|
265
|
+
propertyName: agent
|
|
266
|
+
mapping:
|
|
267
|
+
direct: "#/components/schemas/DirectAgentOptions"
|
|
268
|
+
node: "#/components/schemas/NodeAgentOptions"
|
|
269
|
+
httpgw: "#/components/schemas/HttpgwAgentOptions"
|
|
270
|
+
transferd: "#/components/schemas/TransferdAgentOptions"
|
|
271
|
+
desktop: "#/components/schemas/DesktopAgentOptions"
|
|
272
|
+
connect: "#/components/schemas/ConnectAgentOptions"
|
|
273
|
+
SmtpOptions:
|
|
274
|
+
type: object
|
|
275
|
+
description: SMTP email server configuration.
|
|
276
|
+
required:
|
|
277
|
+
- server
|
|
278
|
+
properties:
|
|
279
|
+
server:
|
|
280
|
+
type: string
|
|
281
|
+
description: SMTP server address.
|
|
282
|
+
example: smtp.gmail.com
|
|
283
|
+
tls:
|
|
284
|
+
type: boolean
|
|
285
|
+
description: Enable `STARTTLS` (port 587).
|
|
286
|
+
default: true
|
|
287
|
+
ssl:
|
|
288
|
+
type: boolean
|
|
289
|
+
description: Enable `TLS/SSL` (port 465).
|
|
290
|
+
default: false
|
|
291
|
+
port:
|
|
292
|
+
type: integer
|
|
293
|
+
description: >-
|
|
294
|
+
Port for the SMTP service.
|
|
295
|
+
|
|
296
|
+
Defaults: `587` (TLS), `465` (SSL), `25` (plain).
|
|
297
|
+
example: 587
|
|
298
|
+
domain:
|
|
299
|
+
type: string
|
|
300
|
+
description: Email domain of the user. Defaults to the domain part of `server`.
|
|
301
|
+
example: gmail.com
|
|
302
|
+
username:
|
|
303
|
+
type: string
|
|
304
|
+
description: >-
|
|
305
|
+
User to authenticate on the SMTP server.
|
|
306
|
+
Leave empty for open (unauthenticated) relay.
|
|
307
|
+
example: john@example.com
|
|
308
|
+
password:
|
|
309
|
+
type: string
|
|
310
|
+
description: Password for the above `username`.
|
|
311
|
+
example: my_password
|
|
312
|
+
from_email:
|
|
313
|
+
type: string
|
|
314
|
+
description: Sender address (used in `From:` header and as reply-to). Defaults to `username` when defined.
|
|
315
|
+
example: johnny@example.com
|
|
316
|
+
from_name:
|
|
317
|
+
type: string
|
|
318
|
+
description: Display name of the sender. Defaults to the local-part of `from_email`.
|
|
319
|
+
example: John Wayne
|
|
320
|
+
HttpOptions:
|
|
321
|
+
type: object
|
|
322
|
+
description: >-
|
|
323
|
+
HTTP/S connection parameters for REST calls (not `ascp` WSS).
|
|
324
|
+
|
|
325
|
+
Keys are dispatched at startup to three targets:
|
|
326
|
+
`RestParameters` (`user_agent`, `download_partial_suffix`, `retry_*`),
|
|
327
|
+
`SSL` (`ssl_options`), and `OAuth` (`token_cache_max_age`, `token_refresh_threshold`).
|
|
328
|
+
Any remaining key is forwarded as a setter to the `Net::HTTP` session
|
|
329
|
+
(e.g. `ca_file`, `verify_mode`) — the list below covers the common ones.
|
|
330
|
+
additionalProperties: true
|
|
331
|
+
properties:
|
|
332
|
+
read_timeout:
|
|
333
|
+
type: number
|
|
334
|
+
description: Maximum time in seconds to wait for data to be read from the server. (Net::HTTP)
|
|
335
|
+
default: 60
|
|
336
|
+
write_timeout:
|
|
337
|
+
type: number
|
|
338
|
+
description: Maximum time in seconds to wait for data to be written to the server. (Net::HTTP)
|
|
339
|
+
default: 60
|
|
340
|
+
open_timeout:
|
|
341
|
+
type: number
|
|
342
|
+
description: Maximum time in seconds to wait for a connection to be established. (Net::HTTP)
|
|
343
|
+
default: 60
|
|
344
|
+
keep_alive_timeout:
|
|
345
|
+
type: number
|
|
346
|
+
description: Maximum time in seconds to keep an idle persistent connection open. (Net::HTTP)
|
|
347
|
+
default: 2
|
|
348
|
+
ssl_options:
|
|
349
|
+
type: array
|
|
350
|
+
description: List of OpenSSL option flags to set on the HTTP session (e.g. `IGNORE_UNEXPECTED_EOF`). (SSL)
|
|
351
|
+
items:
|
|
352
|
+
type: string
|
|
353
|
+
user_agent:
|
|
354
|
+
type: string
|
|
355
|
+
description: Value sent in the `User-Agent` HTTP request header. (Rest)
|
|
356
|
+
download_partial_suffix:
|
|
357
|
+
type: string
|
|
358
|
+
description: File suffix appended to the target filename while a download is in progress. (Rest)
|
|
359
|
+
default: .http_partial
|
|
360
|
+
retry_on_error:
|
|
361
|
+
type: boolean
|
|
362
|
+
description: Retry the request on any HTTP error response. (Rest)
|
|
363
|
+
default: false
|
|
364
|
+
retry_on_timeout:
|
|
365
|
+
type: boolean
|
|
366
|
+
description: Retry the request on connection timeout. (Rest)
|
|
367
|
+
default: true
|
|
368
|
+
retry_on_unavailable:
|
|
369
|
+
type: boolean
|
|
370
|
+
description: Retry the request on HTTP 503 Service Unavailable. (Rest)
|
|
371
|
+
default: true
|
|
372
|
+
retry_max:
|
|
373
|
+
type: integer
|
|
374
|
+
description: Maximum number of retry attempts. (Rest)
|
|
375
|
+
default: 1
|
|
376
|
+
retry_sleep:
|
|
377
|
+
type: integer
|
|
378
|
+
description: Delay in seconds between retry attempts. (Rest)
|
|
379
|
+
default: 4
|
|
380
|
+
token_cache_max_age:
|
|
381
|
+
type: integer
|
|
382
|
+
description: Maximum age in seconds of a cached OAuth token before it is discarded. (OAuth)
|
|
383
|
+
default: 1800
|
|
384
|
+
token_refresh_threshold:
|
|
385
|
+
type: integer
|
|
386
|
+
description: Remaining token lifetime in seconds below which the token is proactively refreshed. (OAuth)
|
|
387
|
+
default: 120
|
|
388
|
+
VaultHashicorpOptions:
|
|
389
|
+
type: object
|
|
390
|
+
description: IBM HashiCorp Vault secret store.
|
|
391
|
+
required:
|
|
392
|
+
- type
|
|
393
|
+
- url
|
|
394
|
+
properties:
|
|
395
|
+
type:
|
|
396
|
+
type: string
|
|
397
|
+
description: Vault type selector.
|
|
398
|
+
enum: [vault]
|
|
399
|
+
url:
|
|
400
|
+
type: string
|
|
401
|
+
description: URL of the HashiCorp Vault server.
|
|
402
|
+
example: "http://127.0.0.1:8200"
|
|
403
|
+
token:
|
|
404
|
+
type: string
|
|
405
|
+
description: Authentication token. Defaults to the value of `vault_password`.
|
|
406
|
+
example: dev-only-token
|
|
407
|
+
VaultSystemOptions:
|
|
408
|
+
type: object
|
|
409
|
+
description: macOS system keychain secret store.
|
|
410
|
+
required:
|
|
411
|
+
- type
|
|
412
|
+
properties:
|
|
413
|
+
type:
|
|
414
|
+
type: string
|
|
415
|
+
description: Vault type selector.
|
|
416
|
+
enum: [system]
|
|
417
|
+
name:
|
|
418
|
+
type: string
|
|
419
|
+
description: Name of the keychain to use.
|
|
420
|
+
VaultOnePasswordOptions:
|
|
421
|
+
type: object
|
|
422
|
+
description: 1Password secret store (Connect REST API or CLI).
|
|
423
|
+
required:
|
|
424
|
+
- type
|
|
425
|
+
- source
|
|
426
|
+
properties:
|
|
427
|
+
type:
|
|
428
|
+
type: string
|
|
429
|
+
description: Vault type selector.
|
|
430
|
+
enum: [1password]
|
|
431
|
+
source:
|
|
432
|
+
type: string
|
|
433
|
+
description: Backend source. Use `api` for the Connect REST API, `cli` for the `op` CLI.
|
|
434
|
+
enum: [api, cli]
|
|
435
|
+
default: api
|
|
436
|
+
url:
|
|
437
|
+
type: string
|
|
438
|
+
description: Base URL of the 1Password Connect server (required when `source` is `api`).
|
|
439
|
+
example: "http://localhost:8080"
|
|
440
|
+
vault_id:
|
|
441
|
+
type: string
|
|
442
|
+
description: ID of the 1Password vault to use (required when `source` is `api`).
|
|
443
|
+
token:
|
|
444
|
+
type: string
|
|
445
|
+
description: Bearer token for the Connect API (required when `source` is `api`). Defaults to the value of `vault_password`.
|
|
446
|
+
vault:
|
|
447
|
+
type: string
|
|
448
|
+
description: Name or ID of the 1Password vault to use with the CLI (used when `source` is `cli`). Uses the default vault if omitted.
|
|
449
|
+
account:
|
|
450
|
+
type: string
|
|
451
|
+
description: Account shorthand for `op` (used when `source` is `cli`). Uses the default account if omitted.
|
|
452
|
+
VaultFileOptions:
|
|
453
|
+
type: object
|
|
454
|
+
description: Encrypted file secret store.
|
|
455
|
+
required:
|
|
456
|
+
- type
|
|
457
|
+
properties:
|
|
458
|
+
type:
|
|
459
|
+
type: string
|
|
460
|
+
description: Vault type selector.
|
|
461
|
+
enum: [file]
|
|
462
|
+
name:
|
|
463
|
+
type: string
|
|
464
|
+
description: >-
|
|
465
|
+
Path to the encrypted vault file.
|
|
466
|
+
Relative paths are resolved from the configuration folder.
|
|
467
|
+
default: vault.bin
|
|
468
|
+
VaultSecret:
|
|
469
|
+
type: object
|
|
470
|
+
description: Secret entry in the vault
|
|
471
|
+
required:
|
|
472
|
+
- label
|
|
473
|
+
properties:
|
|
474
|
+
label:
|
|
475
|
+
type: string
|
|
476
|
+
description: Unique identifier for this secret entry
|
|
477
|
+
username:
|
|
478
|
+
type: string
|
|
479
|
+
description: Username associated with the secret
|
|
480
|
+
password:
|
|
481
|
+
type: string
|
|
482
|
+
description: Secret value
|
|
483
|
+
url:
|
|
484
|
+
type: string
|
|
485
|
+
description: URL associated with the secret
|
|
486
|
+
description:
|
|
487
|
+
type: string
|
|
488
|
+
description: Human-readable description of this secret
|
|
489
|
+
VaultOptions:
|
|
490
|
+
title: Secret vault configuration
|
|
491
|
+
description: Secret vault configuration. Set `type` to select the vault backend.
|
|
492
|
+
oneOf:
|
|
493
|
+
- $ref: "#/components/schemas/VaultHashicorpOptions"
|
|
494
|
+
- $ref: "#/components/schemas/VaultSystemOptions"
|
|
495
|
+
- $ref: "#/components/schemas/VaultFileOptions"
|
|
496
|
+
- $ref: "#/components/schemas/VaultOnePasswordOptions"
|
|
497
|
+
discriminator:
|
|
498
|
+
propertyName: type
|
|
499
|
+
mapping:
|
|
500
|
+
vault: "#/components/schemas/VaultHashicorpOptions"
|
|
501
|
+
system: "#/components/schemas/VaultSystemOptions"
|
|
502
|
+
file: "#/components/schemas/VaultFileOptions"
|
|
503
|
+
1password: "#/components/schemas/VaultOnePasswordOptions"
|
|
504
|
+
ImageOptions:
|
|
505
|
+
type: object
|
|
506
|
+
description: Options for displaying images and thumbnails in the terminal.
|
|
507
|
+
properties:
|
|
508
|
+
reserve:
|
|
509
|
+
type: integer
|
|
510
|
+
description: Number of terminal lines reserved for non-image output.
|
|
511
|
+
default: 3
|
|
512
|
+
text:
|
|
513
|
+
type: boolean
|
|
514
|
+
description: Display the image as colorized text instead of using the iTerm2 inline protocol.
|
|
515
|
+
default: false
|
|
516
|
+
double:
|
|
517
|
+
type: boolean
|
|
518
|
+
description: Use double vertical resolution via half-block characters.
|
|
519
|
+
default: true
|
|
520
|
+
font_ratio:
|
|
521
|
+
type: number
|
|
522
|
+
format: float
|
|
523
|
+
description: Terminal font aspect ratio (height divided by width).
|
|
524
|
+
default: 2.3
|
|
525
|
+
PackageFolderOptions:
|
|
526
|
+
type: object
|
|
527
|
+
title: Package download folder organization
|
|
528
|
+
description: >-
|
|
529
|
+
Controls how downloaded packages are organized into subfolders under `to_folder`.
|
|
530
|
+
If not specified or empty, packages are downloaded directly into `to_folder`.
|
|
531
|
+
properties:
|
|
532
|
+
fld:
|
|
533
|
+
type: array
|
|
534
|
+
description: >-
|
|
535
|
+
List of package fields (up to 2) used to build the subfolder name.
|
|
536
|
+
Field values are joined with `.`.
|
|
537
|
+
items:
|
|
538
|
+
type: string
|
|
539
|
+
maxItems: 2
|
|
540
|
+
example: ["name", "id"]
|
|
541
|
+
seq:
|
|
542
|
+
type: boolean
|
|
543
|
+
description: >-
|
|
544
|
+
If `true`, appends an incrementing number to the folder name when a conflict occurs.
|
|
545
|
+
default: false
|
|
546
|
+
opt:
|
|
547
|
+
type: boolean
|
|
548
|
+
description: >-
|
|
549
|
+
If `false` (default), all fields in `fld` are always used.
|
|
550
|
+
If `true`, the first field is used unless the folder already exists.
|
|
551
|
+
default: false
|
|
552
|
+
inf:
|
|
553
|
+
type: boolean
|
|
554
|
+
description: >-
|
|
555
|
+
If `true`, creates a `<ID>.info.json` sidecar file inside the folder
|
|
556
|
+
containing package metadata.
|
|
557
|
+
default: false
|
|
558
|
+
NodeBearerTokenOptions:
|
|
559
|
+
type: object
|
|
560
|
+
description: >-
|
|
561
|
+
JWT payload used to generate an Aspera Node bearer token (`node bearer_token`).
|
|
562
|
+
`user_id` is the only mandatory field.
|
|
563
|
+
The CLI strips the `_validity` and `_scope` convenience keys before signing;
|
|
564
|
+
remaining fields are embedded verbatim in the token.
|
|
565
|
+
required:
|
|
566
|
+
- user_id
|
|
567
|
+
properties:
|
|
568
|
+
user_id:
|
|
569
|
+
type: string
|
|
570
|
+
description: Identifier of the user for whom the token is generated.
|
|
571
|
+
example: jdoe
|
|
572
|
+
_validity:
|
|
573
|
+
type: integer
|
|
574
|
+
description: Token lifetime in seconds (convenience key, removed before signing).
|
|
575
|
+
default: 86400
|
|
576
|
+
_scope:
|
|
577
|
+
type: string
|
|
578
|
+
description: >-
|
|
579
|
+
Scope shorthand used to build the `scope` field (convenience key, removed before signing).
|
|
580
|
+
Maps to `node.<access_key>:<scope>`.
|
|
581
|
+
enum: [user, admin]
|
|
582
|
+
default: user
|
|
583
|
+
scope:
|
|
584
|
+
type: string
|
|
585
|
+
description: >-
|
|
586
|
+
Full scope string. Computed automatically from `_scope` when absent.
|
|
587
|
+
Example: `node::ik-00000000-0000-0000-0000-000000000000:user`.
|
|
588
|
+
auth_type:
|
|
589
|
+
type: string
|
|
590
|
+
description: Authentication type embedded in the token.
|
|
591
|
+
default: access_key
|
|
592
|
+
expires_at:
|
|
593
|
+
type: string
|
|
594
|
+
description: >-
|
|
595
|
+
Token expiry timestamp in ISO 8601 format (`YYYY-MM-DDTHH:MM:SSZ`).
|
|
596
|
+
Computed automatically from `_validity` when absent.
|
|
597
|
+
example: "2030-01-01T00:00:00Z"
|
|
598
|
+
NodeSimulatorOptions:
|
|
599
|
+
type: object
|
|
600
|
+
description: >-
|
|
601
|
+
Configuration for the embedded Node API simulator (`node simulator`).
|
|
602
|
+
The simulator starts a local WEBrick server that answers `/ops/transfers`,
|
|
603
|
+
`/ops/transfers/{id}`, `/files/browse`, and `/info` — sufficient to test
|
|
604
|
+
CLI commands against a live Node API without a real HSTS instance.
|
|
605
|
+
properties:
|
|
606
|
+
url:
|
|
607
|
+
type: string
|
|
608
|
+
description: >-
|
|
609
|
+
Address and port the simulator listens on.
|
|
610
|
+
Use `https://` with `cert`/`key` for TLS.
|
|
611
|
+
default: http://localhost:8080
|
|
612
|
+
cert:
|
|
613
|
+
type: string
|
|
614
|
+
description: >-
|
|
615
|
+
Path to the TLS certificate file.
|
|
616
|
+
Accepted formats: PEM (`.pem`) or PKCS12 (`.p12` / `.pfx`).
|
|
617
|
+
example: /path/to/cert.pem
|
|
618
|
+
key:
|
|
619
|
+
type: string
|
|
620
|
+
description: >-
|
|
621
|
+
Path to the PEM private key file, or the PKCS12 passphrase when `cert` is a `.p12`/`.pfx` file.
|
|
622
|
+
example: /path/to/key.pem
|
|
623
|
+
chain:
|
|
624
|
+
type: string
|
|
625
|
+
description: Path to the PEM certificate chain file (appended as extra chain certificates).
|
|
626
|
+
example: /path/to/chain.pem
|
|
627
|
+
browse_root:
|
|
628
|
+
type: string
|
|
629
|
+
description: >-
|
|
630
|
+
Root directory the simulator is allowed to expose via `/files/browse`.
|
|
631
|
+
Requests for paths outside this directory are rejected.
|
|
632
|
+
Defaults to the current working directory.
|
|
633
|
+
example: /data/aspera
|
|
634
|
+
NodeTelemetryOptions:
|
|
635
|
+
type: object
|
|
636
|
+
description: >-
|
|
637
|
+
Configuration for the telemetry reporter (`node telemetry`).
|
|
638
|
+
The command periodically queries `ops/transfers?active_only=true` and sends
|
|
639
|
+
an OpenTelemetry gauge metric to an Instana backend.
|
|
640
|
+
required:
|
|
641
|
+
- url
|
|
642
|
+
- key
|
|
643
|
+
properties:
|
|
644
|
+
url:
|
|
645
|
+
type: string
|
|
646
|
+
description: Base URL of the Instana backend (without `/v1`).
|
|
647
|
+
example: https://my-instana.example.com
|
|
648
|
+
key:
|
|
649
|
+
type: string
|
|
650
|
+
description: Instana API key sent in the `x-instana-key` header.
|
|
651
|
+
example: my-instana-api-key
|
|
652
|
+
interval:
|
|
653
|
+
type: number
|
|
654
|
+
format: float
|
|
655
|
+
description: >-
|
|
656
|
+
Polling interval in seconds. Use `0` for a single-shot run (no loop).
|
|
657
|
+
default: 10
|
|
658
|
+
hostname:
|
|
659
|
+
type: string
|
|
660
|
+
description: >-
|
|
661
|
+
Value sent in the `x-instana-host` header.
|
|
662
|
+
Defaults to the local machine's hostname.
|
|
663
|
+
example: hsts-prod-01
|
|
664
|
+
TableOptions:
|
|
665
|
+
type: object
|
|
666
|
+
description: Terminal table rendering options.
|
|
667
|
+
properties:
|
|
668
|
+
pivot:
|
|
669
|
+
type: string
|
|
670
|
+
description: Control how an object list is displayed (no/yes/single).
|
|
671
|
+
enum: ['no', 'yes', 'single']
|
|
672
|
+
default: 'no'
|
|
673
|
+
OutOptions:
|
|
674
|
+
type: object
|
|
675
|
+
description: Output rendering options (dot-notation sub-properties).
|
|
676
|
+
properties:
|
|
677
|
+
format:
|
|
678
|
+
type: string
|
|
679
|
+
description: Output format.
|
|
680
|
+
enum: [text, nagios, ruby, json, jsonpp, yaml, table, csv, image]
|
|
681
|
+
default: table
|
|
682
|
+
level:
|
|
683
|
+
type: string
|
|
684
|
+
description: Output verbosity level (which information to display).
|
|
685
|
+
enum: [info, data, error]
|
|
686
|
+
default: data
|
|
687
|
+
file:
|
|
688
|
+
type: string
|
|
689
|
+
description: Destination file for results (use `-` for stdout).
|
|
690
|
+
fields:
|
|
691
|
+
description: >-
|
|
692
|
+
Comma-separated list of fields to display, or a special value:
|
|
693
|
+
`ALL` for all fields, `DEF` for default fields.
|
|
694
|
+
Prefix a field name with `-` to exclude it.
|
|
695
|
+
select:
|
|
696
|
+
type: object
|
|
697
|
+
description: Select only matching items from a list (field/value filter or lambda).
|
|
698
|
+
table:
|
|
699
|
+
$ref: "#/components/schemas/TableOptions"
|
|
700
|
+
flat:
|
|
701
|
+
type: boolean
|
|
702
|
+
description: Display deep hash values as additional top-level keys.
|
|
703
|
+
default: true
|
|
704
|
+
secrets:
|
|
705
|
+
type: boolean
|
|
706
|
+
description: Show secrets in command output.
|
|
707
|
+
default: false
|
|
708
|
+
img:
|
|
709
|
+
$ref: "#/components/schemas/ImageOptions"
|