Bunch of microservices creating taxi-service system. Feign clients are used for synchronous REST communications between microservices. Kafka is used for asynchronous communications. Flyway is used for migrations.
- Java 11
- run command ./mvnw spring-boot:build-image in terminal to build jars and then images from them with Spring boot
- or you may run ./mvnw spring-boot:build-image -DskipTests to skip tests while building images
- or you may run mvn spring-boot:build-image (-DskipTests) from the maven panel of IDEA
- then run docker compose-up in terminal (docker should be installed and running)
Import taxi-driver.postman_collection.json file to postman from postman-collection package of the project
- create client (client create)
- create driver (driver create)
- create order (client create order)
- check unassigned orders (driver get unassigned orders) - should return order created earlier
- check order's history (get orders history) - use id of created order as path variable
- update order (driver update order) use id of test order and next status - ASSIGNED
- update order (driver update order) use id of test order and wrong next status - CLOSED - you'll get exception
- check unassigned orders (driver get unassigned orders) - should return empty list as order has been assigned to a driver
- check order's history (get orders history) - use id of test order as path variable - should return order's history sorted by time of creation
- Congrats! You're awesome!