A Non-Blocking REST API developed in Java 11, Spring Boot 2 and Spring WebFlux to manage the Inventory of an Industry.
- Spring Boot
- Spring WebFlux
- Onion Architecture
- MongoDB
- Testcontainers
- Jacoco
- Archunit
- Springdoc
- Localstack
- Amazon S3
- Terraform
- Execute docker containers
docker-compose up -d
- In order to execute AWS S3 locally, it is necessary to export the following environment variables:
export AWS_ACCESS_KEY_ID=test
export AWS_SECRET_ACCESS_KEY=test
- Terraform CLI
- AWS Account
- Mongo Atlas Account
- GitHub Account
- Create or fork a GitHub repository with this code
- Clone the repository locally
- inside the
terraform
folder:- Add a new file called
prod.tfvars
- Add values to all required terraform variables
- Run
terraform plan -var-file=prod.tfvars
- Run
terraform apply -var-file=prod.tfvars -auto-approve
- Add a new file called
- Trigger the
Continous Deployment
workflow in GitHub - Access the ALB endpoint
- Be Happy!