Skip to content

Releases: Auto-Tournament/cs2-server-manager

CSM v1.14.2

Choose a tag to compare

@github-actions github-actions released this 29 Sep 18:44

CS2 Server Manager v1.14.2

Changed

  • csm always runs as the user who runs it; there is no dedicated service user and no CS2_USER override. Running csm as root is refused, except sudo csm setup-host, sudo csm install-deps and sudo csm self-update. (#83)
  • csm keeps its state in that user's home folder, never next to the binary in a system folder like /usr/local/bin.
  • Quiet terminal: commands print their own result; internal log lines stay in the log files (CSM_VERBOSE=1 shows them).

Upgrading

Re-link hosts as the user that runs csm (csm link <url> <code> from Servers → Machines → Add machine, then csm agent install).

CSM v1.14.1

Choose a tag to compare

@github-actions github-actions released this 29 Sep 18:23

CS2 Server Manager v1.14.1

Fixed

  • A new instance (csm instance create, or a server the platform creates) skips numbers that belong to a classic server-N folder or whose game port is in use. On hosts that still had server-1..3, the first instance took port 27015 and could not start. (#82)

Upgrading

sudo csm self-update

CSM v1.14.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 18:01

CS2 Server Manager v1.14.0

New

  • csm link http://<host>:<port> <code> --insecure links to a platform on plain http, any host. Without --insecure, plain http is refused with a clear message (the token would travel unencrypted; https is recommended). (#81)

Fixed

  • Linking over https to a platform behind a TLS proxy no longer fails with "ws:// is refused": a ws:// answer for the same host is upgraded to wss://. (#80)
  • csm ci status works as root or any user; csm ci setup|update|remove give one consistent "run as the CS2 user" message. (#78)
  • csm link -h points to Servers → Machines → Add machine.

Docs

  • CHANGELOG.md points to the docs changelog. (#79)

Upgrading

sudo csm self-update

CSM v1.13.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 16:33

CS2 Server Manager v1.13.0

New

  • CI on an instance. csm instance layer build --for N builds a Ready Up layer that only instance N uses; csm instance layer unpin N puts it back on the shared layer. csm instance exec N -- <cmd> runs a command inside an instance's view, csm instance reset N empties what it wrote. csm ci setup --instance N runs Ready Up's live CI check on an instance instead of a separate full CS2 copy (saves ~69 GB). Pinned CI instances are never treated as game servers.
  • All plugins in instance mode. The shared Ready Up layer is built with the full bundle by default, so turning plugins on or off per server (from Auto Tournament) needs no reinstall. csm plugins bundle / CSM_READYUP_BUNDLE still override it.

Fixed

  • The newest Ready Up release is picked by version (SemVer), not by publish time, so a late-published patch for an older version is never taken as "newest". Also fixes a flaky test.
  • A new instance that already has Ready Up no longer rebuilds the shared layer or restarts itself.
  • Restarting the CI runner service now stops the whole runner, not just run.sh.
  • csm ci status shows the CI instance's disk use.

Docs

  • Measured disk numbers for instance mode ("How much disk?" in the README).

Upgrading

sudo csm self-update. If Ready Up's CI runner is on this host: csm ci setup --instance <N> afterwards.

CSM v1.12.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 12:24

CSM v1.12.0

New

  • Host agent: control this machine from Auto Tournament. csm link <platform-url> <code>
    links the machine (get the command from Servers → Machines → Add machine), and
    csm agent install runs the agent as a systemd service. The platform can then list, start,
    stop, restart, create and update the machine's servers and see their health, with no SSH
    and no inbound port.
    • One outgoing WebSocket, https/wss only, certificates always verified. The token is
      stored with mode 600, rotated by the platform every 90 days, and never printed or logged.
    • A stop, restart or update of a server with a Ready Up match in progress is refused unless
      an admin gives a reason. The agent never restarts anything on its own.
    • csm link status, csm unlink, csm agent status.
  • Ready Up as the plugin stack. csm plugins stack readyup installs
    Ready Up on every server instead of
    Metamod + CounterStrikeSharp + the old plugin.
    • Channel stable or beta, a pinned version, bundle essentials or full
      (csm plugins channel|version|bundle).
    • Every download is checked against the release's SHA256SUMS.
    • Keeps itself up to date: csm monitor updates Ready Up on its channel, only on
      servers that are stopped or idle with nobody connected, and never while updates are held.
      csm plugins auto off turns it off.
    • New servers get Ready Up before their first start. Servers the platform creates also get
      their link settings and join the platform by themselves.
    • After a CS2 update, csm puts the Ready Up line back into gameinfo.gi.
    • A host that runs the old stack stays on it. The README has a "Moving to Ready Up" section.
  • License answer, asked once. Ready Up's installer needs to know whether you use it
    non-commercially or commercially. csm update-plugins asks once in a terminal (you type
    I AGREE), or set it with csm plugins license noncommercial|commercial.
    AT_ACCEPT_LICENSE overrides it. If you never answered, csm takes the answer from the
    platform. An answer you gave is never replaced.
  • Instance mode: one CS2 install, many servers. csm instance create runs a server from
    the one shared, read-only CS2 install through overlayfs, instead of a full copy per server.
    Each instance only stores what it writes itself (logs, demos, backups). No root and no
    sudo: it uses an unprivileged user namespace (Linux 5.11 or newer). Each instance has its
    own ports, HOME, /dev/shm, console and crash restart. Ready Up only.
    • csm instance create|start|stop|restart|status|remove|attach|logs|shell,
      csm instance layer ..., csm instance game, csm instance gc.
    • csm status, start|stop|restart, logs, attach and the TUI work on instances.
    • With csm instance config backend instances, the host agent reports instances as the
      machine's servers, so the platform creates and scales instances.
  • Safe, versioned CS2 updates for instances. A CS2 update never writes to an install a
    running server uses. csm builds a new game version next to the old one (hardlinked, so it
    costs only the changed files), and restarts idle instances onto it. Busy or held instances
    keep the old version until they are idle. Old versions are removed when nothing uses them.
    Ready Up updates work the same way: a new layer, never a change to the one in use.

Changed

  • The legacy stack installs Auto Tournament CS2 1.4.35, pinned, instead of whatever is
    latest (CSM_LEGACY_PLUGIN_VERSION picks another). On an Auto Tournament 3.x platform, csm
    refuses the legacy stack with a clear message before touching anything; use Ready Up there.

Upgrading

  • Update as usual (the TUI offers it, or download the new binary). No config changes.
    Existing server-N folders, server.cfg files and Ready Up data are kept, and nothing
    changes until you use the new commands.
  • To move a host to Ready Up (Auto Tournament 3.0 betas):
    csm plugins stack readyup
    csm plugins channel beta              # while Ready Up has only pre-releases
    csm plugins license noncommercial     # or commercial
    csm update-plugins
  • To link the machine to the platform (Auto Tournament 3.0.0-beta.14 or newer):
    csm link https://your-platform <code>
    csm agent install
  • To try instance mode: csm instance layer build, then csm instance create and
    csm instance start all. See "Instance mode" in the README.

Known limitations

  • Instance mode needs Ready Up (not the legacy stack) and Linux 5.11 or newer. Instances save
    disk and setup time, not memory: each running CS2 server still needs its own RAM.
  • The host agent only removes the last server, and doesn't change launch arguments yet.
  • The TUI install wizard has no license field; it shows how to give the answer.

CSM v1.11.0

Choose a tag to compare

@github-actions github-actions released this 28 Sep 23:11

New

  • Auto Tournament license key. csm license set <key> stores your license key
    (or csm license set < key.txt), csm license status shows who it is licensed to and
    what it covers, and csm license clear removes it. csm checks the key offline. Nothing is
    ever blocked: a problem is a warning, and without a key csm prints one quiet line.
    The key is stored in license.json (mode 600) and is never printed in full or logged.
  • csm hands the key to Ready Up on every server it manages
    (game/csgo/cfg/readyup_license.cfg, exec'd from server.cfg). Ready Up reads it at the
    next map load or restart.
  • The key can come from the platform. When an admin saves or clears the key in Auto
    Tournament (Settings → License), the update monitor applies it on its next poll, with no
    command on the host. A key from the platform replaces one you set by hand; clearing it on
    the platform only removes a key that came from the platform.
  • csm status shows the license line under the fleet table.

Fixed

  • The update-hold poll works with Auto Tournament 3.0 again. csm sent its server token
    only as X-MatchZy-Token, which the 3.0 platform no longer reads, so every poll got a 401
    and game updates stayed on hold. csm now sends X-Auto-Tournament-Token too.

Changed

  • Every server counts toward a license's server limit, including spare, practice and test
    servers. The wording is "you need a license"; it is still only a warning.

Upgrading

  • Update as usual (the TUI offers it, or download the new binary). No config changes.
    Existing servers, server.cfg files and Ready Up data are kept.
  • If you run Auto Tournament 3.0 betas: update now, otherwise game updates stay held (see Fixed).
  • If you set a key with csm license set, it stays until the platform sends a different one.

Known limitations

  • csm does not install Ready Up. Install it with Ready Up's install.sh. csm shows Ready
    Up's live state and refuses to stop or update a server during a Ready Up match (since
    1.10.0), and keeps Ready Up's files and data across game updates (since 1.10.2). It does
    not put the Ready Up line back into gameinfo.gi after a CS2 update: run Ready Up's
    installer again after each one.
  • The plugin csm installs is the latest stable Auto Tournament CS2 plugin, 1.4.35.
    Auto Tournament 3.0 needs 2.0.0 or newer, which is still a pre-release. On a 3.0 platform,
    install 2.0.0 by hand until this is sorted.
  • Host agent (csm link) is not in this release. Letting the platform start, stop and
    update servers through csm is in progress.

CSM v1.10.3

Choose a tag to compare

@github-actions github-actions released this 27 Sep 09:03

CS2 Server Manager (CSM) release v1.10.3

CSM v1.10.2

Choose a tag to compare

@github-actions github-actions released this 26 Sep 08:46

CS2 Server Manager (CSM) release v1.10.2

CSM v1.10.1

Choose a tag to compare

@github-actions github-actions released this 26 Sep 08:35

CS2 Server Manager (CSM) release v1.10.1

CSM v1.10.0

Choose a tag to compare

@github-actions github-actions released this 26 Sep 08:18

CS2 Server Manager (CSM) release v1.10.0