User:Tflink/Sandbox:AutoQA in a box

Summary
While our current process does certainly work, the process of creating an AutoQA installation does take a decent amount of manual work. AutoQA in a box would provide a facility for creating and updating an entire AutoQA setup from a single location.

Benefit to AutoQA

 * Easier deployment and maintenance of test clients
 * Easier deployment and maintenance of autotest servers
 * Easier deployment and maintenance of development/test environments
 * Better integration with Fedora Infrastructure for infra management

Functional Overview
The basic idea is to have a pseudo-CLI that is capable of creating and updating and entire AutoQA setup.

A coordinator would be responsible for all of the work. This coordinator could possibly reside on the same machine hosting the autotest server but for best results, it would be stand alone and not have any other AutoQA related software on it so that the existing setup could be destroyed and re-setup with a minimum of fuss.

Creating a New Environment from Scratch

 * Build rpms as needed
 * create VM images for the autotest server and clients
 * use known SSH key
 * Deploy the VM images to the target host
 * Set up the autotest server
 * Register the clients with the server

Updating an existing installation

 * Build new rpms
 * push new code out to server and clients
 * restart services as needed

Units of Work

 * Configuration management setup
 * Most likely puppet, may look into chef
 * Coordination "scripts" (most likely using fabric)
 * generate VM images
 * deploy VMs
 * install autotest, register clients
 * install/update autoqa
 * Appliance configuration
 * Will likely require some work with boxgrinder to make branched and/or rawhide work. I'm thinking that rawhide can wait for now but would very much like to get F16 working.

Dependencies
None