Free trial · 14 days · Cancel anytimeGet started

The agent now announces what its machine can take

v0.32.0-beta
  • The agent now announces what its machine can take. On connection it measures its core count, memory, total disk space, architecture (amd64 or arm64) and the presence of Docker and buildx, then passes this to the hub. This is what lets Pierrr hand a build to this machine rather than another, knowingly. The node's roles never come up from the agent: they stay decided on the hub side.
  • Resource ceilings, computed for your machine. The agent derives recommended limits from this: one core left free for the system, 60% of memory at most, and a disk reserve of at least 10 GB (or 10% of the disk if that is more). It announces them without applying them on its own: until someone asks it for a ceiling, it keeps exactly the build behaviour of previous versions. Once a ceiling is in force, a build that would take the machine below the disk reserve is cleanly refused, with a message stating the space left and the reserve reached, rather than filling the disk and taking down whatever runs beside it. This is what makes it reasonable to install the agent on a PC or a NAS shared with other uses.
  • The hub can adjust these ceilings remotely. A platform administrator changes a node's limits from the topology; the agent receives them, applies them to builds and keeps them across restarts. A reset hands control back to the values the machine computed. A ceiling change arriving during a build waits for it to finish: a running build is never interrupted.
  • The registry credential no longer stays on the machine after a build. Authentication to the image registry is now confined to a temporary folder specific to each build, erased at the end. Previously the token stayed written in the host's Docker configuration, without expiry, including after the node was removed. Two simultaneous builds no longer step on each other either.
  • New install options to set these ceilings from the start, without going through the hub: --max-cpus, --max-mem (in MB), --reserve-disk-gb and --max-concurrent-jobs. Omitted, the agent applies no ceiling of its own and waits for the hub's.