This commit is contained in:
Frank Harris 2026-07-02 18:11:32 -05:00
parent a49371c3dd
commit 251af10faf
1190 changed files with 12636 additions and 12476 deletions

View file

@ -4,7 +4,7 @@ Workspace reference: [`GSP-WORKSPACE.md`](../../../GSP-WORKSPACE.md)
## Role
`Agent_Linux/ogp_agent.pl` is the Linux execution agent for GSP. It is responsible for:
`Agent_Linux/gsp_agent.pl` is the Linux execution agent for GSP. It is responsible for:
- starting and stopping game servers
- managing `screen` sessions
@ -15,7 +15,7 @@ Workspace reference: [`GSP-WORKSPACE.md`](../../../GSP-WORKSPACE.md)
## Important Files
- `Agent_Linux/ogp_agent.pl`
- `Agent_Linux/gsp_agent.pl`
- `Agent_Linux/startups/`
- `Agent_Linux/includes/`
- `Agent_Linux/php-query/`
@ -28,12 +28,12 @@ Workspace reference: [`GSP-WORKSPACE.md`](../../../GSP-WORKSPACE.md)
The Linux agent creates a managed `screen` session per server.
Key flow in `ogp_agent.pl`:
Key flow in `gsp_agent.pl`:
- `universal_start_without_decrypt`
- `create_screen_cmd`
- `create_screen_cmd_loop`
- `replace_OGP_Env_Vars`
- `replace_GSP_Env_Vars`
The agent builds the startup command from:
@ -43,10 +43,10 @@ The agent builds the startup command from:
- control password
- path variables
The session name follows the OGP naming convention, for example:
The session name follows the GSP naming convention, for example:
```text
OGP_HOME_000000123
GSP_HOME_000000123
```
## Status Logic
@ -100,7 +100,7 @@ For legacy `steam_workshop` RPC installs:
## Scheduler
Linux scheduler functions live in `ogp_agent.pl`:
Linux scheduler functions live in `gsp_agent.pl`:
- `scheduler_dispatcher`
- `scheduler_server_action`
@ -138,8 +138,8 @@ Flow:
5. The script clones the configured branch into staging.
6. It copies only the configured Linux agent source folder, usually `Agent_Linux`.
7. It preserves `Cfg/`, `ServerFiles/`, `Schedule/`, logs, screen logs, `steamcmd/`, `startups/`, temporary folders, backups, and PID files.
8. It validates the updated `ogp_agent.pl` with `perl -c`.
9. It restarts `ogp_agent.service` through `systemd` if available, otherwise uses the existing `screen` startup fallback.
8. It validates the updated `gsp_agent.pl` with `perl -c`.
9. It restarts `gsp_agent.service` through `systemd` if available, otherwise uses the existing `screen` startup fallback.
The agent returns `queued` immediately with the log path `gsp_component_update.log`. A queued response means the updater launched; check the log for final success/failure.