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?
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.
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.
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
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.
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.