Configuring a SharePoint instance or farm is typically completed by an administrator. The next step is to create a Web application and site for your custom portal application.
you can automate them via the SPWebApplicationBuilder and SPWebApplication The following url would give you an idea of how.
http://www.warfiblog.com/automated-deployment-for-complete-website
You would need to invest time upfront to develop a deployment script like this.
Microsoft strongly encourages developers not to customize the out-of-the-box site definitions for a number of reasons(Including migration issues in migrating to 2010).
http://msdn.microsoft.com/en-us/magazine/cc507633.aspx
For Automating deployment of Custom Site definition, Pack them in to a Solution. Solutions are deployment packages for SharePoint—they can contain almost anything you need to.
For reports automation look at Shawn Feldman’s Automating Report Deployment
http://feldrox.spaces.live.com/blog/cns!C46024CE04ED4278!469.entry
Alternatively you can also write a generic utility code using COde Dom which can traverse your development environment farm and generate code required for deployment. But needs more upfront investment of time.






Blog

