public
Fork of relevance/smoke_signals
Description: CruiseControl.rb Campfire notifications
Homepage: http://opensource.thinkrelevance.com/wiki/smoke_signals
Clone URL: git://github.com/reagent/smoke_signals.git
Search Repo:
name age message
folder .gitignore Wed Apr 23 06:41:02 -0700 2008 Update documentation [reagent]
folder HISTORY Mon Apr 21 20:07:17 -0700 2008 Minor updates to README and HISTORY files [reagent]
folder README Wed Apr 23 06:41:02 -0700 2008 Update documentation [reagent]
folder Rakefile Wed Apr 23 06:29:43 -0700 2008 Improve installer; add USAGE when installer fails [reagent]
folder TODO Wed Apr 23 06:41:51 -0700 2008 Add TODO items [reagent]
folder USAGE Wed Apr 23 06:29:43 -0700 2008 Improve installer; add USAGE when installer fails [reagent]
folder bin/ Wed Apr 23 06:29:43 -0700 2008 Improve installer; add USAGE when installer fails [reagent]
folder config/ Fri Apr 18 00:35:12 -0700 2008 Implemented multi-room announcment functionality [reagent]
folder init.rb Mon Apr 21 20:02:45 -0700 2008 Convert to Gem and add installer [reagent]
folder lib/ Wed Apr 23 06:29:43 -0700 2008 Improve installer; add USAGE when installer fails [reagent]
folder test/ Wed Apr 23 06:29:43 -0700 2008 Improve installer; add USAGE when installer fails [reagent]
README
= Smoke Signals

== Description

A plugin for CruiseControl.rb offering the following features:
  * Sends notifications to a Campfire room with the build status (success, failure, fixed) along with a URL to the 
  build.
  * Detects and sends notifications of Subversion failures.
  * Supports different rooms per project from a single configuration file. 

== Installation

Download smoke_signals via git (git clone git://github.com/relevance/smoke_signals.git) or as a tarball 
(http://github.com/relevance/smoke_signals/tarball/master). Then, on your cruisecontrol.rb server:
 # rake package
 # sudo gem install pkg/smoke_signals_-<version>.gem
 # cd <CRUISE_ROOT_>
 # smoke_signals install
 # edit <CRUISE_ROOT>/config/smoke_signals.yml with your campfire specifics
 # restart CruiseControl.rb

== Configuration

The smoke_signals.yml configuration file allows you to configure the rooms for each individual CruiseControl
project.  Additionally, there is the concept of a 'default' room for an installation - any projects that do
not match a specific room will announce their messages to the default room.  A sample configuration:

    connection:
      subdomain: smokesig
      ssl?: false
      email: user@host.com
      password: secret
  
    rooms:
      Development: *
      Client:
        - ClientBuild
        - ClientCurrentRelease
      General: GeneralBuild

In this case, the projects 'ClientBuild' and 'ClientCurrentRelease' will announce messages to the 'Client' 
room. The project 'GeneralBuild' will announce messages to the 'General' Campfire room.  Any messages generated
from other projects will be announced into the 'Development' room - in this case the '*' designates it as the
default room.

== URLS

  * Home page: http://opensource.thinkrelevance.com/wiki/smoke_signals
  * git master: git://github.com/relevance/smoke_signals.git
  * CC.rb plugins documentation: http://cruisecontrolrb.thoughtworks.com/documentation/plugins

== LICENSE

Copyright (c) 2007-8 Relevance Inc. (Forked from http://rubyforge.org/projects/campfire-ccrb/)

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.