cruise_control.rb campfire plugin

Posted by Tammer Saleh

Apr 19

We’ve been somewhat unhappy with our current Cerberus installation, so we’ve decided to jump on the CC.rb bandwagon. Though there were a couple of problems when adding projects (I’ll try to expand on that in another post), the overall experience was pretty good—installation was a breeze, and the plugin system makes extending it dead simple.

As proof…

Campfire plugin for cruise_control.rb

A builder plugin for CruiseControl.rb that sends build notices to campfire chat rooms.

Download

You can get the tarball here, or grab it from svn at http://svn.thoughtbot.com/plugins/cruise_control.rb/campfire_notifier. You can even track it via externals:

svn propset svn:externals 'campfire_notifier http://svn.thoughtbot.com/plugins/cruise_control.rb/campfire_notifier' builder_plugins/installed

Installation

  1. Create a Campfire account that you will use for sending notifications.
  2. Copy campfire_notifier_plugin folder to builder_plugins/installed (or use the externals method above)
  3. Modify builds/your_project/cruise_config.rb by adding the following lines:
1
2
3
4
5
6
7
8
9
10

Project.configure do |project|
  ...
  project.campfire_notifier.domain   = 'thoughtbot'
  project.campfire_notifier.room     = '38367'
  project.campfire_notifier.ssl      = false
  project.campfire_notifier.username = 'sender@gmail.org'
  project.campfire_notifier.password = 'sender_password'
  ...
end

Comments on this post

UnderpantsGnome

Apr 19

UnderpantsGnome said,

I threw together an rcov nag plugin that’s nice for nagging the test slackers.

rcov_notifier

Tammer Saleh

Apr 19

Tammer Saleh said,

Hey, um, UnderpantsGnome,

Looks like a very cool plugin. ThoughtWorks should really supply a directory of available 3rd party plugins. They’re definitely the main selling point of cruise_control.rb.

Tammer

UnderpantsGnome

Apr 19

UnderpantsGnome said,

Haha, people always respond to me like that.. Especially the ones who don’t watch South Park ;-)

I believe that they are going to be adding it to the core, I know I was asked to sign their contributors agreement. I just don’t know when they will be doing it.

Alexey Verkhovsky

Apr 19

Alexey Verkhovsky said,

It’s going to happen Real Soon Now™.

On a more serious note, we have a story for version 1.2 that involves setting up some sort of distribution for 3rd party plugins.

— Alex Verkhovsky CC.rb team

JJB

Apr 19

JJB said,

Cool stuff. It doesn’t seem to be working for me though. Why do you have your room set to “38367”, is that the name of the room, or some sort of canonical ID? If so, where can I find my room’s ID?

Thanks.

Tammer Saleh

Apr 19

Tammer Saleh said,

Hi JJB,

Those were just example configuration options. The room id should be in the url when you’re in the campfire room.

JJB

Apr 19

JJB said,

Ohhh, I see. I always use the stand-along OS X client, Pyro, so I don’t see the URLS.

It’s still not working for me :(. Here is my config:

Project.configure do |project| project.campfire_notifier.domain = 'dp-tech' project.campfire_notifier.room = '77966' project.campfire_notifier.ssl = false project.campfire_notifier.username = 'ffog_build@jjb.cc' project.campfire_notifier.password = '#####' end

I triple checked that the user and pass were correct.

Any ideas?

Tammer Saleh

Apr 19

Tammer Saleh said,

The config looks fine to me. The plugin is really just a thin wrapper around marshmallow.rb, so I suggest you try writing a test script to login to campfire with that library.

JJB

Apr 19

JJB said,

I see. Do I need to install marshmallow separately, or is it included with the plugin?

Marze

Apr 19

Marze said,

I’m actually building something similar but around Tinder (The unnoficial Campfire api), why don’t you try it??

Cool use by the way

court3nay

Apr 21

court3nay said,

woot, my li’l marshmallow really gets around :) good to see he’s still useful to people.


Sorry, comments are closed for this article.

© 2000 - 2009 by thoughtbot, inc.
written by a bushel of tiny robots