最佳组合的ASPNET部署工具

| 我知道已经问了多少个问题,但是我仍然找不到答案。 我需要部署一个ASP.NET 4.0站点,并且我想做这样的事情: 获取整个解决方案的最新版本-网站和webapp使用的几个类项目(我已经在使用CCNet了,这不是问题) 在调试配置中构建并部署到测试站点 在发布配置中构建并部署到登台站点 如果在登台站点上一切正常,我将运行一个脚本,该脚本将发布构建登台站点部署到同一服务器上7-8个类似的站点,供不同客户使用。将来,它将在另一台服务器上。 有MSDeploy(webdeploy 2.0),aspnet_compiler,MSBuild,Powershell(我选择的武器..)以及更多……我不确定100%在哪里使用? 我很想从Vs2010 GUI辅助部署中模仿“仅运行网站所需的部署文件”,并且我希望能够不触摸我们部署到的网站中的某些现有文件夹。 我觉得我应该大量使用MSDeploy ...但是我发现要获取它非常困难。我正在IIS.NET中阅读书籍,并且听说过Scott Hanselman / Jon ArildTørresdal播客。我不确定100%从哪里开始...而且我不是MSBuild专家,所以Powershell对我来说看起来不错。但是我觉得这样做会错过正确的工具... 您将在哪个步骤中使用哪种工具?     
已邀请:
        据我介绍,MSDeploy旨在通过更多控制来满足您的所有需求。 MSDeploy是IIS团队的产品,它的功能更加丰富。 您的问题的答案 注意事项:Svn作为源代码管理,MSDeploy用于部署 您可以使用SVN命令行工具在某些temp目录中获取最新版本的源代码,并使用MSBuild命令行工具对其进行构建。然后,您可以创建可以部署到特定环境的部署包或发布内容包。我目前正在从事一个项目,该项目基本上可以创建独立于环境的部署程序包,这意味着可以将pacakge部署到任何阶段/测试/实时环境。用于创建部署程序包的示例为... msbuild C:\\ Projects \\ NimBuildDeployTestApp \\ NimBuildDeployWebApp / NimBuildDeployWebApp.csproj / t:package / p:Configuration =发布/p:PackageLocation=C:\\Temp\\DeployPackage\\NimTestWebApp.zip / p:EnablePackageProcessLoggingAndAssert = true 使用MSDeploy命令行工具按如下所示部署程序包 msdeploy -verb:sync -source:package = packagelocation -dest:CONFIGURABLE_ACCORDING_TO_YOUR_NEEDS 用户步骤2使用MSBUILD在发布模式下构建解决方案,并在msdeploy中配置dest参数。 如果在登台服务器上一切正常,请运行deploymentToLive.batch文件,该文件将在活动服务器上部署特定的PublishContent /程序包。在同一批处理文件中执行7个msdeploy脚本,或者使用DFS(这是更为复杂的解决方案) MSDeploy绝对是必经之路。您可能要考虑的一件事就是准备好部署包,该部署包可以部署到您的任何环境中。我的意思是,您的web.config文件不会在所有环境中都相似,因此将创建一个包含所有环境的web.confif文件的部署程序包。在这里参考我的解决方案 希望这会有所帮助,并让您有信心继续自动化部署过程     

要回复问题请先登录注册