Add SCUM file management workbench
This commit is contained in:
@@ -19,9 +19,9 @@ A server instance is created from one installed game management plugin and bound
|
||||
|
||||
### States
|
||||
|
||||
- `draft`: instance record exists but install job has not completed.
|
||||
- `installing`: run install job is active.
|
||||
- `ready`: install succeeded and the server can start.
|
||||
- `draft`: instance record exists but the first bootstrap job has not completed.
|
||||
- `installing`: the first plugin-owned bootstrap job is active.
|
||||
- `ready`: install/bootstrap succeeded without starting a supervised process, and the server can start.
|
||||
- `running`: server process is running.
|
||||
- `stopped`: server process is stopped.
|
||||
- `failed`: last lifecycle operation failed.
|
||||
@@ -36,7 +36,7 @@ A server instance is created from one installed game management plugin and bound
|
||||
|
||||
## Lifecycle Actions
|
||||
|
||||
- `create`: validate plugin, create instance record, dispatch install job.
|
||||
- `create`: validate plugin, create instance record, dispatch the plugin-owned bootstrap job.
|
||||
- `start`: dispatch process start job through the bound run endpoint.
|
||||
- `stop`: dispatch process stop job through the bound run endpoint.
|
||||
- `restart`: dispatch stop/start or plugin-defined restart job.
|
||||
@@ -48,7 +48,7 @@ A server instance is created from one installed game management plugin and bound
|
||||
- `GET /api/v1/plugin-marketplace/plugins` lists plugin marketplace summaries from registry metadata with status, server type, capability, and keyword filters.
|
||||
- `GET /api/v1/plugin-marketplace/plugins/{id}` returns one registry-backed marketplace detail.
|
||||
- `POST /api/v1/plugin-marketplace/plugins/{id}/state` applies metadata-only `install`, `enable`, or `disable` state changes.
|
||||
- `POST /api/v1/server-instances/workflows/create` validates an installed plugin, a compatible run endpoint, a non-empty idempotency key, and required lifecycle action references. It creates the instance in `installing` state and queues a `process.install` job.
|
||||
- `POST /api/v1/server-instances/workflows/create` validates an installed plugin, a compatible run endpoint, a non-empty idempotency key, and required lifecycle action references. It creates the instance in `installing` state and queues either `process.install` or, for guided deployments whose selected lifecycle profile supports supervised start, `process.start` so the plugin start script can install-if-missing and stream process logs.
|
||||
- `POST /api/v1/server-instances/{id}/start` validates the instance is `ready` or `stopped`, checks the expected config version, verifies the plugin start action and run endpoint `process.start` capability, and queues a start job.
|
||||
- `POST /api/v1/server-instances/{id}/stop` validates the instance is `running`, checks the expected config version, verifies the plugin stop action and run endpoint `process.stop` capability, and queues a stop job.
|
||||
- `GET /api/v1/server-instances/{id}/config` returns logical read-only config content for an authorized server instance with config version, format, key, source, and update timestamp metadata.
|
||||
|
||||
Reference in New Issue
Block a user