I've created an application that consists of a
- asp.net mvc 3 control panel
- windows service
- ms sql database
I would like to create an installer that is able to handle the deployment and auto updates of this application.
The application requires at least those things to be done during install:
- ensure MsSQL 2008 is installed (if not prompt the user or install express version)
- ensure user has Net Framework 4.0, ASP.NET MVC 3.0 installed (and probably some other Ms products I forgot)
- set appropriate connection strings in an xml configuration file
- add SQL Server user (the one that is used to run the instance) privileges to read/write to a folder
- create an IIS Site and application pool (and deploy the app)
- set the application pool mode to 4.0 Integrated
- create a windows service
- grant the asp.net application a privilege to control the mentioned windows service (subinacl /service service_name /grant="IIS APPPOOL\DeployTest"=F)
- create the database, run create scripts
- create database users and grant them appropriate privileges
- edit web config file to set some custom settings
Is it at all possible? Or am I forced to do that manually?