Posted on Jan 1, 2010

mongrel_service 0.4.beta2 released

I think nobody expected this project hit the 4 years mark… guess I didn’t expected it either!

I just pushed to official gem repositories (Gemcutter) the newer version of mongrel_service

What’s new?

A few outstanding bugs has been fixed. A few patches from Daniel Gies and papillon and other stuff:

Removed win32-service dependency

Since win32-service used SEH, something only present in Visual C, newer builds of Ruby made with GCC cannot use it.

This change will make possible to depend on even less external stuff.

Remember: you still need administrative privileges to install or remove Windows Services.

Mongrel log files are written to the path specified by –log option

Yes, log files used to be written all in Ruby bin folder, this has now changed, thanks to Daniel Gies contribution.

This will happen automatically with the upgraded exectuable.

Workaround Windows 2008 process detection

It is now possible execute the service on any account besides LocalSystem. Contribution by Daniel Gies and papillon.

Wait longer for child process terminate properly

There are times some pending database connections are slow. With this change these will terminate smoothly now.

Nitty gritty

I took the time to cleanup the repository, folder structure and build process to make it more easy update this project in the future. Thanks Hoe and my own experience working with Rake.

How to install it?

Since this is a prerelease gem, you need to indicate the option during gem installation:

gem install mongrel_service --prerelease

Once installed, you can now install new services.

If you already have a service installed for your application, you will need to remove it and install it again for it to update the executable and adjust the service registry information.

The expected commands are mongrel_rails service::remove --name MyService and after issue mongrel_rails service::install --name MyService ...

Report bugs

If you find any problem with this newer build, please use GitHub issues since current Mongrel tracker is full of spam.

Please include servicefb.log, mongrel_service.log and mongrel.log generated when attempts to start or stop the service failed.

When to expect a final release

If no serious bug appears, expect a final 0.4 release next weekend.

Thanks all for the contributions and happy new year!

11 Comments

  • Cane says:

    When might we get a control panel, like there was before (for starting and stopping web server & database etc.)?

  • Luis says:

    @Cane: Before? Sorry, but there was never a control panel applet.

    Perhaps you’re mistakenly it with InstantRails controller.

  • Cane says:

    Sorry, a case of mistaken identity…

  • Adam says:

    Hi & Thaks for the excellent work!
    I uninstalled mongrel_service 0.3.4 then installed mongrel_service (0.4.beta2). I then removed the existing services (they no longer appear in the Windows Services list). However when I try to add a new service with the same name as one of the removed services, I get this error:
    “The service already exist (sic) please remove it first”

    I’ll add them as different names, but thought you’d like to know.
    Running Windows 5.2.3790 with Ruby 1.8.6 (2008-08-11 patchlevel 287) and RubyGems 1.3.5.

  • Adam says:

    UPDATE:
    Trying to install the service to different name does not help – still getting service already exists error.

  • Adam says:

    UPDATE:
    Used command line to determine that the services did not exist:
    sc query state= all

    Is there a cache somewhere that I must empty – kinda stuck now as I’m unable to install the mongrel services!

    Any help greatly appreciated.

  • Luis says:

    @Adam: There is no cache.

    If you remember the name (not the display) you can remove the service using sc delete

    Please keep in mind that for adding and removal of services you need to use a command prompt with enough privileges.

    HTH.

  • sinclair says:

    http://github.com/fauna/mongrel_service/issues#issue/2

    Unable to uninstall .
    Plus when installed (with mongrel 1.1.5) the
    mongrel_rails service::xxx commands
    are not available, only stop, start and restart.

  • mongrel_service 0.4.beta3 released…

    This is a followup to my previous post I’ve pushed to RubyGems a version 0.4.beta3, you can access it from here What’s new? Bugsfixes, thanks to sinclair that fixed a couple of regressions due the refactoring and removal of win32-service de…

  • pete says:

    You’re doing a great job, I like the improvements.

    One thing that is a huge headache for me is that I can’t pass custom startup parameters to mongrel_rails service::install.

    I can modify init.rb to add the commands I need (in my case -T) and then the service installs with this switch set. However, this causes a runtime error when I try to start the service:

    invalid option: -T for command ‘mongrel::start’
    Try mongrel::start -h to get help.

    Would be so nice to have a bit more control over these things.

  • Luis says:

    Thank you.

    For the missing feature, please open a ticket in the GitHub issues page:

    http://github.com/fauna/mongrel_service/issues