The goal of Diggit is to provide a tool capable of generating insights about code changes in the context of all those that came before them. This tool would be run in the code review process to aid decisions about whether the proposed change will have a positive impact on the system.
Broadly speaking, the tool should be able to detect when...
- Files show signs of growing complexity
- Changes suggest the current architecture is hindering development
- Past modifications have included changes that are absent in the proposed
- Modifications are made to known problem hotspots
rackup will boot the development API server. Running
trigger the development BrowserSync environment.
Production bundles should not be used in development- instead, boot BrowserSync which will start an HTTP proxy from port 4567 to 9292. This allows the API server to listen on 9292 while BrowserSync serves front-end assets.
At time of writing diggit is deployed on a Digital Ocean droplet, with plans to containerize the deployment process. The server is configured with Phusion Passenger, instrumented by capistrano.
Environment variables should be configured on the server, with any missing variables set to fail the boot.
bundle task to produce production front-end assets.
Rollbar is configured to listen for backend exceptions.
The listener is invoked via the
This is the prod OAuth application for GitHub auths. Redirects are configured on
To interact with PR's, diggit must have an GitHub account.