Skip to content


Subversion checkout URL

You can clone with
Download ZIP
tree: 5b49934afa
Fetching contributors…

Cannot retrieve contributors at this time

82 lines (56 sloc) 2.122 kB


Automatic building and reporting to campfire of metrics with metric_fu through integrity.


  • Generates metric_fu sites for each project and ties them together on one page
  • Notifies campfire of metric stats given that they have changed since the last run


  • integrity v0.1.10
  • metric_fu
  • tinder
  • your favorite webserver


Run: rake grade

Note: It’s probably best to do this on a cron job.

If you’re running private projects, make sure to configure your webserver to block
others from looking at your results. If you’re using Apache to host your report_card
site, here’s what your VirtualHost could look like:

<VirtualHost *:80>
  DocumentRoot /home/ci/report_card/_site

  <DirectoryMatch /home\/ci\/report_card\/_site\/(archive|private|scores)>
    AuthName "Metrics"
    AuthUserFile /home/ci/.htpasswd
    AuthGroupFile /dev/null
    AuthType basic
    require valid-user


Have a config.yml file in your report_card directory with the following info:

# This is the path to integrity's config.yml file.
integrity_config: /home/ci/integrity/config.yml

# Where you want the site to be placed that metric_fu creates
site: /home/ci/report_card/_site

# A regular expression for project names you wish to ignore
# You need to surround this with quotes since YAML is picky
ignore: '[^shoulda]|1\.9'

# The location of your site, for campfire reporting

# Set to true if you would like to skip notifying campfire when metrics have changed
skip_notification: false


Run the test suite with rake.

There’s a cucumber integration test that is run with cucumber. This isn’t exactly fast since it:

  1. Sets up integrity
  2. Adds projects into integrity
  3. Clones them from github
  4. Builds the project’s tests
  5. Runs metric_fu on the project’s tests
  6. Generates the report_card site.

However, it should all pass and work. If not, open up an issue!


To thoughtbot for supporting this project.

Jump to Line
Something went wrong with that request. Please try again.