Jenkins and Ruby

Jenkins integrates well with the Ruby toolchain for common tasks that many Ruby developers are already running locally. Tasks such as executing RSpec or Cucumber, generating documentation, running code analysis tools and deploying Ruby software can all be done through Jenkins.

Integrating test results

Many tools, like Cucumber, can natively output JUnit-formatted XML which integrates by default into Jenkins via the "Publish JUnit test result report" Post-build Action. For tools which do not generate the appropriately formatted XML by default, there are gems which add the necessary formatters, such as ci_reporter.

Configured JUnit post-build action

By integrating the test reports into Jenkins, you can generate trends and reports. There are other plugins, such as the Email Ext plugin which can also make use of these machine-readable test reports to send email notifications with only the failing test cases listed.

Trending RSpec test reports

Using plugins such as the Cucumber Test Result plugin improve the integration and discoverability of successful/unsuccessful Cucumber scenarios.

By integrating these tools into Jenkins, team members no longer need to attempt to parse thousands of lines of console output, but instead can more easily find the important information about a build.

Presentations

Other presentations

Jenkins ♥ Ruby Articles

thediscoblog.com

atomic-penguin.github.io

www.cryptocracy.com

Ruby plugins for Jenkins

publishes XML formatted test reports (generated by tools like ci_reporter, cucumber) for trending and analysis

incorporates the output from the Brakeman security scanner for Rails projects

adds Rake invocation as a build step

reports for Jenkins. Rcov, Rails stats, Rails notes and Flog.

build RubyMotion projects from within Jenkins

integrate and report from Cucumber executions