Deploying System Smart Contracts
Deploying System Contract
The eosio.bios
is the first sample of a system contract through the EOSIO platform. It is a minimalist system contract because it only supplies the actions that are absolutely critical to bootstrap a chain and nothing more. This allows for a chain agnostic approach to bootstrapping a chain.
Just like in the eosio.system
sample contract implementation, there are a few actions which are not implemented at the contract level (newaccount
, updateauth
, deleteauth
, linkauth
, unlinkauth
, canceldelay
, onerror
, setabi
, setcode
), they are just declared in the contract so they will show in the contract's ABI and users will be able to push those actions to the chain via the account holding the eosio.system
contract, but the implementation is at the EOSIO core level. They are referred to as EOSIO native actions.
enable protocol_features_to_activate
## Deploy the bios contract
curl -X POST http://10.150.0.2:8080/v1/producer/schedule_protocol_feature_activations -d '{"protocol_features_to_activate": ["0ec7e080177b2c02b278d5088611686b49d739925a92d9bfcacd7fc6b74053bd"]}'
git clone https://gitlab.com/shine-traceability/shine.contracts.git
cleos -u http://10.150.0.2:8080 set contract eosio contracts/eosio.bios/
some of the protocol we can create
cleos -u http://10.150.0.2:8080 push action eosio activate '["f0af56d2c5a48d60a4a5b5c903edfb7db3a736a94ed589d0b797df33ff9d3e1d"]' -p eosio
cleos -u http://10.150.0.2:8080 push action eosio activate '["2652f5f96006294109b3dd0bbde63693f55324af452b799ee137a81a905eed25"]' -p eosio
cleos -u http://10.150.0.2:8080 push action eosio activate '["ad9e3d8f650687709fd68f4b90b41f7d825a365b02c23a636cef88ac2ac00c43"]' -p eosio
cleos -u http://10.150.0.2:8080 push action eosio activate '["68dcaa34c0517d19666e6b33add67351d8c5f69e999ca1e37931bc410a297428"]' -p eosio
cleos -u http://10.150.0.2:8080 push action eosio activate '["e0fb64b1085cc5538970158d05a009c24e276fb94e1a0bf6a528b48fbc4ff526"]' -p eosio
cleos -u http://10.150.0.2:8080 push action eosio activate '["ef43112c6543b88db2283a2e077278c315ae2c84719a8b25f25cc88565fbea99"]' -p eosio
cleos -u http://10.150.0.2:8080 push action eosio activate '["4a90c00d55454dc5b059055ca213579c6ea856967712a56017487886a4d4cc0f"]' -p eosio
cleos -u http://10.150.0.2:8080 push action eosio activate '["1a99a59d87e06e09ec5b028a9cbb7749b4a5ad8819004365d02dc4379a8b7241"]' -p eosio
cleos -u http://10.150.0.2:8080 push action eosio activate '["4fca8bd82bbd181e714e283f83e1b45d95ca5af40fb89ad3977b653c448f78c2"]' -p eosio
cleos -u http://10.150.0.2:8080 push action eosio activate '["299dcb6af692324b899b39f16d5a530a33062804e41f09dc97e9f156b4476707"]' -p eosio
deploy the latest contract
cleos -u http://10.150.0.2:8080 set contract eosio contracts/eosio.bios/
Last updated
Was this helpful?