RESTful API built with ASP.NET Core v2.2. The main purpose was to fix and share how to create RESTful service using maintainable architecture where modules decoupled and allows features to be added easily.
- ASP.NET Core 2.2 - for building WEB API;
- Entity Framework Core - for data access;
- Entity Framework In-Memory Provider - for testing purposes;
- AutoMapper - for object2object mapping;
Circle-CI is used as CI/CD pipeline where configuration is stored in Circle-CI config file and automatically executes JOBS defined in config.yml file when new commit to master branch is pushed to the server. Build job consist of listed below commands.
- Checkouts the latest source from master branch.
- Builds docker image using Dockerfile.
- Deploys docker image to Heroku.
In order to protect secrets used in deployment process HEROKU specific variables are stored as Circle-CI environment variables.
Navigate to https://minimarket-api.herokuapp.com/swagger to check the API definition.