Skip to content

Commit

Permalink
update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
mopp committed Jun 25, 2018
1 parent 8dbb7bb commit 9a3f9ff
Showing 1 changed file with 39 additions and 3 deletions.
42 changes: 39 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,47 @@
# mizumochi
mizumochi is a tool to simulate unstable disk I/O for testing.
[![Crates.io](https://img.shields.io/crates/v/mizumochi.svg)](https://crates.io/crates/mizumochi)
[![Crates.io](https://img.shields.io/crates/d/mizumochi.svg)](https://crates.io/crates/mizumochi)
[![License: Apache](https://img.shields.io/badge/License-Apache%202.0-red.svg)](LICENSE-APACHE)
OR
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE-MIT)

mizumochi is a tool to simulate unstable disk I/O for testing stability/robustness of system.
The word unstable here means read/write speed is slowdown.

We assume mizumochi works on develop environment with target system.

## License
[zargony/rust-fuse](https://github.com/zargony/rust-fuse) are used to maps actual files in the given directory to files on the mountpoint.
*Note that some FUSE callbacks (e.g., link) are not implemented yet. (work in progress)*


## Install
You have to install [OSXFUSE](http://osxfuse.github.io) for macOS or [FUSE](http://fuse.sourceforge.net) for Linux before installing mizumochi.

```console
cargo install mizumochi
```


## Features
- Mode
+ Periodic
* The stable/unstable is toggled periodically.
- Interfaces
+ Command line interface (CLI)
* CLI is primary interface.
* Refers `mizumochi --help` in details.
+ HTTP API
* There are some TODOs.
* The config (e.g., speed, condition to switch stable/unstable) can be modified on runtime via this interface.

## Examples
```console
# Emulate files in `real_dir` at `emulated_dir` and the read/write speed is slowdown every 30 minutes for 10 minutes.
mizumochi /tmp/emulated_dir/ /tmp/real_dir/ --speed 1024KBps periodic --duration 10m --frequency 30m
```


## License
Licensed under either of

* Apache License, Version 2.0
Expand All @@ -15,8 +51,8 @@ Licensed under either of

at your option.

## Contribution

## Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.

0 comments on commit 9a3f9ff

Please sign in to comment.