Marketplace Dev Net Rollout Verification

Purpose --

The purpose of this document is to capture the activities performed in the validation of the contract rollout procedures associated with the marketplace project.

 

 

Local Development Box verification of rollout commands

We will set up a local dev box with the main net versions, then we will execute the marketplace commands to upgrade the contracts as necessary for test net and main net, all issues will be documented and resolved.

Main Net versions

fio.test release/2.6.x_3.2.x

fio.contracts release/2.6.x

fio release/3.2.x-dev

fio.devtools release/2.6.x_3.2.x

Marketplace versions

fio - release/3.3.x-dev

fio.contracts - release/2.7.x

fio.test - release/2.7.x_3.3.x

fio.devtools - release/2.7.x_3.3.x

fiosdk_typescript - release/1.6.x

Commands used

Add actions

clio -u http://localhost:8889 push action eosio addaction '{"action":"listdomain","contract":"fio.escrow","actor":"eosio"}' --permission eosio

clio -u http://localhost:8889 push action eosio addaction '{"action":"cxlistdomain","contract":"fio.escrow","actor":"eosio"}' --permission eosio

clio -u http://localhost:8889 push action eosio addaction '{"action":"buydomain","contract":"fio.escrow","actor":"eosio"}' --permission eosio

clio -u http://localhost:8889 push action eosio addaction '{"action":"setmrkplcfg","contract":"fio.escrow","actor":"eosio"}' --permission eosio

clio -u http://localhost:8889 push action eosio addaction '{"action":"cxburned","contract":"fio.escrow","actor":"eosio"}' --permission eosio

clio -u http://localhost:8889 push action eosio addaction '{"action":"xferescrow","contract":"fio.address","actor":"eosio"}' --permission eosio

Fee commands

clio -u http://localhost:8889 push action -f fio.fee createfee '{"end_point":"list_domain","type":"0","suf_amount":"321768535"}' --permission fio.fee@active

clio -u http://localhost:8889 push action -f fio.fee createfee '{"end_point":"cancel_list_domain","type":"0","suf_amount":"162975491"}' --permission fio.fee@active

clio -u http://localhost:8889 push action -f fio.fee createfee '{"end_point":"buy_domain","type":"0","suf_amount":"162975491"}' --permission fio.fee@active

clio -u http://localhost:8889 push action -f fio.fee createfee '{"end_point":"set_marketplace_config","type":"0","suf_amount":"162975491"}' --permission fio.fee@active

Deploy Sys contract

clio -u http://localhost:8889 set contract eosio ~/fio.contracts/build/contracts/fio.system fio.system.wasm fio.system.abi --permission eosio@active

Create escrow contract

clio -u http://localhost:8889 create account eosio fio.escrow FIO7isxEua78KPVbGzKemH4nj2bWE52gqj8Hkac3tc7jKNvpfWzYS FIO7isxEua78KPVbGzKemH4nj2bWE52gqj8Hkac3tc7jKNvpfWzYS -p eosio@active

Set account permissions

clio -u http://localhost:8889 push action fio.token issue '["fio.escrow","10000.000000000 FIO","memo"]' -p eosio@active

clio -u http://localhost:8889 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

clio -u http://localhost:8889 push action eosio setpriv '["fio.escrow",1]' -p eosio@active

clio -u http://localhost:8889 push action eosio setnolimits '{"account":"fio.escrow"}' --permission eosio@active

Set the Escrow contract

clio -u http://localhost:8889 set contract fio.escrow ~/fio.contracts/build/contracts/fio.escrow fio.escrow.wasm fio.escrow.abi --permission fio.escrow@active

Set other marketplace modified contracts

#fio.address
clio -u http://localhost:8889 set contract fio.address ~/fio.contracts/build/contracts/fio.address fio.address.wasm fio.address.abi --permission fio.address@active
#fio.request.obt
clio -u http://localhost:8889 set contract fio.reqobt ~/fio.contracts/build/contracts/fio.request.obt fio.request.obt.wasm fio.request.obt.abi --permission fio.reqobt@active
#fio.token
clio -u http://localhost:8889 set contract fio.token ~/fio.contracts/build/contracts/fio.token fio.token.wasm fio.token.abi --permission fio.token@active
#fio.treasury
../fio/build/bin/clio -u http://localhost:8889 set contract fio.treasury /Users/edr/repos/fio.contractsMKTPLC/build/contracts/fio.treasury fio.treasury.wasm fio.treasury.abi --permission fio.treasury@active
#fio.staking
../fio/build/bin/clio -u http://localhost:8889 set contract fio.staking /Users/edr/repos/fio.contractsMKTPLC/build/contracts/fio.staking fio.staking.wasm fio.staking.abi --permission fio.staking@active

Init the marketplace config

#to satisfy dev net validation, we must create the 5ufabtv13hv4 account!!!!

clio wallet import --private-key 5KePj5qMF7xvXZwY4Tnxy7KbDCdUe7cyZtYv2rsTgaZ7LBuVpUc -n fio

clio -u http://localhost:8879/ create account eosio 5ufabtv13hv4 FIO77rFFByyLycsrbC5tH1CXqddZdgkDuTYDbCc2BoGp5hdnU59f7 FIO77rFFByyLycsrbC5tH1CXqddZdgkDuTYDbCc2BoGp5hdnU59f7

#init the marketplace config

../fio/build/bin/clio -u http://localhost:8889 push action fio.escrow setmrkplcfg '{ "actor":"5ufabtv13hv4", "listing_fee": "5000000000", "commission_fee": 6, "max_fee": "1000000000", "e_break": 0}' -p eosio

 

Commands were supplied by Thomas. contained in 10 files

Setup for verification

Marketplace versions were built and archived for use during the upgrade.

The local dev box was set up with the following versions and the chain was started.

Then the commands supplied by Thomas were executed to perform the upgrade to the marketplace version of the contracts.

Verification of installed contracts

Smoke tests were run and these passed after discovery of a couple of missing elements in the “load the rest of the affected contracts”.

the smoke tests run were:

test file – testnet-smoketest.js.

test run – “Domain Marketplace: List domain and cancel domain listing"