full-cli-rs in Rust.
- Generate keys
- Setup network
- Run serve on each node in network
- Run transactions against networks (tester)
- Collect metrics (TPS, TTF, &etc.)
- Parse metrics
The idea is this could run as a CI/CD task.
https://github.com/Fantom-foundation/fantom-rfcs
Install the latest version of Rust. We tend to use nightly versions. CLI tool for installing Rust.
We use rust-clippy linters to improve code quality.
There are plenty of IDEs and other Rust development tools to consider.
# Install Rust (nightly)
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain nightly
# Install cargo-make (cross-platform feature-rich reimplementation of Make)
$ cargo install --force cargo-make
# Install rustfmt (Rust formatter)
$ rustup component add rustfmt
# Install clippy (Rust linter)
$ rustup component add clippy
# Clone this repo
$ git clone https://github.com/Fantom-foundation/full-cli-rs && cd full-cli-rs
# Run tests
$ cargo test
# Format, build and test
$ cargo make
# Run three nodes in a test configuration in three separate consoles:
$ RUST_LOG=debug cargo run -- -c config/config.toml -p 10001 -n 11001
$ RUST_LOG=debug cargo run -- -c config/config.toml -p 10002 -n 11002
$ RUST_LOG=debug cargo run -- -c config/config.toml -p 10003 -n 11003