Automated website deployment using Powershell
I published an article which automates website deployment.
http://www.codeproject.com/dotnet/DeploySite.asp
The Powershell script does the following for you:
· Maintains different configuration information for different deployments. For example, different connection strings for development servers and production servers (one or more production servers).
· Creates a deployment folder using the deployment date, time, and version so that you have a separate folder for each deployment and can keep track of things deployed on a day, e.g., 20061214-1.
· Copies only the change files and some predefined files to the deployment folder. So, you don't deploy the whole website every day.
· Copies the web.config and customizes the <appSettings>, <connectionString>, <assemblies> etc., as per the deployment configuration. For example, you can have different connection strings for different servers.
· Updates all JavaScript files with a version number so that in every deployment, a new file gets downloaded by client browsers.
· Updates default.aspx automatically with the modified script file name.
· Compresses all JavaScript files that gets deployed.
· Compresses all static HTML files using an Absolute HTML Optimizer.
· Creates a zip file which contains the deployment package.
· FTP the zip file to a target server.
So all you need to do is, run the script, extract the zip on server and voila!
If you like it, please vote for me.