FIP-38 Deployment and rollout guide
This document will contain the working instructions for deploying FIP 38 onto the main net version of the FIO core and FIO contracts. Any issues discovered will be included here.
FIP-38 – there are new fees for this FIP. as well as a new ram bump.
Fee : the Fee for this new action will be set identically to the transfer_fio_pub_key call.
2 FIO will be used for dev and rollout. the present fee for transfer pub key is 1.76xxxx FIO, this value should be fine to use for rollout (bps will vote on the fee quickly)….
RAM Bump : the RAM bump will be 0. since we are making an account other than ourselves state use is none. a ram bump value of 0 and standard FIO ram bump logic will be added to permit easy adaptation should a ram bump be needed in the future for any reason for this call.
Branches used in rollout testing
fio repo new getter and endoint added, branch name is indicated in dev spec
Actions added
newfioacc
in fio.system.
./clio -u http://$host push action eosio addaction '{"action":"newfioacc","contract":"eosio","actor":"eosio"}' --permission eosio
Fees added
new_fio_chain_account
set this same as transfer_fio_pub_key
./clio -u http://localhost:8879 push action -f fio.fee createfee '{"end_point":"new_fio_chain_account","type":"0","suf_amount":"2000000000"}' --permission fio.fee@active
Contracts for deployment
fio.system –
fio.token --
changes to other contracts my be evident as a result of the changes to fio.common.
Instructions for contract rollout
test net
run smoke tests (which should include the newfioacc action).
main net
verify that the newfioacc action is present in the get_actions for the main net
verify that the fee for new_fio_chain_account is present on chain.
verify that the token and system contracts contain the new code (or that they match test net if this is appropriate).
OR
call the newfioacc action on main net and verify the created account and the fees (QA smoke tests may be used to this.)
also call the new core endpoint and verify the function of the new endpoint on several API nodes.