mirror of
https://github.com/cirruslabs/orchard.git
synced 2026-09-30 12:01:15 +02:00
/exec API: drop session reconnection support (#487)
This commit is contained in:
+3
-118
@@ -451,33 +451,11 @@ paths:
|
||||
parameters:
|
||||
- in: query
|
||||
name: command
|
||||
description: |
|
||||
Command to execute.
|
||||
|
||||
Required when starting a new exec session. May be omitted when reconnecting to an
|
||||
existing session identified by the `session` parameter.
|
||||
description: Command to execute.
|
||||
schema:
|
||||
type: string
|
||||
minLength: 1
|
||||
required: false
|
||||
- in: query
|
||||
name: session
|
||||
description: |
|
||||
Optional stable exec session identifier. When present, websocket disconnects detach
|
||||
from the command instead of terminating it, and later requests with the same VM name
|
||||
and session id may reconnect and request buffered history.
|
||||
schema:
|
||||
type: string
|
||||
minLength: 1
|
||||
required: false
|
||||
- in: query
|
||||
name: cmux_session_id
|
||||
description: |
|
||||
Compatibility alias for `session`. Prefer `session` for new Orchard clients.
|
||||
schema:
|
||||
type: string
|
||||
minLength: 1
|
||||
required: false
|
||||
required: true
|
||||
- in: query
|
||||
name: interactive
|
||||
description: |
|
||||
@@ -580,9 +558,7 @@ paths:
|
||||
'400':
|
||||
description: Invalid parameters were supplied
|
||||
'404':
|
||||
description: VM resource with the given name or reconnectable exec session doesn't exist
|
||||
'409':
|
||||
description: Reconnectable exec session already exists with different options
|
||||
description: VM resource with the given name doesn't exist
|
||||
'503':
|
||||
description: Controller failed to establish a connection with the VM
|
||||
/vms/{name}/ip:
|
||||
@@ -1083,19 +1059,11 @@ components:
|
||||
oneOf:
|
||||
- $ref: '#/components/schemas/ExecClientFrameStdin'
|
||||
- $ref: '#/components/schemas/ExecClientFrameResize'
|
||||
- $ref: '#/components/schemas/ExecClientFrameHistory'
|
||||
- $ref: '#/components/schemas/ExecClientFrameAck'
|
||||
- $ref: '#/components/schemas/ExecClientFrameDetach'
|
||||
- $ref: '#/components/schemas/ExecClientFrameClose'
|
||||
discriminator:
|
||||
propertyName: type
|
||||
mapping:
|
||||
stdin: '#/components/schemas/ExecClientFrameStdin'
|
||||
resize: '#/components/schemas/ExecClientFrameResize'
|
||||
history: '#/components/schemas/ExecClientFrameHistory'
|
||||
ack: '#/components/schemas/ExecClientFrameAck'
|
||||
detach: '#/components/schemas/ExecClientFrameDetach'
|
||||
close: '#/components/schemas/ExecClientFrameClose'
|
||||
ExecClientFrameStdin:
|
||||
description: Send bytes to the process standard input
|
||||
type: object
|
||||
@@ -1129,56 +1097,6 @@ components:
|
||||
terminal:
|
||||
rows: 40
|
||||
cols: 120
|
||||
ExecClientFrameHistory:
|
||||
description: Request buffered output strictly newer than the supplied watermark
|
||||
type: object
|
||||
required: [ type, watermark ]
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum: [ history ]
|
||||
watermark:
|
||||
type: integer
|
||||
format: int64
|
||||
minimum: 0
|
||||
example:
|
||||
type: history
|
||||
watermark: 42
|
||||
ExecClientFrameAck:
|
||||
description: Acknowledge that output has been durably consumed through the supplied watermark
|
||||
type: object
|
||||
required: [ type, watermark ]
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum: [ ack ]
|
||||
watermark:
|
||||
type: integer
|
||||
format: int64
|
||||
minimum: 0
|
||||
example:
|
||||
type: ack
|
||||
watermark: 42
|
||||
ExecClientFrameDetach:
|
||||
description: Detach this websocket while leaving the remote command running
|
||||
type: object
|
||||
required: [ type ]
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum: [ detach ]
|
||||
example:
|
||||
type: detach
|
||||
ExecClientFrameClose:
|
||||
description: Close the reconnectable exec session and terminate the remote command
|
||||
type: object
|
||||
required: [ type ]
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum: [ close ]
|
||||
example:
|
||||
type: close
|
||||
ExecControllerFrame:
|
||||
description: WebSocket frame from Orchard Controller to the Orchard Client
|
||||
oneOf:
|
||||
@@ -1186,7 +1104,6 @@ components:
|
||||
- $ref: '#/components/schemas/ExecControllerFrameStderr'
|
||||
- $ref: '#/components/schemas/ExecControllerFrameExit'
|
||||
- $ref: '#/components/schemas/ExecControllerFrameError'
|
||||
- $ref: '#/components/schemas/ExecControllerFrameNoMoreHistory'
|
||||
discriminator:
|
||||
propertyName: type
|
||||
mapping:
|
||||
@@ -1194,7 +1111,6 @@ components:
|
||||
stderr: '#/components/schemas/ExecControllerFrameStderr'
|
||||
exit: '#/components/schemas/ExecControllerFrameExit'
|
||||
error: '#/components/schemas/ExecControllerFrameError'
|
||||
no_more_history: '#/components/schemas/ExecControllerFrameNoMoreHistory'
|
||||
ExecControllerFrameStdout:
|
||||
description: Standard output from the process
|
||||
type: object
|
||||
@@ -1207,10 +1123,6 @@ components:
|
||||
type: string
|
||||
format: byte
|
||||
description: Base64-encoded standard output bytes from the process
|
||||
watermark:
|
||||
type: integer
|
||||
format: int64
|
||||
description: Monotonic output watermark present on reconnectable sessions
|
||||
example:
|
||||
type: stdout
|
||||
data: aGVsbG8K
|
||||
@@ -1226,10 +1138,6 @@ components:
|
||||
type: string
|
||||
format: byte
|
||||
description: Base64-encoded standard error bytes from the process
|
||||
watermark:
|
||||
type: integer
|
||||
format: int64
|
||||
description: Monotonic output watermark present on reconnectable sessions
|
||||
example:
|
||||
type: stderr
|
||||
data: aGVsbG8K
|
||||
@@ -1249,10 +1157,6 @@ components:
|
||||
type: integer
|
||||
format: int32
|
||||
description: Process exit code
|
||||
watermark:
|
||||
type: integer
|
||||
format: int64
|
||||
description: Monotonic output watermark present on reconnectable sessions
|
||||
example:
|
||||
type: exit
|
||||
exit:
|
||||
@@ -1268,28 +1172,9 @@ components:
|
||||
error:
|
||||
type: string
|
||||
description: Error message text
|
||||
watermark:
|
||||
type: integer
|
||||
format: int64
|
||||
description: Monotonic output watermark present on reconnectable sessions
|
||||
example:
|
||||
type: error
|
||||
error: Failed to establish SSH connection to a VM
|
||||
ExecControllerFrameNoMoreHistory:
|
||||
description: Marker indicating that the requested replay range has been fully sent
|
||||
type: object
|
||||
required: [ type, watermark ]
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enum: [ no_more_history ]
|
||||
watermark:
|
||||
type: integer
|
||||
format: int64
|
||||
description: Highest watermark known to the exec session at the time of replay
|
||||
example:
|
||||
type: no_more_history
|
||||
watermark: 42
|
||||
ExecTerminalSize:
|
||||
description: Pseudo-terminal size
|
||||
type: object
|
||||
|
||||
Reference in New Issue
Block a user