Skip to content

Instantly share code, notes, and snippets.

@BorisKotlyarov
Last active January 16, 2019 09:56
Show Gist options
  • Save BorisKotlyarov/dad5e67b4bd348f28f97532b30a72a07 to your computer and use it in GitHub Desktop.
Save BorisKotlyarov/dad5e67b4bd348f28f97532b30a72a07 to your computer and use it in GitHub Desktop.
Eosio Reference

Eosio reference

#!/usr/bin/env bash
cd ~/eos/contracts/user_contract
eosio-cpp -o user_contract.wasm user_contract.cpp --abigen
cd ~/eos/contracts/marketplace
eosio-cpp -o marketplace.wasm marketplace.cpp --abigen
cd ~
cleos wallet unlock --password PW5HrBPdJkwuSxXmUMMCofPsouiTJGwq9swJsp5Psdvxvv5YvC8QB
cleos create account eosio eosio.msig __PUBLIC_KEY__ __PUBLIC_KEY__
cleos create account eosio eosio.bpay __PUBLIC_KEY__ __PUBLIC_KEY__
cleos create account eosio eosio.names __PUBLIC_KEY__ __PUBLIC_KEY__
cleos create account eosio eosio.ram __PUBLIC_KEY__ __PUBLIC_KEY__
cleos create account eosio eosio.ramfee __PUBLIC_KEY__ __PUBLIC_KEY__
cleos create account eosio eosio.saving __PUBLIC_KEY__ __PUBLIC_KEY__
cleos create account eosio eosio.stake __PUBLIC_KEY__ __PUBLIC_KEY__
cleos create account eosio eosio.token __PUBLIC_KEY__ __PUBLIC_KEY__
cleos create account eosio eosio.vpay __PUBLIC_KEY__ __PUBLIC_KEY__
cleos create account eosio marketplace __PUBLIC_KEY__ __PUBLIC_KEY__
cleos create account eosio user.struct __PUBLIC_KEY__ __PUBLIC_KEY__
cleos set account permission marketplace active '{"threshold":1, "keys":[{"key":"__PUBLIC_KEY__", "weight":1}], "accounts": [{"permission":{"actor":"marketplace","permission":"eosio.code"},"weight":1}]}' owner -p marketplace@owner
cleos set account permission user.struct active '{"threshold":1, "keys":[{"key":"__PUBLIC_KEY__", "weight":1}], "accounts": [{"permission":{"actor":"user.struct","permission":"eosio.code"},"weight":1}]}' owner -p user.struct@owner
cleos set contract marketplace ~/eos/contracts/marketplace/
cleos set contract user.struct ~/eos/contracts/user_contract/

#TODO create multi node eosio
cleos set contract eosio.token ~/eos/build/contracts/eosio.token/
cleos set contract eosio.msig ~/eos/build/contracts/eosio.msig/

cleos push action eosio.token create '[ "eosio", "10000000000.0000 SYS" ]' -p eosio.token@active
cleos push action eosio.token issue '[ "eosio", "1000000000.0000 SYS", "memo" ]' -p eosio@active

cleos set contract eosio ~/eos/build/contracts/eosio.system/
cleos set contract eosio ~/eos/build/contracts/eosio.bios/

cd ~

#cleos system regproducer misha EOS8iZEFAz7omspSCRi22EF5b7HLRuy8woc4c4Yf8t4ZwPSujNpCd http://boris.com
#cleos push action eosio.token issue '[ "misha", "100.0000 SYS", "memo" ]' -p eosio@active
#cleos system voteproducer prods eosio misha

#cleos push action eosio setprods "{ \"schedule\": [{\"producer_name\": \"misha\",\"block_signing_key\": \"__PUBLIC_KEY__\"}]}" -p eosio@active
#cleos push action eosio setprods "{ \"schedule\": [{\"producer_name\": \"eosio\",\"block_signing_key\": \"__PUBLIC_KEY__\"}, {\"producer_name\": \"misha\",\"block_signing_key\": \"__PUBLIC_KEY__\"}]}" -p eosio@active

# WARNING !!! USE THIS ACTION FOR SET PRODUCER IN BIOS CONTRACT
#cleos push action eosio setprods "{ \"schedule\": [{\"producer_name\": \"eosio\",\"block_signing_key\": \"__PUBLIC_KEY__\"}, {\"producer_name\": \"boris\",\"block_signing_key\": \"__PUBLIC_KEY__\"}]}" -p eosio@active
#cleos get schedule -j

Produce blocks

https://developers.eos.io/eosio-nodeos/docs/environment-producing-node

Cross contract tables

https://eosio.stackexchange.com/a/70/2836

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment