...
Note that to run any commands using the devnet tool, a chain must be running. When running the chain using fio.devtools start.sh, a local cluster of three virtual nodes (three nodeos processes, each using a separate port) is automatically started. In addition, devnet command may be scripted toone may script the following process;
Stop and clean any running chains using fio.devtools/start.sh
Build, and install fio as discussed in FIO LocalNet Release Notes.
Start the chain and build the contracts (see above)
Using the devnet tool, upgrade the nodes, devnet-a, devnet-b and devnet-c.
Stop all remote nodes using the command,
./devnet -f config.yml stop
. Note that fio-nodeos is started on startup/boot of nodesFor devnet-a, the config yaml file is a.yml
For devnet-b, the config yaml file is b.yml
For devnet-c, the config yaml file is c.yml
Upgrade and start the nodes with a built nodeos using the command,
./devnet -f config.yml -bin <Install Dir>/bin/nodeos upgrade
The FIO Install Dir is /home/ubuntu/fio/<Version Nbr>
For devnet-a, the config yaml file is a.yml
For devnet-b, the config yaml file is b.yml
For devnet-c, the config yaml file is c.yml
Start fiotop (located in /usr/local/bin and in path so can be started from anywhere)
Run any tests from a client (also discussed in FIO LocalNet Release Notes) against the boot node IP
...
Build, and install an updated version of the FIO chain as described in FIO LocalNet Release Notes.
Stop the current instance of FIO using fio.devtools start.sh, by nuking the chain
Start the updated instance of FIO using fio.devtools start.sh, with a new build of the contracts. Note, one may also run the updated chain , and if necessary, using the previous contracts version, then apply the release script to update the contracts.
Using the devnet tool, upgrade one of the remote nodes as follows,
Stop the remote node using the command, “./devnet -f config.yml stop”, i.e.
./devnet -f a.yml stop
.Upgrade the remote node using the command, “./devnet -f config.yml -bin <FIO Install Dir>/bin/nodeos upgrade”, i.e.
./devnet -f config.yml -bin /home/ubuntu/fio/3.4/bin/nodeos upgrade
Note, the upgrade command will push out a new nodeos binary to the remote server and that this may be accomplished without actually stopping the “old” chain.
Start fiotop (as fiotop is in the path, type fiotop and hit Enter).
Verify that the BPs continue to process blocks. Note that any stoppage will indicate a forking change. One may also montor the logs on any of the servers hosting block producers.
Run the smoke test from any client (against an api node, in this case the boot node).
Repeat this process for server b, i.e. the associated to b.yml.
Setup and Deployment (Cut from /wiki/spaces/FO/pages/114131133 to reduce duplication in readme, wiki, release procedures)
See Github Readme for usage documentation: https://github.com/dapixio/fio-devnet
...