This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
commit 3f7a7509a9891522093863fcc233688f5e8577be
tree fdfe0933e4b9a7325aec35edcb1f7060297f896c
parent c67f5eb72ef4bb01b2838f68016f601d5c112192
tree fdfe0933e4b9a7325aec35edcb1f7060297f896c
parent c67f5eb72ef4bb01b2838f68016f601d5c112192
airtruk /
| name | age | message | |
|---|---|---|---|
| |
LICENSE | Fri Jun 05 05:15:55 -0700 2009 | |
| |
README | Fri Jun 05 05:07:01 -0700 2009 | |
| |
Rakefile | Fri Jun 05 05:07:01 -0700 2009 | |
| |
active_record_connect.rb | Fri Jun 05 05:07:01 -0700 2009 | |
| |
airtruk_spec.rb | Fri Jun 05 05:07:01 -0700 2009 | |
| |
app.rb | Fri Jun 05 05:07:01 -0700 2009 | |
| |
boot.rb | Fri Jun 05 05:07:01 -0700 2009 | |
| |
config.ru | Fri Jun 05 05:07:01 -0700 2009 | |
| |
config/ | Fri Jun 05 05:07:01 -0700 2009 | |
| |
db/ | Fri Jun 05 05:07:01 -0700 2009 | |
| |
lib/ | Fri Jun 05 05:07:01 -0700 2009 | |
| |
public/ | Fri Jun 05 05:07:01 -0700 2009 | |
| |
samples/ | Fri Jun 05 05:07:01 -0700 2009 |
README
Airtruk - The network configuration generator thingey doodad. This is as close of a replication of the 'Overlord' application presented at RailsConf 2009. Jason LaPorte of Agora Games presented 'PWN Your Infrastructure Behind Call of Duty: World at War' and gave a few screenshots of a fantastic looking application that would feed a configuration script to a machine based on it's hostname. I thought, "hey, i want one of those." So i made one. Airtruk will allow you to configure an arbitrary set of files to be replaced on a machine. If you omit a filename, those scripts will be executed instead. You configure machines based on their hostname, and you set up shell scripts based on some arbitrary configuration name (load-balancer-pound, primary-mysql) Whatever you want, really. On the main page, you click the '+' to add it to a machine and the '-' to remove it. When the machine asks for it's configuration, the app will feed it a shell script that it can execute. To install the application, just load it up using your favorite rack compatible web server and run 'rake db:migrate' to create your database. It uses Sqlite3 all the time. It doesn't need anything more, really. In the samples/ folder, i included a few suggested scripts that you could modify to suit your deployment scheme. I use Gentoo for all of my servers and i use dump/restore to install all of them. Once you get a working machine, I use RIP Linux to boot off a CD/Thumb drive and use make-production-image.sh and create a filesystem image. From there, you just dump that image onto each machine using install-server.sh and then run the setup-production-network.sh to set up the network. Reboot the machine and run that airtruk-config.sh script and you're golden. Everything should be as it should on the machine. Thanks to Jason, he had no idea i was writing this, nor have i seen any bits of the code of his application. In fact, i never even went to his presentation (sorry!). For more information, see: http://en.oreilly.com/rails2009/public/schedule/detail/7879 One more thing. Why Airtruk, you ask? Because it saved everyone from the ThunderDome. (That's my proprietary application for managing my enterprise application). It fits.







