【问题标题】:Building and Deploying ASP.NET website industry standard构建和部署 ASP.NET 网站行业标准
【发布时间】:2011-11-06 04:09:07
【问题描述】:

我有一个带有 ASP.NET 网站应用程序和 10 个类库的 Visual Studio 2010 解决方案。我的要求是每天下午 5:00 在 QA Web 服务器中自动构建和部署应用程序。我也有不同的 web.config 文件用于本地机器和 QA 机器。

看起来人们这样做的方式有很多。

  1. MS 构建定义
  2. TFS 构建定义和基于工作流的定义
  3. Visual Studio 2010 中的 Web 部署项目
  4. 在 TFS 构建队列中指向解决方案文件(而不是构建文件)

这方面的行业标准是什么?最好的方法是什么?有人可以一步一步指出这样做吗?

【问题讨论】:

    标签: asp.net visual-studio-2010 deployment msbuild tfsbuild


    【解决方案1】:

    最好的方式?这是您的团队在您的特定部署环境中最舒服的工作方式。就像没有“行业标准”部署基础设施一样,部署中也没有“行业标准”。

    仅用于配置我见过团队

    • 使用在服务器上运行的自定义批处理文件从网络共享中提取代码,然后搜索和替换配置文件中的令牌

    • 使用 Powershell 脚本从 Nexus 存储库中提取代码,搜索并替换令牌,然后使用 PSExec 调用服务器上的另一个 Powershell 脚本来提取令牌化代码

    • 创建自定义 Nant 脚本,替换 web.config 中引用的配置文件,然后复制到主机

    • 手动复制调整配置文件

    在各自的情况下,每个人都有其特殊的优势:例如,具有手动配置文件的系统有一个微不足道的、很少使用的内部站点,一年只部署几次。构建精细、复杂的自动化部署确实不值得。

    因此,我建议您仔细查看您和您的团队的实际需求、可用时间以及您认为可以负担的自动化程度。

    军械库中的有用工具包括:

    • Web 配置转换,可以根据使用的构建配置转换 web.config 文件。 MSDN 上的参考资料:http://msdn.microsoft.com/en-us/library/dd465326.aspx——这些都是相对较新的,一旦你整理好语法就可以很好地工作。

    • Windows Powershell,一种很棒的脚本语言,它是动态的,但它所有 .NET 都在幕后。

    • MSBuild,在微软系统中你无法避免

    我个人的偏好是构建您认为最初需要的稍微多一点的自动化,尤其是对于需要频繁部署以解决问题的新系统。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-23
      相关资源
      最近更新 更多