Most of the commands here have been taken from:
- http://programminggems.wordpress.com/2010/01/12/slicehost-2
- http://onsmalltalk.com/2010-10-30-installing-a-gemstone-seaside-server-on-ubuntu-10.10)
- http://onsmalltalk.com/2010-10-23-faster-remote-gemstone
First - you need to have the following installed on your system:
- Ruby
- Vagrant
Clone the project if you haven't already:
git clone https://github.com/johnnyt/gemstone-cookbooks.git
Then from the project root run the following command. This will try to update your RubyGems, install and run Bundler.
rake setup
Now open up roles/gemstone.json and copy your public ssh key (probably ~/.ssh/id_rsa.pub or ~/.ssh/id_dsa.up) into the file - about half way down.
You can check out Vagrantfile for information about the virtual-box. The code is mainly in the cookbooks/gemstone/recipes/ directory. Now if rake setup ran well - run the following to setup your vagrant box (this also reboots the box for some GemStone settings). This will take a while - you'll see the progress of the Vagrant and Chef as its running.
rake va[up] && rake va[reload]
Check out Rakefile (or just run rake -T) to check out the rake tasks You can check out Vagrantfile for information about the virtual-box. The code is mainly in the cookbooks/gemstone/recipes/ directory.
Once the setup is all done - you should be able to pull up http://localhost:8888/ and see the default SeaSide site. You can also run this to open up an X11 session:
rake gemtools
To ssh into the Vagrant box as glass - as soon as you get your prompt you can open up a screen session just by typing 's' - an alias for start_screen which starts a new session if none is found, or attaches to a shared session if one is already running.
rake ssh
Here are the current rake commands (found in Rakefile):
rake gemtools # Open remote GemTools in local X11 rake setup # Install needed gems and copy example files rake ssh # SSH into vagrant box as glass rake va[cmd] # Vagrant commands using bundle exec
Todo:
- IPTables
(MIT License) - Copyright (c) 2010 JohnnyT