practice rust cqrs.
Install protobuf so that you can compile Proto files according to your environment.
Migration uses golang-migrate.
$ docker run -v {{ migration dir }}:/migrations --network host migrate/migrate \
-path=/migrations/ -database mysql://{user}:{password}@localhost:3306/rust up
## Widows + Git Bash example
// CLI
migrate -source file://$(pwd -W)/resources/rds-reader/migrations -database "mysql://rust:rust@tcp(localhost:3306)/rust" up
migrate -source file://$(pwd -W)/resources/rds-reader/migrations -database "mysql://rust:rust@tcp(localhost:3306)/rust" down
// Docker
docker run -v $(pwd)/migrations:/migrations --network host migrate/migrate \
-path=/migrations/ -database "mysql://rust:rust@tcp(localhost:3306)/rust" up
docker run -v $(pwd)/migrations:/migrations --network host migrate/migrate \
-path=/migrations/ -database "mysql://rust:rust@tcp(localhost:3306)/rust" down
$ cd path/to/rust-actor-model-practice
$ cargo run --package read-http-api
$ cd path/to/rust-actor-model-practice
$ cargo run --package write-grpc
- Mac/Linux
$ export ENV=develop
- Windows
$ set ENV=develop
$ cd path/to/rust-actor-model-practice
$ cargo run --package migrator
Once you are done, do the following.