Skip to content

RivetMSP 26.10.16: RivetCore 1.0.0-rc.13 (Mesh agent install, starter pack)

Choose a tag to compare

@TheTractorHacker TheTractorHacker released this 11 Oct 22:29
· 10 commits to master since this release

Adopts RivetCore 1.0.0-rc.13 (rc.12: the optional MeshCentral agent install with automatic node-id mapping, migration 0023; rc.13: the RMM starter pack). Aligned with RivetIT 26.10.39 (same page name agent/rmm_starter_pack.php, same handler, same Mesh box rule: offered only once MeshCentral is on with an address). DB 2.6.89: one idempotent step gated on 2.6.88 that runs Core migration 0023_rmm_mesh_agent through the Core runner (three new tables, nothing existing altered; db.sql carries it and a fresh import equals a migrated database). The starter pack has no migration. Nothing is switched on by this update: no installer asks for the Mesh agent until an administrator saves the Mesh install settings and ticks the box, and nothing from the starter pack is installed until an administrator installs it. Older agents are answered exactly as before (golden transcripts replay identically, strict mode included).

Deploy notes: back up the database, pull this tag, composer install --no-dev --no-plugins --no-scripts, php scripts/update_cli.php --update_db (2.6.88 to 2.6.89; safe before or right after the code). No new cron line, no nginx change. To use the Mesh install, roll out an agent built from RivetCore rc.13 (an older agent never reports Mesh and ignores the installer members).

  • Optional MeshCentral agent (off by default). The Add device dialog and the Administration deployment form get Also install the MeshCentral agent (unticked every time, disabled with Core's own refusal sentence until Mesh is switched on with an https address and a device group id). Administration > MeshCentral gets the install settings: device group id (masked, it is a secret), certificate pin with Read it from the server (shows the SHA-384 and SHA-256 of the server's certificate and never saves; a button puts it in the field and you press Save), the overwrite switch, and JSON corrections of the agent-id and install-argument tables behind a warning that they are unverified. Core validates everything and writes nothing when any field is invalid. The device's Remote access card (and the Remote tab) shows the Mesh agent state: installed with its version or the install error, and what the server did with the node id (mapped; conflict, a visible alert that names the other device only when it belongs to the same client; kept_manual, a visible hint). The node id itself is shown to administrators only. Events rmm.mesh.agent_installed and rmm.mesh.node_conflict are in the shared picker.
  • RMM starter pack. Endpoints > Starter pack (administrators, scripts sub-switch): browse and filter 73 scripts (41 Windows, 32 Linux; 57 read only, 10 change the system, 6 disruptive), 3 check sets and 3 policy drafts (created switched off and unassigned), tick what you want, Preview, Install selected, Uninstall selected (preview first, then an in-page confirmation), a settings form per draft (time server, SSH unit, certificate paths, backup service...), Core's signing-key blocker shown first. An empty selection is never sent to Core (Core reads it as the whole pack). The script library marks starter scripts (Starter badge, risk chip, Update waiting for a parked newer version, with a link that compares it with yours); policies show a Starter badge and never print their marker, and saving a draft keeps it. Event rmm.starter.installed.
  • Tests: tests/rmm_ui.php 1599 checks (new fragments rmm_ui_p1213_mesh.php, rmm_ui_p1213_starter.php), tests/rmm_installer_ui.php 81 (payload decode: the Mesh members only when ticked, token-gated download, Linux flags), the pin probe against a local TLS server, auto-mapping from real check-ins (conflict, kept manual, overwrite), two browser smokes (Mesh 15 checks, Starter 16; desktop and phone, light and dark), the real Linux agent proof (71 checks, was 39) extended with a MOCK Mesh server and the starter pack through the API.
  • Not verified: anything that talks to a real MeshCentral server (download address and flags, agent ids, install and uninstall arguments, where the node id can be read), the Windows code on a Windows host, and all 41 Windows starter scripts (parse-checked by Core, never run). Nothing was deployed.