Skip to content
This repository has been archived by the owner on Nov 11, 2017. It is now read-only.

thoughtbot/report_card

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DEPRECATED

Thoughtbot is no longer supporting this project. We haven’t used Integrity in a while, and report_card is deeply tied to it.

However, we still recommend metric_fu, which has only gotten more robust over the years. You may also want to check out the Hudson metric_fu plugin.

report_card

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

Features

  • 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

Requirements

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

Usage

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>
  ServerName  metrics.thoughtbot.com
  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
  </DirectoryMatch>
</VirtualHost>

Setup

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
url: http://metrics.thoughtbot.com

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

Testing

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!

Thanks

To thoughtbot for supporting this project.

About

metrics and CI are for A students.

Resources

License

Code of conduct

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Languages