Add new actions
./clio.sh push action eosio addaction '{"action":"listdomain","contract":"fio.escrow","actor":"eosio"}' -p eosio
...
./clio.sh push action fio.fee createfee '{"end_point":"remove_all_nfts","type":"1","suf_amount":"289124578"}' -p fio.fee
Create account and set permissions
...
(Part 1)
(Part 1 must be done before Part 2 msigs can be created)
(OLD!) These are what we used in our devnet and are not correct for Testnet/Mainnet.
Create the new account
./clio.sh create account eosio fio.escrow FIO7isxEua78KPVbGzKemH4nj2bWE52gqj8Hkac3tc7jKNvpfWzYS FIO7isxEua78KPVbGzKemH4nj2bWE52gqj8Hkac3tc7jKNvpfWzYS -p eosio@active
Set the account permissions
./clio.sh set account permission fio.escrow active '{"threshold": 1,"keys": [{"key": "FIO7isxEua78KPVbGzKemH4nj2bWE52gqj8Hkac3tc7jKNvpfWzYS","weight": 1}],"accounts": [{"permission":{"actor":"fio.escrow","permission":"eosio.code"},"weight":1}]}}' 4000000000 owner -p fio.escrow@owner
(NEW!!) This is how bohdan did it:
First, create a file called “payload.json” with the following permissions:
Code Block |
---|
{
"creator": "eosio",
"name": "fio.escrow",
"owner": {
"threshold": 1,
"keys": [],
"accounts": [{
"permission": {"actor": "eosio", "permission": "active"},
"weight": 1
}],
"waits": []
},
"active": {
"threshold": 1,
"keys": [],
"accounts": [{
"permission": {"actor": "eosio", "permission": "active"},
"weight": 1
},
{
"permission": {"actor": "fio.escrow", "permission": "eosio.code"},
"weight": 1
}],
"waits": []
}
} |
Next create a new account with those permissions.
./clio.sh push action -j -s -d eosio newaccount newaccount_payload.json -p eosio@active
Create account to be privileged and set RAM limits. (Part 2)
Set the account to be privileged.
...