Initialize a baker.
This creates a baker, waits for it to be ready, and then returns it.
As the baker usually relies on a node, we first wait for the node to be ready and then, run the baker.
The path to the baker binary is chosen from the protocol
.
The standard output and standard error output of the baker will be logged with prefix name
and color color
.
Default event_pipe
is a temporary file whose name is derived from name
. It will be created as a named pipe so that baker events can be received.
The Node.t
parameter is the node used by the baker. The baker is configured to use the node's data dir.
The Client.t
parameter is the client used by the baker. The baker is configured to use the client's base directory.
If runner
is specified, the baker will be spawned on this runner using SSH.
delegates
is a list of account aliases (see Account.key.alias
), e.g., bootstrap accounts (see Constant.bootstrap_keys
), delegated to this baker. This defaults to the empty list, which is a shortcut for "every known account".
votefile
, liquidity_baking_toggle_vote
, force_apply
, state_recorder
respectively operations_pool
are passed to the baker daemon through the flags --votefile
, --liquidity-baking-toggle-vote
, --should-apply
, --record-state
respectively --operations-pool
.
If remote_mode
is specified, the baker will run in RPC-only mode.
If dal_node
is specified, then it is the DAL node that the baker queries in order to determine the attestations it sends to the L1 node. A --dal_node
argument is passed to specify the DAL node's endpoint.