如何使用TFS 2010部署网站和数据库项目?

时间:2010-05-20 22:42:47

标签: deployment tfs2010

我一直试图解决这个问题,到目前为止还没有找到一个简单的解决方案。使用TFS 2010作为构建过程的一部分来部署数据库项目(和网站)真的很难吗?

我发现了一个涉及大量复杂检查和编辑工作流程的例子(这是一个巨大的工作流程btw)。

我甚至购买了“使用VS 2010进行专业应用程序生命周期管理”这本书,但显然专业人士并未部署他们的应用程序,因为书中甚至没有提到它。

我知道在谈到TFS时我很迟钝,但似乎应该有任何简单的方法来做到这一点。有吗?

1 个答案:

答案 0 :(得分:7)

我不能代表数据库部分,但我只是在网页部分经历了这个,神奇的部分是not very well documented组件,即MSBuild参数。

在您的构建定义中:

  1. 左侧处理
  2. 必填>要构建的项目>要构建的配置
    • 为此示例编辑,添加一个新的
      • 配置:开发(我将介绍如何在下面创建配置)
      • 平台:任何CPU
  3. 高级> MSBuild流程
    • 使用以下参数(至少对我来说,您的发布方法可能会有所不同)。
  4. MsBuild Params:

    /p:MSDeployServiceURL="http://myserver"  
    /p:MSDeployPublishMethod=RemoteAgent 
    /p:DeployOnBuild=True 
    /p:DeployTarget=MsDeployPublish 
    /p:CreatePackageOnPublish=True 
    /p:username=aduser
    /p:password=adpassword
    

    要求:

    1. 您需要在目标 Web服务器上安装MS Deploy Remote Agent Service,MSDeploy也需要在Build / Deployer服务器上,但默认情况下应该如此。
    2. 您在上述参数中使用的帐户需要管理员权限,至少需要管理员权限...我不确定最低权限要求是什么。
    3. 您可以配置站点在您正在部署的Web项目中访问的WebSite /虚拟目录。就个人而言,我有一个每个环境的构建配置,这使得构建非常容易处理和组织。例如,我们有发布调试开发(还有更多但是对于这个例子来说就是这样)。只有Web项目具有 Dev 配置。

      要执行此操作,请右键单击解决方案 Configuration Manager ... ,在Web项目中单击配置下拉列表,然后单击新建... 即可。为此示例命名为“Dev”,从调试或发布复制设置,以及与部署服务器环境最接近的匹配项。确保选中“创建新的解决方案配置”,默认情况下是这样。创建完成后,将解决方案的配置下拉列表更改为新的 Dev ,并任意CPU ...确保您的项目都正确无误,我有一些翻转随机的x86和x64,不确定的确切原因。)

      在您的网络项目中,右键单击属性。在左侧,单击打包/发布Web (您还要混淆其他打包/发布SQL选项卡,但我不能说明这一点)。在右键单击选项中,单击将部署包创建为zip文件。默认位置没问题,我在任何地方找不到的下一个文本框。格式如下: WebSite /虚拟目录,因此如果您在IIS中有一个名为“BuildSite”的站点,没有虚拟目录(app == site root),那么您将拥有 BuildSite 只在这个盒子里。如果它位于虚拟目录中,您可能拥有默认网站/ BuildVirtualDirectory

      设置好所有这些后,请确保签入解决方案和Web项目,以便构建服务器具有您所做的配置更改,然后启动构建:)

      如果您有更多问题,我建议您观看this video by Vishal Joshi,特别是在大约22和59分钟后,他也会覆盖数据库部分...但我没有实际经验,因为我们正在进行非MSSQL数据库的顶部。