This application provides collection and visualization of pull request data from Github. It is a Rails 5 application
There are two sides to this application:
-
Data Collection
- Using the whenever gem (and thus cron) data is collected from Github on a periodic basis. See config/schedule.rb
- The GithubDataCollector model implements the retrieval of data.
- The GithubDataFile model implements the persistence of data
- Data is stored in dir archive
-
Data Visualization
- A Rails server using Bootstrap and Google Charts to gleen data about the lifecycle of a PR, author or repo etc.
An example instance of this application is running for evaluation purposes - take a look!
Github server URL and username.
In theory, this can be tweaked to work with a github server hosted on premise - but this is not tested at this time.
Running the rails server in production typically requires the RAILS_SERVE_STATIC_FILES and SECRET_KEY_BASE variables to be set. E.G.
RAILS_SERVE_STATIC_FILES=1 SECRET_KEY_BASE=secret RAILS_ENV=production rails s
Tests are written with RSpec so to run tests simply:
rails spec