TFS 2010 无法使用 Web 部署配置文件部署多个网站
TFS 2010 Unable to deploy multiple websites using Web Deploy profile
我正在尝试使用 TFS 2010 实施持续交付。已创建包,但未将包部署到远程服务器。
以下是我做过的事情。
- 已创建 "Web Deploy" 发布驻留在单个解决方案中的所有网站的配置文件
- 在 IIS 7 上安装了 WMSVC
- 已验证 TFS 已安装 VS2010
以下是我的 MSBuild 参数:
/p:TransformConfigFiles=true /p:MSDeployPublishMethod=WMSVC /p:PublishProfile=ST.pubxml /p:DeployOnBuild=True /p:AllowUntrustedCertificate=True /p:Password=V******123 /p:VisualStudioVersion=10.0
我尝试了构建参数的大部分组合,但没有成功。不确定 TFS 2010 是否支持 CD。
我们已使用 MSDeploy 从 TFS 2010 进行部署。我看到的唯一区别是我们没有使用发布配置文件。以下是我们使用的 MSBuild 参数:
/p:DeployOnBuild=True
/p:DeployTarget=MsDeployPublish
/p:Configuration=Release
/p:CreatePackageOnPublish=True
/p:DeployIisAppPath=staging.example.com
/p:MsDeployServiceUrl=https://staging.example.com:8172/msdeploy.axd
/p:AllowUntrustedCertificate=True
更新 -
我们不再直接从 MSBuild 进行部署,因为我们不喜欢每次要部署时都进行构建。相反,我们使用 MSBuild 创建一个 MSDeploy 包。然后我们使用 MSDeploy.exe 将该包部署到每个环境。以下是可能有用的 WebDeploy 概述 -
http://dotnetcatch.com/2016/02/25/the-anatomy-of-a-webdeploy-package/
通过互联网和本地帮助挖掘后,我终于成功启用了继续集成并继续部署。
步骤 1: 在 TFS 和 Remote/destination 服务器上安装 Windows 平台安装程序 + Web 部署。
步骤 2:创建 IIS 管理器用户帐户
步骤 3:配置发布配置文件和构建定义。
http://www.johandorper.nl/log/publish-multiple-webprojects-on-build
并使用在步骤 2
中创建的 用户
第 4 步: 确保
的 TFS 服务器中存在适当的版本
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio
如果不存在,则将其从开发机器复制到 TFS
步骤 5: 允许 IIS 管理器用户连接到站点或应用程序
第 6 步: 添加 "Authenticated Users" 到应用程序的根目录。
以下是构建定义中的构建参数
/p:VisualStudioVersion=12.0 /p:DeployOnBuild=True /p:TransformConfigFiles=true /p:MSDeployPublishMethod=WMSVC /p:CreatePackageOnPublish=True /p:PublishProfile=ST.pubxml /p:AllowUntrustedCertificate=True /p:Username=my-deploy /p:Password=mypassword
您还可以通过创建特定于环境的 web.config
来指定要在构建定义中使用的配置 (debug/release/test)
我正在尝试使用 TFS 2010 实施持续交付。已创建包,但未将包部署到远程服务器。 以下是我做过的事情。
- 已创建 "Web Deploy" 发布驻留在单个解决方案中的所有网站的配置文件
- 在 IIS 7 上安装了 WMSVC
- 已验证 TFS 已安装 VS2010
以下是我的 MSBuild 参数:
/p:TransformConfigFiles=true /p:MSDeployPublishMethod=WMSVC /p:PublishProfile=ST.pubxml /p:DeployOnBuild=True /p:AllowUntrustedCertificate=True /p:Password=V******123 /p:VisualStudioVersion=10.0
我尝试了构建参数的大部分组合,但没有成功。不确定 TFS 2010 是否支持 CD。
我们已使用 MSDeploy 从 TFS 2010 进行部署。我看到的唯一区别是我们没有使用发布配置文件。以下是我们使用的 MSBuild 参数:
/p:DeployOnBuild=True
/p:DeployTarget=MsDeployPublish
/p:Configuration=Release
/p:CreatePackageOnPublish=True
/p:DeployIisAppPath=staging.example.com
/p:MsDeployServiceUrl=https://staging.example.com:8172/msdeploy.axd
/p:AllowUntrustedCertificate=True
更新 -
我们不再直接从 MSBuild 进行部署,因为我们不喜欢每次要部署时都进行构建。相反,我们使用 MSBuild 创建一个 MSDeploy 包。然后我们使用 MSDeploy.exe 将该包部署到每个环境。以下是可能有用的 WebDeploy 概述 -
http://dotnetcatch.com/2016/02/25/the-anatomy-of-a-webdeploy-package/
通过互联网和本地帮助挖掘后,我终于成功启用了继续集成并继续部署。
步骤 1: 在 TFS 和 Remote/destination 服务器上安装 Windows 平台安装程序 + Web 部署。
步骤 2:创建 IIS 管理器用户帐户
步骤 3:配置发布配置文件和构建定义。
http://www.johandorper.nl/log/publish-multiple-webprojects-on-build
并使用在步骤 2
中创建的 用户第 4 步: 确保
的 TFS 服务器中存在适当的版本C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio
如果不存在,则将其从开发机器复制到 TFS
步骤 5: 允许 IIS 管理器用户连接到站点或应用程序
第 6 步: 添加 "Authenticated Users" 到应用程序的根目录。
以下是构建定义中的构建参数
/p:VisualStudioVersion=12.0 /p:DeployOnBuild=True /p:TransformConfigFiles=true /p:MSDeployPublishMethod=WMSVC /p:CreatePackageOnPublish=True /p:PublishProfile=ST.pubxml /p:AllowUntrustedCertificate=True /p:Username=my-deploy /p:Password=mypassword
您还可以通过创建特定于环境的 web.config
来指定要在构建定义中使用的配置 (debug/release/test)