lotus/build/README-bundle.md
vyzo 5981495740
Update build/README-bundle.md
Co-authored-by: Aayush Rajasekaran <arajasek94@gmail.com>
2022-05-16 22:42:21 +03:00

1.6 KiB

Builtin Actor Bundles

With NV16, builtin actor bundles must be loaded into lotus for the FVM to operate.

The bundles are specified in build/bundles.toml using the following syntax:

[[bundles]]
version = X   # actors version
release = tag # release gag

This will add a bundle for version X, using the github release tag to fetch the bundles at first startup.

If you don't want to fetch the bundle from github, you can specify an explicit path to the bundle (which must be appropriate for your network, typically mainnet):

[[bundles]]
version = X   # actors version
release = tag # release tag
path = /path/to/builtin-actors.car

For development bundles, you can also specify development = true so that the bundle is not recorded in the datastore and reloaded every time the daemon starts up:

[[bundles]]
version = X   # actors version
release = tag # release gag
path = /path/to/builtin-actors.car
development = true

Local Storage

Bundles downloaded from github will be stored in $LOTUS_PATH/builtin-actors/vXXX/YYY/builtin-actors-ZZZ.car``, where XXXis the actors version,YYYis the release tag, andZZZ` is the network bundle name.

The sha256 sum of the bundle will be stored next to it, in $LOTUS_PATH/builtin-actors/vXXX/YYY/builtin-actors-ZZZ.sha256

On startup, if a bundle is recorded as loaded the manifest CID will be checked for presence in the blockstore. If the manifest is missing, then the bundle will be reloaded from the local file (if it exists) or refetched from github. The sha256 sum is always checked before loading the bundle.