Welcome to the first Slicehost mini series.
This first article will flesh out the aim of the series and explain what the end goal is.
Please don't skip this article as it will contain some important information...
Size does matter
If you are new to the command line and are not sure what to do or how to start then this is the place to be!
However, don't be put off by the number of articles that will be here (I will also point you to some existing articles along the way - just to add to the mix).
One thing I always try and do, and sometimes succeed, is to explain what I am doing and what the effect of a change will be.
Don't be put off as size does matter (in this case). Take it one section and one paragraph at a time. Skipping the really boring bits will more than likely cause the setup to burp and die in a horrible mess.
Actually, very few assumptions are made in this mini-series.
Sure, I'll point you to some existing articles so we are all on a level playing field for when we get to the meat of the series (the Capistrano bit) but you should be able to follow along with a brand new Slice right to the end without difficulty.
So what's the point of this mini series?
Put simply, the aim is to get you from a brand new Slice to a fully working Ruby on Rails stack with Capistrano control.
As mentioned, some of the articles are already in existence. However, adding complementary articles and new articles and linking them together in a set order will help in setting up your Slice.
We'll go through:
Base setup of an Ubuntu Gutsy Slice
Installing Ruby on Rails (we'll use sqlite3 for the DB in these examples)
Installing Subversion and setting up a repo with ssh access
Creating a Ruby in Rails application and committing it to the Subversion repository
Installing Nginx with a mongrel cluster
Creating a vhost for the Rails application
Install and configure Capistrano
Check out the repository and deploy using Capistrano
Add our first controller to the app, commit it and deploy via Capistrano
Quite a lot going to happen here.
However, taking it one step at a time will ensure we know what we are doing, why we are doing it and what happens when we do it.
I strongly recommend doing it the 'long' way (i.e. follow the articles) before using an automated installation tool (such as deprec) so you understand the concepts.
Once you are happy with the basics, the something like deprec is an excellent tool and if something goes wrong or you need to tweak it, you will know why and how.
The next article introduces Capistrano 2 and explains what it is and what it does.