Mongoman
Configures and starts local or distributed MongoDB clusters. This library can be used just for your tests, or you can use it as a core component in your project.
Features
- [x] Configure replica sets
- [x] Starts and manages
mongod
processes through Docker: no Erlang ports - [ ] Configure sharded clusters
- [ ] Temporarily remove a node from a replica set to rebuild big indexes (WIP)
Installation
Add mongoman
to your list of dependencies in mix.exs
:
def deps do
[{:mongoman, "~> 0.1.6"}]
end
Examples
Starts a local replica set named "my_repl_set"
with 5 members:
config = %ReplicaSetConfig{id: "my_repl_set", members: [
%ReplicaSetMember{id: 0},
%ReplicaSetMember{id: 1},
%ReplicaSetMember{id: 2},
%ReplicaSetMember{id: 3},
%ReplicaSetMember{id: 4}
]}
{:ok, pid} = Mongoman.ReplicaSet.start_link(config)