2

这是我想要做的:

  1. 构建一个以“包”为目标的现有 .csproj
  2. 使用 MSDeploy 将包发布到 IIS 6 服务器

这适用于我尝试一步配置的 TeamCity 构建和发布。我可以创建一个自定义构建文件,但我试图在不向应用程序添加任何额外配置的情况下解决这个问题。

有很多关于 MSBuild 参数的示例可以通过 WMSVC 进行此发布 -这是一个很棒的示例- 但这不会与 IIS 6 一起玩。当依赖于 MsDepSvc 时,是否可以使用等效的参数?这甚至可能吗,还是我留下了自定义构建脚本或包构建,然后是发布构建?

4

1 回答 1

2

您可以修改现有的 .csproj 文件以添加所需的任何其他目标(它只是一个 MSBuild 文件),并且可以通过不同的 MSDeploy 提供程序(webServer60metaKeycontentPath通过共享)发布到 IIS6 服务器。

虽然这可以通过在项目的 MSBuild 中添加目标来实现,但我建议您将这两个活动拆分为两个单独的目标。通过将它们分成两个单独的目标,您仍然可以将它们一起调用,msbuild /t:Package;Deploy但您也可以单独调用它们。

这将允许您创建部署包并让 TeamCity 将其作为构建的工件包含在内。然后,您可以从 TeamCity 下载此包并将其独立部署到任何服务器,即使您是自动部署的。如果 TeamCity 还创建了您的发布版本,您就知道有您的生产部署

于 2010-11-08T18:17:32.990 回答