steam workshotp

This commit is contained in:
Frank Harris 2026-06-06 12:50:14 -05:00
parent d8c66c4c49
commit e921a49d5b
14 changed files with 285 additions and 26 deletions

View file

@ -59,6 +59,13 @@ The admin template defines capability and policy. The customer supplies only Wor
- `bash <script> <manifest>`
7. The script runs SteamCMD, copies downloaded content into the target mod folder, logs output, and copies `.bikey` files for DayZ/Arma-style strategies.
Current repair:
- The default script filename is no longer treated as an agent-host path.
- Missing custom scripts fall back to the bundled generic handler and log a warning.
- Generic installs default to `{SERVER_ROOT}/workshop/{MOD_FOLDER}`.
- DayZ/Arma installs keep `{SERVER_ROOT}/{MOD_FOLDER}` for `@<workshop_id>` compatibility.
## Manifest Fields
Phase 1 manifests include:
@ -95,6 +102,11 @@ Default install folder:
- `@<workshop_id>`
Arma 3 game XML now declares:
- Workshop app ID: `107410`
- Dedicated server app ID: `233780` through the existing `installer_name`
Key-copy behavior:
- `.bikey` files found anywhere in the installed mod folder are copied to `{SERVER_HOME}/keys`.
@ -149,10 +161,16 @@ Phase 2 should generate structured mod lists from enabled `server_content_worksh
- full Steam URL accepted
- invalid text rejected
- Temporary manifest test with fake SteamCMD confirmed:
- Linux script installs into `@<workshop_id>`
- Windows/Cygwin script installs into `@<workshop_id>`
- Linux script installs generic content into `workshop/@<workshop_id>`
- Windows/Cygwin script installs generic content into `workshop/@<workshop_id>`
- Arma/DayZ strategies resolve to root `@<workshop_id>` folders
- `.bikey` files are copied to `keys`
- useful logs are written under `gsp_server_content`
- Current smoke tests also confirm:
- default Linux/Windows script staging no longer reports `script not found`
- full URLs, numeric IDs, whitespace, comma, newline, duplicates, and invalid values parse correctly
- generic no-template installs use `server_root/workshop`
- missing SteamCMD returns a clear failure
## Phase 2 Work