Skip to content

Releases: gameap/daemon

v4.0.6

17 May 20:27
f5971f8

Choose a tag to compare

What's Changed

  • Use os.Root for file operations by @et-nik in #4

Full Changelog: v4.0.5...v4.0.6

v4.0.5

16 May 20:01

Choose a tag to compare

Add steamcmd-path for enroll command.

Full Changelog: v4.0.4...v4.0.5

v4.0.4

16 May 17:10
ff923eb

Choose a tag to compare

What's Changed

  • steamcmd Linux installation fixes by @et-nik in #3

Full Changelog: v4.0.3...v4.0.4

v4.0.3

14 May 18:59
ad257ac

Choose a tag to compare

Full Changelog: v4.0.2...v4.0.3

v4.0.2

14 May 00:44

Choose a tag to compare

File paths fixes

Full Changelog: v4.0.1...v4.0.2

v4.0.1

13 May 22:21

Choose a tag to compare

  • Rootless systemd
  • Fix default process manager for Windows (from winsw to shawl)

Full Changelog: v4.0.0...v4.0.1

v4.0.0

09 May 12:26

Choose a tag to compare

  • gRPC mode — opt-in single outbound bidi-stream connection to the panel; legacy listener stays as default.
  • enroll CLIgameap-daemon enroll --connect grpc://host:port/setupKey provisions certs, API key and config in one shot.
  • Per-server metrics — Prometheus-style samples (CPU, memory, network, block I/O, PIDs) buffered in memory and served over gRPC.
  • Server attach — interactive attach to running servers via gRPC, with idle timeouts and session limits.
  • HTTP proxy over gRPC — panel can route HTTP(S) requests (incl. Unix sockets) through the daemon.

Configuration

  • INI/.cfg loader removed — only YAML is supported now.
  • TLS certs can be provided inline as PEM (ca_certificate, certificate_chain, private_key); inline takes precedence over *_file paths. dh_file is now optional.
  • New config sections: grpc, metrics, task_manager, steam_config, Windows users map and use_network_service_user.
  • Per-OS default paths for work_path / tools_path / steamcmd_path.
  • Expanded, fully commented config/gameap-daemon.yaml example.

Process managers

  • Metrics support: docker, podman, systemd (full samples); tmux/simple/winsw/shawl (gameap_server_up only).
  • Systemd units now enable CPUAccounting, MemoryAccounting, IOAccounting, IPAccounting, TasksAccounting. Pre-existing units must be regenerated (restart the server).
  • Docker connection options: host, cert_path, api_version.
  • Server identity migrated from UUID → XID; legacy tmux sessions and systemd unit/socket files are cleaned up automatically on next start/uninstall.
  • New Attach() method on tmux, systemd, simple.

Tasks & scheduling

  • Task manager is gRPC-aware: tasks pushed by the panel, status/output streamed back, cancel-by-ID supported.
  • Server repository serves IDs/lookups from cache in gRPC mode.
  • Configurable polling intervals via task_manager.update_period.
  • Fixes: GDTaskGameServerMove, empty server commands, start command edge cases, scheduler queue handling, richer task error reporting.

Logging & observability

  • Live console log streaming over gRPC.
  • NoopAPICaller for pure-gRPC deployments (no HTTP API needed).
  • Additional debug logging across runner, scheduler and process managers.

File transfer

  • Multiple fixes in gRPC file/download/transfer handlers; chunked download streams with tests.

Build & dependencies

  • Added: google.golang.org/grpc 1.80.0, google.golang.org/protobuf 1.36.11, github.com/gameap/gameap (proto module), github.com/rs/xid 1.6.0.
  • Removed: gopkg.in/ini.v1.
  • Bumped: github.com/gameap/gameapctl 0.22.2 → 0.25.0.
  • Windows build fixes for new process-manager wrappers.

Upgrade notes

  1. Convert any .cfg / .ini configs to YAML before upgrading.
  2. Existing tmux sessions and systemd units will be migrated from UUID- to XID-based names on the next server start (one-time restart per server).
  3. Systemd metrics reporting zeros means the unit predates the new *Accounting=yes directives — restart the server to regenerate.
  4. Legacy mode remains the default; enable gRPC mode via grpc.enabled: true or by running gameap-daemon enroll ….

Full Changelog: v3.2.5...v4.0.0

v4.0.0beta2

03 May 16:02

Choose a tag to compare

v4.0.0beta2 Pre-release
Pre-release
  • gRPC mode — opt-in single outbound bidi-stream connection to the panel; legacy listener stays as default.
  • enroll CLIgameap-daemon enroll --connect grpc://host:port/setupKey provisions certs, API key and config in one shot.
  • Per-server metrics — Prometheus-style samples (CPU, memory, network, block I/O, PIDs) buffered in memory and served over gRPC.
  • Server attach — interactive attach to running servers via gRPC, with idle timeouts and session limits.
  • HTTP proxy over gRPC — panel can route HTTP(S) requests (incl. Unix sockets) through the daemon.

Configuration

  • INI/.cfg loader removed — only YAML is supported now.
  • TLS certs can be provided inline as PEM (ca_certificate, certificate_chain, private_key); inline takes precedence over *_file paths. dh_file is now optional.
  • New config sections: grpc, metrics, task_manager, steam_config, Windows users map and use_network_service_user.
  • Per-OS default paths for work_path / tools_path / steamcmd_path.
  • Expanded, fully commented config/gameap-daemon.yaml example.

Process managers

  • Metrics support: docker, podman, systemd (full samples); tmux/simple/winsw/shawl (gameap_server_up only).
  • Systemd units now enable CPUAccounting, MemoryAccounting, IOAccounting, IPAccounting, TasksAccounting. Pre-existing units must be regenerated (restart the server).
  • Docker connection options: host, cert_path, api_version.
  • Server identity migrated from UUID → XID; legacy tmux sessions and systemd unit/socket files are cleaned up automatically on next start/uninstall.
  • New Attach() method on tmux, systemd, simple.

Tasks & scheduling

  • Task manager is gRPC-aware: tasks pushed by the panel, status/output streamed back, cancel-by-ID supported.
  • Server repository serves IDs/lookups from cache in gRPC mode.
  • Configurable polling intervals via task_manager.update_period.
  • Fixes: GDTaskGameServerMove, empty server commands, start command edge cases, scheduler queue handling, richer task error reporting.

Logging & observability

  • Live console log streaming over gRPC.
  • NoopAPICaller for pure-gRPC deployments (no HTTP API needed).
  • Additional debug logging across runner, scheduler and process managers.

File transfer

  • Multiple fixes in gRPC file/download/transfer handlers; chunked download streams with tests.

Build & dependencies

  • Added: google.golang.org/grpc 1.80.0, google.golang.org/protobuf 1.36.11, github.com/gameap/gameap (proto module), github.com/rs/xid 1.6.0.
  • Removed: gopkg.in/ini.v1.
  • Bumped: github.com/gameap/gameapctl 0.22.2 → 0.25.0.
  • Windows build fixes for new process-manager wrappers.

Upgrade notes

  1. Convert any .cfg / .ini configs to YAML before upgrading.
  2. Existing tmux sessions and systemd units will be migrated from UUID- to XID-based names on the next server start (one-time restart per server).
  3. Systemd metrics reporting zeros means the unit predates the new *Accounting=yes directives — restart the server to regenerate.
  4. Legacy mode remains the default; enable gRPC mode via grpc.enabled: true or by running gameap-daemon enroll ….

Full Changelog: v3.2.5...v4.0.0beta2

v3.2.5

24 Apr 11:02

Choose a tag to compare

Fix game server start command

Full Changelog: v3.2.4...v3.2.5

v3.2.4

03 Apr 18:39

Choose a tag to compare

  • Add version command
  • Bump up dependencies versions
  • Remove PreferServerCipherSuites param
  • Fix Windows build

Full Changelog: v3.2.1...v3.2.4