Skip to content

Instantly share code, notes, and snippets.

@shingonu
Last active May 18, 2020 07:48
Show Gist options
  • Save shingonu/49cf07708122e64efc222b6ac49dee9e to your computer and use it in GitHub Desktop.
Save shingonu/49cf07708122e64efc222b6ac49dee9e to your computer and use it in GitHub Desktop.
DATADIR_MANAGERS=$HOME/.pls.staking/datadir.0 # to deploy manager contracts
MANAGERS_JSON=$HOME/.pls.staking/managers.json # Manager Contracts
JSONRPC=ws://13.231.233.189:8546
API_SERVER=https://dashboard-api.tokamak.network/rinkeby
PASSWORD=$DATADIR_MANAGERS/pwd.pass
echo "Cleanup files"
rm -rf $DATADIR_MANAGERS $MANAGERS_JSON
mkdir -p $DATADIR_MANAGERS
make geth
touch $PASSWORD
#######################
# SETUP MANAGER CONTRACTS (in DATADIR_MANAGERS)
#######################
# 0. unlock $KEY0 using geth account importKey
build/bin/geth account import-key $KEY0 --datadir $DATADIR_MANAGERS <<EOF
EOF
# 1. deploy managers
build/bin/geth manage-staking deploy-managers 10 1.5 \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
# 2. test: mint TON (for each operator...)
build/bin/geth manage-staking mint-ton $ADDR1 1000.0 \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
build/bin/geth manage-staking mint-ton $ADDR2 1000.0 \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
build/bin/geth manage-staking mint-ton $ADDR3 1000.0 \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
build/bin/geth manage-staking mint-ton $ADDR4 1000.0 \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
build/bin/geth manage-staking mint-ton $ADDR5 1000.0 \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
build/bin/geth manage-staking mint-ton $ADDR6 1000.0 \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
build/bin/geth manage-staking mint-ton $ADDR7 1000.0 \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
build/bin/geth manage-staking mint-ton $ADDR8 1000.0 \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
build/bin/geth manage-staking mint-ton $ADDR9 1000.0 \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
# 3. deploy PowerTON contract
build/bin/geth manage-staking deploy-powerton 300s \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
# 4. get managers (and export to JSON file)
build/bin/geth manage-staking get-managers $MANAGERS_JSON \
--datadir $DATADIR_MANAGERS
# 5. register managers address (using exported JSON file)
MANAGERS="$(cat $MANAGERS_JSON)"
curl -X POST \
-H "Content-Type: application/json" \
--data "$MANAGERS" \
"$API_SERVER/managers"
#######################
# START POWER TON GAME
#######################
# 1. start powerton game
build/bin/geth manage-staking start-powerton \
--datadir $DATADIR_MANAGERS \
--rootchain.url $JSONRPC \
--unlock $ADDR0 \
--password $PASSWORD \
--rootchain.sender $ADDR0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment