-
-
Save lucca65/9776249a9c6c85d7afdd93716a263d55 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
# Throws error when using unset variable | |
set -ux | |
cleos='docker-compose -f /Users/lucca/Development/cpp/eos/Docker/docker-compose.yml exec keosd /opt/eosio/bin/cleos -u http://nodeosd:8888 --wallet-url http://localhost:8900' | |
eosiocpp='docker-compose -f /Users/lucca/Development/cpp/eos/Docker/docker-compose.yml exec nodeosd eosiocpp' | |
CONTRACTS_PATH='/contracts' | |
CONTRACT_PATH='/Users/lucca/Development/cpp/sc-bespiral' | |
WALLET_PASSWORD='PW5Jfd7DzcJmDrosoLcgVzoNCzkWtGHPXykJ6yWDFMEoKBamuHJTn' | |
ROOT_ACCOUNT='bespiral' | |
BESPIRAL_SYMBOL='BES' | |
# Keys | |
EOSIO_PRIVATE_KEY='5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3' | |
EOSIO_TOKEN_PRIVATE_KEY='5Jmsawgsp1tQ3GD6JyGCwy1dcvqKZgX6ugMVMdjirx85iv5VyPR' | |
ROOT_KEY_OWNER='EOS5DUkgCz2cvnrLZXEiRmt8kKNogJSnaQrFN4Tdbn6EPft6Hkutv' | |
ROOT_PRIVATE_KEY_OWNER='5KCoA6Dv3pJXFxWmeXk3pxPmSXSDPmXi3ppEF59HARzeAUwkizq' | |
ROOT_KEY_ACTIVE='EOS83E2pgz8fFXAgtRopujEs64HaQowWGsb4uhRr5ppkcLp8Gqyp2' | |
ROOT_PRIVATE_KEY_ACTIVE='5JBeuaChFMhR4gLmA7LGbSFGWAA2hVpXKZmTuKvZHmgAnkLJvMc' | |
LUCCA_KEY='EOS5wwF7kzqJnfmCnJAkpjjQipPBt5iVAncE735wzDe6oDnY2o7dQ' | |
RANULFO_KEY='EOS8meQcpWQyttdHcbfoBCViKkcbYhaKiBiXxQpQjRLgcxbT5N8yX' | |
KARLA_KEY='EOS7Nmd4DzUk65sF6nENzq5JhBG4jYTANtbkkMmHqXysQ9pFxWhxs' | |
CUDUCOS_KEY='EOS6hrN2eobdb35yeozi1SHzwWGvNQwnN1vUFZgQWR4m1qum5yCHT' | |
function create_eos_account () { | |
$cleos create account bespiral $1 $2 $2 | |
$cleos push action eosio.token issue '[ "'$1'", "10.0000 EOS", "initial stake" ]' -p eosio | |
} | |
function unlock_wallet () { | |
echo "unlocking wallet..." | |
$cleos wallet unlock --password $WALLET_PASSWORD | |
sleep .5 | |
} | |
function initialize () { | |
echo "setup wallet" | |
$cleos wallet import $EOSIO_PRIVATE_KEY | |
$cleos wallet import $EOSIO_TOKEN_PRIVATE_KEY | |
echo "deploy bios and token..." | |
$cleos set contract eosio $CONTRACTS_PATH/eosio.bios -p eosio | |
$cleos create account eosio eosio.token $ROOT_KEY_OWNER $ROOT_KEY_ACTIVE | |
$cleos set contract eosio.token $CONTRACTS_PATH/eosio.token -p eosio.token | |
$cleos push action eosio.token create '[ "eosio", "1000000000.0000 EOS", 0, 0, 0]' -p eosio.token | |
sleep .5 | |
echo "creates bespiral account with stake..." | |
$cleos create account eosio $ROOT_ACCOUNT $ROOT_KEY_OWNER $ROOT_KEY_ACTIVE | |
$cleos push action eosio.token issue '[ "'$ROOT_ACCOUNT'", "1000.0000 EOS", "initial stake" ]' -p eosio | |
sleep .5 | |
} | |
function team_accounts () { | |
echo "creates test accounts with stakes..." | |
create_eos_account 'ranulfo' $RANULFO_KEY $RANULFO_KEY | |
create_eos_account 'lucca' $LUCCA_KEY $LUCCA_KEY | |
create_eos_account 'karla' $KARLA_KEY $KARLA_KEY | |
create_eos_account 'cuducos' $CUDUCOS_KEY $CUDUCOS_KEY | |
} | |
function setup_bespiral () { | |
echo "compile, deploy and initialize data for bespiral contract" | |
$eosiocpp -o $BESPIRAL_CONTRACT_PATH/bespiral.wast $BESPIRAL_CONTRACT_PATH/bespiral.cpp | |
$cleos set contract $ROOT_ACCOUNT $CONTRACT_PATH | |
$cleos push action $ROOT_ACCOUNT createcmm '["bespiral","bespiral","BeSpiral", "We Rule!", "21000000 $BESPIRAL_SYMBOL","0 $BESPIRAL_SYMBOL", "100 $BESPIRAL_SYMBOL", "10 $BESPIRAL_SYMBOL","$BESPIRAL_SYMBOL",1,"1000 $BESPIRAL_SYMBOL"]' -p bespiral | |
$cleos push action $ROOT_ACCOUNT netlink \ | |
'["0 $BESPIRAL_SYMBOL","leo","$ROOT_ACCOUNT", 0]' -p $ROOT_ACCOUNT | |
$cleos push action $ROOT_ACCOUNT netlink \ | |
'["0 $BESPIRAL_SYMBOL","lucca","$ROOT_ACCOUNT", 0]' -p $ROOT_ACCOUNT | |
$cleos push action $ROOT_ACCOUNT netlink \ | |
'["0 $BESPIRAL_SYMBOL","ranulfo","leo", 0]' -p $ROOT_ACCOUNT | |
$cleos push action $ROOT_ACCOUNT netlink \ | |
'["0 $BESPIRAL_SYMBOL","karla","ranulfo", 0]' -p $ROOT_ACCOUNT | |
$cleos push action $ROOT_ACCOUNT netlink \ | |
'["0 $BESPIRAL_SYMBOL","cuducos","karla", 0]' -p $ROOT_ACCOUNT | |
echo "verify error same link error..." | |
$cleos push action $ROOT_ACCOUNT netlink \ | |
'["0 $BESPIRAL_SYMBOL","leo","$ROOT_ACCOUNT", 0]' -p $ROOT_ACCOUNT | |
echo "verify user already in network error..." | |
$cleos push action $ROOT_ACCOUNT netlink \ | |
'["0 $BESPIRAL_SYMBOL","karla","leo", 0]' -p $ROOT_ACCOUNT | |
echo "verify invalid inviter error..." | |
$cleos push action $ROOT_ACCOUNT netlink \ | |
'["0 $BESPIRAL_SYMBOL","john","ananias", 0]' -p $ROOT_ACCOUNT | |
} | |
function free_tokens () { | |
echo "initial supply and free tokens..." | |
$cleos push action $ROOT_ACCOUNT issue \ | |
'["$ROOT_ACCOUNT", "1000000 $BESPIRAL_SYMBOL", "initial supply" ]' -p $ROOT_ACCOUNT | |
$cleos push action $ROOT_ACCOUNT issue \ | |
'["ranulfo", "5000 $BESPIRAL_SYMBOL", "free tokens" ]' -p $ROOT_ACCOUNT | |
$cleos push action $ROOT_ACCOUNT issue \ | |
'["leo", "5000 $BESPIRAL_SYMBOL", "free tokens" ]' -p $ROOT_ACCOUNT | |
$cleos push action $ROOT_ACCOUNT issue \ | |
'["lucca", "5000 $BESPIRAL_SYMBOL", "free tokens" ]' -p $ROOT_ACCOUNT | |
$cleos push action $ROOT_ACCOUNT issue \ | |
'["karla", "5000 $BESPIRAL_SYMBOL", "free tokens" ]' -p $ROOT_ACCOUNT | |
$cleos push action $ROOT_ACCOUNT issue \ | |
'["cuducos", "5000 $BESPIRAL_SYMBOL", "free tokens" ]' -p $ROOT_ACCOUNT | |
} | |
# unlock_wallet | |
# initialize | |
# team_accounts | |
# setup_bespiral | |
free_tokens |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment