Mokhtar Naamani e264d50159 README runtime 4 years ago
..
src 83e30c7906 runtime: increase ROLE_PARAMETERS_REWARD_MAX_VALUE to 100_000 4 years ago
CHANGELOG.md 83e30c7906 runtime: increase ROLE_PARAMETERS_REWARD_MAX_VALUE to 100_000 4 years ago
Cargo.toml 83e30c7906 runtime: increase ROLE_PARAMETERS_REWARD_MAX_VALUE to 100_000 4 years ago
README.md e264d50159 README runtime 4 years ago
build.rs 677ea26d98 runtime wasm builder: try newer version to ensure always building for host target 4 years ago
runtime-banner.svg 2a532261d6 update README 5 years ago

README.md

Joystream Runtime

Joystream Runtime

The runtime is the code that defines the consensus rules of the Joystream protocol. It is compiled to WASM and lives on chain. Joystream node execute the code's logic to validate transactions and blocks on the blockchain.

When building joystream-node as described in ../node/README.md with cargo build --release, in addition to the joystream-node binary being built the WASM blob artifact is produced in:

target/release/wbuild/joystream-node-runtime/joystream_node_runtime.compact.wasm

Deployment

Deploying the compiled runtime on a live system can be done in one of two ways:

  1. Joystream runtime upgrade proposals which will be voted on by the council. When the Joystream platform is live, this will be the only way to upgrade the chain's runtime code.

  2. During development and testnet phases, we can send an extrinsic (transaction signed with the sudo key) invoking system::setCode(). This can be done either from the UI/extrinsics app, or directly with an admin script.

Versioning the runtime

Versioning of the runtime is set in runtime/src/lib.rs For detailed information about how to set correct version numbers when developing a new runtime, see this