API Reference managoat_runner v#0.1.0

Copy Markdown View Source

Modules

The self-hosted runner: a Managoat.Sandbox adapter whose transport is a WebSocket that a daemon on the user's machine dials out to the platform.

The self-hosted runner adapter: Managoat.Sandbox implemented as RPCs to a runner daemon on a machine the user owns.

The library's one setting, read from its own otp_app

The server end of one runner daemon's socket.

An in-BEAM stand-in for the runner daemon, speaking the exact wire protocol Managoat.Runner.Connection speaks, so the adapter and the connection process are exercised end to end without a Go binary or a network.

The socket process of a Managoat.Runner.FakeDaemon: it runs Managoat.Runner.Connection as a WebSock handler would, and is the registered connection process. Frames the connection pushes go to the daemon process; frames the daemon sends arrive as handle_in/2.

What the platform running Managoat.Runner supplies: a way to reach a runner's connection process by id, and two notifications it may act on.

The reference Managoat.Runner.Host: a plain Registry (keys: :unique) on one node, and no reaction to heartbeats or presence.

Sandbox names on the runner provider carry the runner id, because Managoat.Sandbox hands an adapter nothing but the name: the shape is runner-<32 hex>-<8 hex>, the runner's UUID without dashes and a random suffix.