This challenge was focusing on using an 'Event-Carried State Transfer'concept where the product gets inserted/updated/deleted and it dispatches and event, the other (product) api(s) will listen and act by receiving the event and doing something about it (updating its information, or making the produc avaliable/unavaliable for use)
- In order do keycloack work properly on docker and localhost enviroment add
127.0.0.1 keycloakto your /etc/hosts file (Unix plataform, or find the hosts file and add it to windows plataform if this step is not taken, autentication will not work
docker-compose upwill initalize databases, rabbitmq and keycloak- The module skip-cart will make the Cart API run
- The module skip-product will make the Product API run
cd skip-product
mvn spring-boot:run
cd skip-cart
mvn spring-boot:run
- Both apis are visible on swagger on at
http://localhost:8081/swagger-ui.html(Cart API) andhttp://localhost:8082/swagger-ui.html(Product API) use useruserand passpasson both to authenticate.
- run
start-local.shto start an automated script that generate docker container for both apis and make everthing up and running - run
stop-local.shto stop it
