Skip to content

Latest commit

 

History

History
56 lines (36 loc) · 1.44 KB

DEVELOPMENT.md

File metadata and controls

56 lines (36 loc) · 1.44 KB

Building from Source

You can build the Raftify source code on macOS, Windows, and Linux.

Use following command to clone this repository,

❯ git clone --recursive https://github.com/lablup/raftify.git

If you already cloned it and forgot to initialize the submodules, execute the following command:

❯ git submodule update --init

Development Environment Setup

Test

You can run the test codes of Raftify in parallel using nextest.

To install nextest,

❯ cargo install cargo-nextest

And run the tests by the following command.

❯ cargo nextest run

⚠️ Note this following issue on macOS.

precommit hook setup

You can use pre-commit hooks with the following configuration. By installing this hook, you can perform code formatting and lint automatically before creating commits.

❯ pip install pre-commit --break-system-packages
❯ pre-commit install

Features

You can build Raftify with the following features.

By enabling or disabling the features below, you can include only the necessary dependencies and source code in the build.

  • inmemory_storage: In-memory log storage.
  • heed_storage: Heed log storage.
  • rocksdb_storage: RocksDB log storage.
  • tls: Enable TLS encryption for Raft server and client.