This is a dispatcher component that is responsible for receiving webhooks from git providers and queueing actions to be taken as a response to events received. This component needs to be highly available to receive webhooks and other requests in large volumes.
Building
Makefile
# install dependencies
make deps
# generate wire injectors
make wire
# check linting
make lint
# build binary
make build
Docker usage
docker build --rm --tag=photon .
A sample shell file is also included to automate the build steps. build.sh in the root directory can be used for special adding build steps.
Hot reloading
This project is configured to support fresh runner which reloads the application actively whenever any golang file (or any other file configured for hot reloading) changes. This is very useful while actively developing as it removes the need to recompile and run the application again and again. runner.conf in the root directory is used to configure the fresh runner. More information can be viewed on their github project