dev.avyos.distro

api/distro/api.json

Distribution image management API with pull/run/shell lifecycle operations.

Service

FieldValue
Namedev.avyos.distro
Packagedistro
Service ID0x00000070

Distribution image management API with pull/run/shell lifecycle operations.

Types

Empty

Empty payload used for requests and responses without data.

No fields.

ListRequest

Filter for listing available and installed distros.

FieldTypeDescription
Available bool -

DistroInfo

Metadata for one distro image.

FieldTypeDescription
Name string -
URL string -
Version string -
Path string -
Size int -

DistroList

Collection of distro metadata entries.

FieldTypeDescription
Items []DistroInfo -

PullRequest

Payload for pulling a distro image by name and source URL.

FieldTypeDescription
Name string -
URL string -

RunRequest

Execution payload for running a command inside a distro context.

FieldTypeDescription
Distro string -
Command string -
Workdir string -
Bind string -
Env string -
Input []byte -

RunResult

Execution output for a distro command run.

FieldTypeDescription
Stdout []byte -
Stderr []byte -
ExitCode int -

RemoveRequest

Payload for removing an installed distro image.

FieldTypeDescription
Name string -

ShellOpenRequest

Payload to open an interactive shell session in a distro.

FieldTypeDescription
Distro string -
Workdir string -
Bind string -
Env string -
Rows int -
Cols int -

ShellSession

Shell session identifier assigned by the service.

FieldTypeDescription
SessionID uint32 -

ShellInputRequest

Input payload for an open shell session.

FieldTypeDescription
SessionID uint32 -
Data []byte -

ShellResizeRequest

Resize payload for a shell pseudo-terminal.

FieldTypeDescription
SessionID uint32 -
Rows int -
Cols int -

ShellCloseRequest

Request to close an active shell session.

FieldTypeDescription
SessionID uint32 -

ShellOutputEvent

Streamed terminal output for an active shell session.

FieldTypeDescription
SessionID uint32 -
Data []byte -

ShellExitEvent

Exit notification for a shell session.

FieldTypeDescription
SessionID uint32 -
ExitCode int -

Requests

List

0x0201

List installed or available distro images.

Input

Type: ListRequest

Set Available=true to query remote/available entries.

Output

Type: DistroList

Returns distro metadata list.

Pull

0x0202

Pull and install a distro image.

Input

Type: PullRequest

Contains distro name and optional source URL.

Output

Type: Empty

No payload is returned.

Run

0x0203

Run a non-interactive command in a distro environment.

Input

Type: RunRequest

Command plus execution environment options.

Output

Type: RunResult

Returns stdout, stderr, and exit code.

Remove

0x0204

Remove an installed distro image.

Input

Type: RemoveRequest

Contains distro name to remove.

Output

Type: Empty

No payload is returned.

ShellOpen

0x0205

Open an interactive shell session inside a distro.

Input

Type: ShellOpenRequest

Initial shell context and terminal size.

Output

Type: ShellSession

Returns the created shell session id.

ShellInput

0x0206

Send user input to an active shell session.

Input

Type: ShellInputRequest

Session id plus input bytes.

Output

Type: none (one-way)

No response payload for one-way request.

ShellResize

0x0207

Resize the pseudo-terminal for an active shell session.

Input

Type: ShellResizeRequest

Session id and new row/column dimensions.

Output

Type: none (one-way)

No response payload for one-way request.

ShellClose

0x0208

Close an active shell session.

Input

Type: ShellCloseRequest

Session id to terminate.

Output

Type: none (one-way)

No response payload for one-way request.

Events

ShellOutput

0x0301

Published when shell output data is available.

Payload

Type: ShellOutputEvent

Contains session id and output bytes.

ShellExit

0x0302

Published when a shell session exits.

Payload

Type: ShellExitEvent

Contains session id and exit code.