Ramaze is documented to work on Heroku without too much issue, and I wanted to see if you can easily deploy a Ramaze based web application to the new PaaS kid on the block, AppFog.
AppFog is documented to support Sinatra and Rails, so it was never going to take much to get another Rack based framework (as Ramaze is) up and running. The only real consideration is the Gemfile
, which perhaps we are not so used to using in Ramaze land, because bundler
is not avidly advocated here as it might be for Rails or Sinatra.
Deploying a vanilla Ramaze app to AppFog
Before you can do anything on AppFog, you need an account - so go and signup if haven’t done so yet. You will also need to Ruby-powered command line utilities to provision and deploy your apps:
Now we are done with that, the next step is to create a new Ramaze app:
Now we need to create a valid Gemfile
in the root of the new application, the file should contain:
Now the relevant gems need to be packaged up for the af
AppFog command line tool:
Now we can deploy this puppy! It really can be as simple as:
Make sure you are in the root directory of the app for this, as the af
utility is able to determine a few things about the type of app you are deploying. You will need to either accept the defaults or give some sensible answers to the following guided wizard:
Most significantly, you will have to change your app name (if you are deploying on the same infrastructure zone). Other than that I went with defaults, apart from writing out the manifest.yml
configuration information to file for future use.
And then you are done - you can see the fruits of this labour over here: http://ramaze-appfog.eu01.aws.af.cm/ - remember that, as with Heroku, there is no persistent file storage (at the moment), so any app/user generated files need to be stored elsewhere, or in a database on AppFog.
Now you can knock yourself out with the deployment tool docs: here. Enjoy!