The items below are just copied from a previous release. Needs to be updated!!
FIP-41 Rollout guide: FIP-41 Deployment and rollout guide
FIP-17a and FIP-17b Rollout guide: https://fioprotocol.atlassian.net/wiki/spaces/FD/pages/edit-v2/495517777
OLD:
Add new actions
./clio.sh push action eosio addaction '{"action":"listdomain","contract":"fio.escrow","actor":"eosio"}' -p eosio
...
./clio.sh push action eosio addaction '{"action":"retire","contract":"fio.token","actor":"eosio"}' -p eosio
Validation: run get_actions to confirm new actions
Testnet example: https://fio-test.bloks.io/msig/gws1hlwlqhq1/fioaddaction
Create the new fees
Mainnet fees shown below (removed nft createfee calls that were testnet only):
./clio.sh push action fio.fee createfee '{"end_point":"list_domain","type":"0","suf_amount":"304804402"}' -p fio.fee
...
./clio.sh push action fio.fee createfee '{"end_point":"set_marketplace_config","type":"0","suf_amount":"203202935"}' -p fio.fee
Validation: look at fio.fee fiofees table to confirm new fees
Testnet example: https://fio-test.bloks.io/msig/gws1hlwlqhq1/fiocreatefee
Create account and set permissions (Part 1)
(Part 1 must be done before Part 2 msigs can be created)
First, create a file called “payload.json” with the following permissions:
...
./clio.sh push action -j -s -d eosio newaccount newaccount_payload.json -p eosio@active
Validation: compare account permissions on bloks.io to existing system account
Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/crtfioescrow2
...
./clio.sh eosio setpriv '["fio.escrow",1]' -p eosio@active
Validation: get_account for fio.escrow should return: "privileged": true
Remove RAM limits on the new account, this may be called by eosio, and fio.system only!
./clio.sh push action eosio setnolimits '{"account":"fio.escrow"}' --permission eosio@active
Validation: get_account for fio.escrow should return: ”ram_quota": -1
Testnet example: https://fio-test.bloks.io/msig/un3emex141fp/setpriv.a
...
./clio.sh set contract eosio /opt/FIO/bin/Contracts/last/fio.system/ -p eosio
Validation: run fio.devtools “Contract Hashes” query to confirm ABI and contract hashes match.
Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/updfiosys
...
./clio.sh set contract fio.escrow /opt/FIO/bin/Contracts/last/fio.escrow/ -p fio.escrow
Validation: run fio.devtools “Contract Hashes” query to confirm ABI and contract hashes match.
Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/crtfioesc
...
./clio.sh set contract fio.address /opt/FIO/bin/Contracts/last/fio.address/ -p fio.address
./clio.sh set contract fio.reqobt /opt/FIO/bin/Contracts/last/fio.request.obt/ -p fio.reqobt
./clio.sh set contract fio.token /opt/FIO/bin/Contracts/last/fio.token/ -p fio.token
./clio.sh set contract fio.treasury /opt/FIO/bin/Contracts/last/fio.treasury/ -p fio.treasury
./clio.sh set contract fio.staking /opt/FIO/bin/Contracts/last/fio.staking/ -p fio.staking
Validation: run fio.devtools “Contract Hashes” query to confirm ABI and contract hashes match.
Initialize the Marketplace Account (must be done after escrow contract is set)
...
TESTNET: ./clio.sh push action fio.escrow setmrkplcfg '{"actor":"p325sqluvj4u", "listing_fee": "5000000000", "commission_fee": 3, "max_fee": "1000000000", "e_break": 0}' -p eosio@active
MAINNET: ./clio.sh push action fio.escrow setmrkplcfg '{"actor":"q3k31xlj413z", "listing_fee": "5000000000", "commission_fee": 3, "max_fee": "1000000000", "e_break": 0}' -p eosio@active
Validation: check fio.escrow mrkplconfigs table to confirm account was added
Testnet example: https://fio-test.bloks.io/msig/bsbdk2lectan/setmrkplcfg
...