redo of steam workshop

This commit is contained in:
Frank Harris 2026-06-06 18:18:40 -05:00
parent e662415f36
commit e6541370b9
19 changed files with 610 additions and 38 deletions

View file

@ -60,7 +60,7 @@ Primary categories:
| updates | `steam_cmd`, `component_update`, `stop_update` |
| system | `exec`, `sudo_exec`, `rebootnow`, `what_os`, `discover_ips`, `mon_stats` |
| scheduler | `scheduler_add_task`, `scheduler_edit_task`, `scheduler_del_task`, `scheduler_list_tasks` |
| content | `steam_workshop`, `get_workshop_mods_info` |
| content | `writefile` + `exec` manifest/script orchestration; legacy `steam_workshop`, `get_workshop_mods_info` |
See the full command table in:
@ -82,7 +82,7 @@ Most Panel modules do not build XML-RPC directly. They call `OGPRemoteLibrary`.
| `remote_query()` | `remote_query` | `gamemanager`, dashboards |
| `component_update()` | `component_update` | update/admin pages |
| `scheduler_*()` | `scheduler_*` | `cron` |
| `steam_workshop()` | `steam_workshop` | legacy workshop path |
| `steam_workshop()` | `steam_workshop` | legacy workshop path only |
## External Panel API
@ -207,7 +207,25 @@ Common manifest fields:
- `items`
- `options`
For Workshop-specific manifests, the broader fields documented in `WORKSHOP_SYSTEM.md` also apply, including app IDs, install strategy, and target paths.
For Workshop-specific manifests, the broader fields documented in `WORKSHOP_SYSTEM.md` also apply, including app IDs, install strategy, update policy, pending action, and target paths.
Current Workshop actions:
- `install`
- `update`
- `check_updates`
- `download_only`
- `validate_files`
- `remove`
Current Scheduler/API action aliases:
- `workshop_update`
- `workshop_update_and_restart`
- `workshop_download_only`
- `workshop_install_pending_on_restart`
The legacy `steam_workshop/install` API route and agent `steam_workshop` RPC remain compatibility-only. New user-facing Workshop work should use `addonsmanager` / Server Content Manager.
## Status Contract

View file

@ -103,7 +103,9 @@ Current preferred implementation path:
- `addonsmanager` stages a manifest and helper script through `writefile`
- it executes the helper through `exec`
- it records per-server items and policies in Panel database tables
- it uses `steam_workshop` only as legacy compatibility, not as the primary workflow
- no new Workshop-specific business logic should be added to agents for the current design
## Shell And System Commands
@ -172,6 +174,10 @@ The built-in action names handled by the Panel-generated API URLs are:
- `server_content_update_all`
- `server_content_validate_files`
- `server_content_backup_before_update`
- `workshop_update`
- `workshop_update_and_restart`
- `workshop_download_only`
- `workshop_install_pending_on_restart`
## Panel Wrapper Map