wizeline / CA-Microservices-Go

This project is a template generator based on Golang focused on a Rest-API.
1 stars 0 forks source link

Code Accelerator Golang Microservices (CAM-Go)

This project is a template generator based on Golang mainly focused on microservices.
The purpose is to accelerate the development by providing a base solution avoiding starting from scratch.

Requirements

Architecture

High-Level Architecture Diagram. (to be defined)

Features

Generate Mocks with Mockery

CAM-Go applications use Mockery to generate mocks. This tool is able to handy generate and mantain your mock objects. It uses the stretchr/testify/mock package. Moreover, reduce the boilerplate code over mocking.

To add new mock objects please edit the Makefile file look for the mocks target, and according to the Mockery's documentation add the specific rule.

Before start, please make sure to install mockery command line tool.

To automatically generate mocks, run make mocks at the top level of the project/repository.

Local Dev

CAM-Go uses Docker and Docker-compose to generate a containerized environment with tools(make statements) to speed up development time. Ensure you have configured the services environment variables in the deployments/.env file.

Run make help to learn how to use all commands to handle your application environment.