Archive for the ‘ruby’ Category

Check if selected date is correct with cucumber

Monday, January 4th, 2010

The default web steps provided by cucumber provide a way to check the content of a text field : the "..." field should contain "...", but how to check if the date selected by default in a form is correct ?

To describe some of the features of the coming PigeBox web interface, we needed something like : the "..." datetime should contain "17:00:00".

Even if webrat doesn’t provide the builtin method to “read” a Rails datetime select, this piece of code adds the method selected_datetime to webrate scope.

With this small webrat extension, the following step becomes possible :

(more…)

First “public” release for alsa-backup

Monday, September 28th, 2009

For a long time, we’re using continuous recording tools to record our radio broadcasts. Many of these tools were homemade and alsa-backup is the latest project of this “serie” (after jack-backup and just-record).

alsa-backup can :

  • record several channels,
  • change record file according your naming policy (… without a blank),
  • run as daemon,
  • log into syslog,
  • stop record and retry after errors

And many other features are coming :) This piece of Ruby code is more flexible than just-record. It uses the awesome ruby-ffi library which allows to use C libraries with few lines of ruby code.

alsa-backup is available as debian/ubuntu packages on Tryphon’s debian repository. Source files are available in GitHub alsa-backup repository.

CruiseControl.rb 1.4.0 debian packages

Wednesday, August 19th, 2009

CruiseControl.rb packages have been updated today. They are based on the 1.4.0 sources released on June. The Debian packages are for stable (using lenny-backports dist) and unstable on Tryphon Debian Repository.

If needed, see how to install CruiseControl.rb on debian or ubuntu.

Debian packages for Phusion Passenger 2.2.4

Tuesday, June 23rd, 2009

The Debian packages for Phusion Passenger 2.2.4 are available on the debian tryphon repository. This time, I have been a little faster than John and his ubuntu packages.

But : these packages don’t include nginx support and the documentation is, for the moment, skipped.

librack-ruby1.8 under lenny seems very old (Mauro confirms the problem in his comment). I’m trying to backport a fresher release.

Debian packages for Phusion Passenger 2.1.3

Saturday, April 11th, 2009

Debian packages for Phusion Passenger 2.1.3 is now available for lenny/stable, testing and unstable on i386 and amd64 on Tryphon debian repository.

These Passenger debian packages are (again) a backport of Brightbox ubuntu package. Thanks to John Leach.

Setup your Rails environment with rails_setup

Tuesday, March 10th, 2009

Rails provides great tools to manage the application environment. Using gems instead of freezed librairies is usefull in many cases (when you’re using GitHub for example ;-) ). But it can become quickly painful too.

A specific situation makes the “all-in-gems” policy very painful : making a continuous integration server with a several rails projects. Adding a project, changing a config.gem, each time you need to make the required gem installs in a ssh session :-(

rails_setup provides a simple solution.

You’re a new developer on a rails project ? Retrieve the project sources and make ./script/rails_setup. It will install :

  • the rails gem (and “active” dependencies) (in the version required by the project)
  • the gems configured in the application,
  • the gems required by the database adapter (to be improved)

If you’re using a continuous integration tool (like CruiseControl.rb), build yours projects with ./scripts/rake_with_rails_setup (which runs rails_setup before rake). With the provided sudo support, your CruiseControl.rb daemon user will install required gems for you.

rails_setup is a very simple rails plugin which provides a small set of scripts and rake tasks :

./script/plugin install git://github.com/albanpeignier/rails_setup.git

More details in the rails_setup README file.

Install CruiseControl.rb on debian or ubuntu

Saturday, February 21st, 2009

CruiseControl.rb is a continuous integration tool. It runs a build process when modifications are detected in a project. Java developers know CruiseControl (often discussed in this blog). CruiseControl.rb is very practical for projects built with rake, especially rails projects.

For example, CruiseControl.rb can:

  • follow several branches of your project,
  • run tests or specs in a clean environment,
  • notify our team when something goes wrong (by email, twitter, jabber, irc, campfire, …),
  • deploy with capistrano our development stage when specs are verified,

This CruiseControl.rb debian package is based on CruiseControl.rb github branch of ThoughtWorks.

(more…)