Distributing A Rails App

I’ve done some Google searches and searched the mailing list archive
without much success.

I’m working on a rails app that will be a simple story tracking tool
for Scrum/Agile projects. When it’s functional, I’d like to make it
available as a live app on my site, but I’d also like to make it
available as a distribution so that someone could grab a
self-contained package and install it locally.

Is there a good way to create a gem, say, that could handle this?
I’ve been looking for tutorials or articles about creating gems, but
I’m still a bit lost on how that might translate into packaging a
rails app. Or is there some other good way distribute?

Thanks for any insights.

Troy

Check this out:
http://ajaxian.com/archives/slingshot-desktop-apps-via-rails
Ability of Rails app that can run locally and synchronize with the
server is
very powerful.

On Dec 30, 2007 10:57 AM, Troy D. [email protected] wrote:

I’ve done some Google searches and searched the mailing list archive
without much success.


http://www.rubyplus.org/
Free Ruby and Rails Screencasts

I imagine you are having trouble finding information about that. Rails
is a web application framework. It is not intended to be used to build
desktop applications. If you’re talking about distributing the
application to individuals that are unfamiliar with Ruby on Rails,
then I just don’t know of anything existing that would make this
practical.

You would need to develop your own “runtime” environment installer to
make sure that all the necessary pieces required to run the
application get installed on the user’s computer. Ruby, all the gems
you might have used in your application, the Rails application itself.
Then you would need to create a script, or some other means, to allow
the user to start Mongrel server and take them to the URL where the
program runs.

Running Rails as a desktop application is simply outside the scope of
Rails, which means that you’re probably on your own in finding a
solution.

On Dec 30, 2007 11:54 AM, Robert W. [email protected] wrote:

I imagine you are having trouble finding information about that. Rails
is a web application framework. It is not intended to be used to build
desktop applications. If you’re talking about distributing the

Thanks for the reply, Robert. Right, I should have explained. This
isn’t meant as a desktop app, but anyone who wanted to actually use
the application would probably like to run it on a local server rather
than as a hosted application since it tends to contain potentially
sensitive information about software features.

So, what I’m looking for is an easy way to package up the important
parts of the rails app so that someone who has rails running could
easily deploy my app to their environment. Perhaps just zipping it up
would be enough, but I was hoping for something more, uh, rubyish or
railsy.

Thanks again,

Troy

Zip it, or provide an SVN repository so someone can check it out.

Provide a rake task to boostrap the database to make setup a snap :slight_smile:

As far as I know, you can just create a tarball/zip file. I believe
this is what the guys who make Warehouse
(http://www.warehouseapp.com/) do.

–Jeremy

On Dec 30, 2007 3:44 PM, Troy D. [email protected] wrote:

sensitive information about software features.
Troy


http://www.jeremymcanally.com/

My books:
Ruby in Practice

My free Ruby e-book
http://www.humblelittlerubybook.com/

My blogs:
http://www.mrneighborly.com/
http://www.rubyinpractice.com/

On Dec 30, 2007 2:01 PM, Jeremy McAnally [email protected]
wrote:

As far as I know, you can just create a tarball/zip file. I believe
this is what the guys who make Warehouse
(http://www.warehouseapp.com/) do.

–Jeremy

If you want to keep it easy to install, look at distributing it with
Jumpbox. Distributing apps with svn or tarballs is easy, but good
luck helping everyone install it :slight_smile:


Rick O.
http://lighthouseapp.com
http://weblog.techno-weenie.net
http://mephistoblog.com

Create a plugin:

http://nubyonrails.com/articles/2006/05/04/the-complete-guide-to-rails-plugins-part-i

Cheers, Sazima

Gems are an awesome way to go too. Suprised nobody has mentioned it yet.

With Gems on Rails, you get some pre-load functionality options as well.

On 12/31/07, Rick O. [email protected] wrote:

If you want to keep it easy to install, look at distributing it with


Nathaniel Steven Henry Brown
604-724-6624

On Jan 1, 4:02 am, “Nathaniel B.” [email protected] wrote:

On Dec 30, 2007 2:01 PM, Jeremy McAnally [email protected] wrote:

How feasible is it to write a ruby on rails app. and distribute it
commercially, similar to many PHP applications, where you unzip, and
click a link in the browser to install.

How feasible is it to write a ruby on rails app. and distribute it
commercially, similar to many PHP applications, where you unzip, and
click a link in the browser to install.

Nearly impossible, unfortunately. Running a rails app requires more
process management.


Rick O.
http://lighthouseapp.com
http://weblog.techno-weenie.net
http://mephistoblog.com

Exactly. To do any real configuration changes you’d need to restart
the app, thus making the convenience of doing everything in the
browser useless. :stuck_out_tongue:

–Jeremy

On Jan 1, 2008 3:29 PM, Rick O. [email protected] wrote:

Rick O.
http://lighthouseapp.com
http://weblog.techno-weenie.net
http://mephistoblog.com


http://www.jeremymcanally.com/

My books:
Ruby in Practice

My free Ruby e-book
http://www.humblelittlerubybook.com/

My blogs:
http://www.mrneighborly.com/
http://www.rubyinpractice.com/

Thanks…I’ve got some applications I’ve thought about doing in Rails,
but this seems to be my biggest challenge…I’ve seen a lot of info
about the framework and ruby, but as a viable commercial application
(one that is distributed)…I have not seen too much info. Seems most
people use it for their own needs – one application only (aside from
plugins, but I don’t think the entire app would works as a plugin).

My second plan (if there is no easy-to-install distributing method for
rails) is to sell the application to clients with a hosting and
maintenance plan as well…and just take care of the management,
updates, hosting, etc. myself for each customer.

This leaves me at the point of figuring out how to distribute/rsync/
push – whatever you want to call it, to multiple web sites, that do
not use same data, or could even have customizations on a per-client
basis to the main trunk.

If anyone knows of any rails-specific books covering this SCM
scenario, I’d be more than interested in knowing about them.

On 2 Jan 2008, at 10:25, Nathaniel B. wrote:

Check out Mingle. Their install process is pretty awesome, and the
product aint half bad either.

One should point out that the secret sauce here is jruby, since (in
super condensed form) you get to lean on java deployment options

Fred

Check out Mingle. Their install process is pretty awesome, and the
product
aint half bad either.

On 1/1/08, chovy [email protected] wrote:

click a link in the browser to install.


Nathaniel Steven Henry Brown
604-724-6624