Meridian handbook
ReferenceConfiguration

plugins.yaml

Every key of config/sites/<key>/plugins.yaml: the process plugins an endpoint step calls, with their command, pinned digest, environment, granted handlers and containment.

config/sites/<key>/plugins.yaml declares process plugins: separate binaries the engine starts and calls from an endpoint’s plugin step. The plugin protocol is version 0 and experimental. For extending the engine itself, see Extending.

KeyTypeDefaultMeaning
pluginsmap of objects{}The site’s plugins by key
plugins.<key>.argslist of string[]Arguments the binary is started with
plugins.<key>.buildstringThe directory of the Go program engine-dmo plugin build compiles to command
plugins.<key>.circuit_breaker.cooldownstringHow long its steps fail at once before it is tried again
plugins.<key>.circuit_breaker.failuresintegerFailed calls within window that take the plugin out
plugins.<key>.circuit_breaker.windowstringThe window failures are counted in
plugins.<key>.commandstringRequiredThe plugin binary, relative to the project or absolute
plugins.<key>.concurrencyintegerCalls in flight at once, 1 to 256
plugins.<key>.endpointslist of string[]The endpoint handlers granted: a plugin step may call only these, and the plugin must serve every one
plugins.<key>.envmap of string{}The environment the plugin gets. Nothing of the engine’s own environment is passed; a credential-like name must be an interpolation
plugins.<key>.memorystringThe memory limit set on the process where the platform allows, such as 256MB
plugins.<key>.sha256stringThe binary’s SHA-256 in lower case hex; the engine refuses to start a binary whose digest differs
plugins.<key>.timeoutstringThe time limit per call