Ruby on Rails Dev/Test/Deploy Process

The person who developed and maintained 3 websites for non-profit organizations on a Linode server passed away unexpectedly leaving no documentation on how to maintain the websites. On a volunteer basis, I spent some time learning Ruby on Rails and have been maintaining the websites for several months. I have made small changes to the websites but don't know enough about the development, testing, and deployment process to make significant changes. We need a Ruby on Rails (ROR) expert to show us best practices for maintaining ROR websites, including how to make changes in a development environment, test the changes, and deploy them to the production environment. These websites are low volume and some downtime would be acceptable. We need to document the process. Perhaps someone could point us to existing documentation that we could tailor. I have looked at Linode documentation but haven't found anything specific enough. Would the Linode Community Forum be a good place to find someone who could help? Our linode has Ubuntu 10.04 LTS, Rails 2.3.5, Ruby 1.8.7, MySql 5.1.41-3ubuntu12.3, "Powered by Phusion Passenger, modrails / modrack for Apache".

2 Replies

I don't know anything about Ruby or Rails, but you might try finding a local user group. Often there are people involved with those who are willing and able to give hands-on help. Good luck!

http://www.ruby-lang.org/en/community/user-groups/

FYI, perhaps to get you pointed in the right direction…I use a set of scripts to deploy a new server. I don't use exactly these, but here are some scripts that might get you started:

https://github.com/joshfng/railsready

That will more or less get you up and running with Ubuntu, Ruby, Passenger, and Rails.

After the above, or if you already have your servers up and running, I use capistrano to manage application deployments:

https://github.com/capistrano/capistrano/wiki

and some tips to get you started:

http://help.github.com/deploy-with-capistrano/

My deployments run similarly to those you will find there; git repository is cached, copied from there to the deployment directories, and then some custom steps to adjust symlinks, permissions, etc.

Anyway, maybe that will help…

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct