By Daniel Quellhorst ([email protected])
QSKYNET is a simple way to get a ruby on rails production environment running on ubuntu 10.10.
I tend to use RVM on OSX. If you use rvm, you don't need run sudo when installing gems.
QSKYNET follows Readme Driven Development
Step 1: Install QSKYNET
$ git clone [email protected]:abtain/qskynet.git
# install required gems
$ bundle install
Step 2: SSH into remote system. $ ssh [email protected]
Step 3: Setup Ruby environment
$ sudo apt-get install curl git-core build-essential zlib1g-dev libssl-dev libreadline5-dev -y
$ bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
$ echo 'if [[ -s "$HOME/.rvm/scripts/rvm" ]] ; then source "$HOME/.rvm/scripts/rvm" ; fi' >> ~/.bashrc
$ # test new terminal with rvm notes
see if there is output
$ rvm install 1.9.2
$ rvm --default ruby-1.9.2
$ # can test with ruby -v
Step 4: Setup dotfiles $ curl http://q3.abtain.com/static/dotfiles/gemrc > /home/quellhorst/.gemrc $ curl http://q3.abtain.com/static/dotfiles/irbrc > /home/quellhorst/.irbrc
Step 5: Install default Ruby gems $ bash < <( curl http://q3.abtain.com/static/scripts/gems.sh )
Step 6: Install Mysql server $ curl http://q3.abtain.com/static/scripts/mysql.sh > /home/quellhorst/mysql.sh $ source mysql.sh $ mysql_install "PaSSword1"
Some files are stored in S3 like dotfiles and scripts to bootstrap the installation. q3.abtain.com is used in the example here and you are free to use this.
You can also setup your own static assets server on S3. You need to create a new bucket with the hostname and setup a cname dns entry pointing your hostname to 's3.amazonaws.com.'
Static assets are synced up with the rake task rake deploy:static
If you'd like to hack on QSKYNET, start by forking my repo on GitHub:
http://github.com/abtain/qskynet
To get all of the dependencies, run bundle install.
The best way to get your changes merged back into core is as follows:
- Clone down your fork
- Create a topic branch to contain your change
- Hack away
- Add tests and make sure everything still passes by running
rake
- If you are adding new functionality, document it in the README.md
- Do not change the version number, I will do that on my end
- If necessary, rebase your commits into logical chunks, without errors
- Push the branch up to GitHub
- Send me (quellhorst) a pull request for your branch
Copyright (c) 2010 Daniel Quellhorst. See LICENSE for details.