You can use this project for:
- testing cosmos-sdk based applications - test
- launching & maintaining validator subnet - playbook
While this project does almost of its jobs in Docker instances, there is a few additional requirements (other than the basic packages on Debian GNU/Linux).
You can install the requirements by:
sudo apt install docker-compose cmake jq
At first, you need to configure the project by:
build_dir=build # the folder which you want to output the artifacts into
cmake -S . -B $build_dir
After that, you may change some variables by:
variable_name=TEST_NUM_REGIONS # the name of variable
variable_value=7 # set the value of variable to
cmake -S . -B $build_dir -D$variable_name=$variable_value
You can provide as many changes as you want, and the changes would be accumulated. The changes are cached so it persists forever until you override the change or remove your build directory.
You can see the list of variables which you may want to set:
cmake -S . -B $build_dir -L
You may also want to read the descriptions:
cmake -S . -B $build_dir -LH
Now you may trigger some target. The core targets would be:
build
: build the project and make the binaries (e.g. daemon and cosmovisor)
You can trigger a target by:
target_name=build
cmake --build $build_dir --target $target_name
You can trigger all the tests by:
ctest --test-dir $build_dir
Or, a certain test by:
test_name=upgrade_chain_auto
ctest --test-dir $build_dir -R $test_name