Hi, ruby lovers.
I am glad to announce 0.3.0 release of Cerberus CI tool. This release is
claimed to be greatest step in Cerberus development.
Release 0.3.0 brings new cool features that were requested by Cerberus
users.
== Highlight whats new in current release.
-
Added support of Darcs VCS. Darcs is a modern distributed VCS and now
it is possible to use Darcs together with Cerberus.
To use it just add to configuration file following section
scm:
type: darcs
url: http://somerepourl -
Campfire is a team collaboration tool from 37Signals. As many rubyists
use it Cerberus team added publisher that allows sending Cerberus
notification right to Campfire rooms. To use it add to config
publisher:
campfire:
url: http://somelogin:[email protected]/room/51660
It is great when you favorite tools are integrated together.
-
Added changeset_url option. Trac is great tool and you could see
repository changes in your browser by url like this one
http://dev.rubyonrails.org/changeset/5317
Cerberus team added support of this feature. Now all notifications
contain link to browsable changeset.
To activate it just add Trac url to your config by following option.
changeset_url: http://dev.rubyonrails.org/changeset/It is REALLY cool when you favorite tool are integrated to each other
-
Added possibility to specify user_name and password for Subversion.
If your subversion repository is restricted by login/password you
could specify them in configuration.
Just add them to ‘scm’ section of configuration file
scm:
url: svn+ssh://somerepourl/trunk
user_name: svnurl
password: svn passsword
== What is Cerberus?
Cerberus is a Continuous Builder software. Cerberus could be
periodically run from any scheduler and check if application tests were
broken. If it happened then Cerberus would send notification to
developers.
== There are several CI solutions already present, why do you need to
use Cerberus?
Main advantages of Cerberus over other solutions are:
- Cerberus could be run on any machine not only where SVN repository
located. - Cerberus works not only for Rails projects, but for any other Ruby
projects as well as for other platforms (Maven2 for Java) - Cerberus is a multiplatform solution: it runs excellent both on *nix
and Windows. - Cerberus distributed via RubyGems, so it is very easy to install and
very easy to update to the latest stable version. Just do ‘gem install
cerberus’ - Cerberus very easy to start using. Just type ‘cerberus add
PROJECT_URL|PROJECT_DIR’ - Cerberus is lightweight solution: most of the time ruby process even
not runs - Rake run only in case if changes in project sources were
find.
To use Cerberus it is very easy. First install it. Easiest way to do it
with RubyGems package manager.
‘gem install cerberus’
or get Cerberus distribution package right from download page
http://rubyforge.org/frs/?group_id=1794&release_id=7533
then you need to add project that will be watched by Cerberus. Do it by
cerberus add (DIR|SVN_URL) APPLICATION_NAME=some_app
[email protected],[email protected]
as second parameter you could pass URL to subversion repository or
directory with working SVN folder.
Go to ~./cerberus and edit config.yml file (only once after installing
Cerberus). Enter your configuration options here like email server,
password, user_name and other options. See ActiveMailer description -
Cerberus uses it as notification layer. My config file looks like this
publisher:
mail:
address: mail.somesever.com
user_name: anatol
password: anatol
domain: somesever.com
authentication: login
Also check ~/.cerberus/config/<APPLICATION_NAME>.yml and make sure that
you have right options.
And then run Cerberus
cerberus build APPLICATION_NAME #Run project
or
cerberus buildall #Run all available projects
It will check out latest sources and run tests for your application. If
tests are broken - recipients will receive notifications.
But of course better run Cerberus automatically from Cron. Run Cerberus
for project each 10 minutes would be ok.
== License
This plugin is licensed under the MIT license. Complete license text is
included in the LICENSE file.
== Author
This software was created by Anatol P. [email protected]
and is located at http://cerberus.rubyforge.org.