TFS 2017发布定义。 WinRM - IIS Web App管理任务。在“默认网站”下创建应用程序

TFS 2017发布定义。 WinRM - IIS Web App管理任务。在“默认网站”下创建应用程序

问题描述:

我正在致力于将网站部署到测试IIS服务器(Windows Server 2012,IIS 8)的发布定义。TFS 2017发布定义。 WinRM - IIS Web App管理任务。在“默认网站”下创建应用程序

我想使用IIS Web应用程序管理任务,以创建和配置“默认Web站点/斯科特”

下一个应用程序或虚拟目录当我指定的“默认Web站点/斯科特”或“默认Web Site \ Scott“作为网站,由于name属性,任务失败。

Scott应用程序将与默认Web站点父项下的许多现有应用程序一起创建。我不介意它是否共享应用程序池。

我可以使用WinRM任务吗?如果没有,除了写Powershell之外,还有别的选择吗?

+0

难道你的意思是你要创建的网站下的Web应用程序一个通过[IIS Web APP管理](https://docs.microsoft.com/en-us/vsts/build-release/tasks/deploy/iis-manage)任务? –

+0

嗨帕特里克。现在我有一个具有以下MSBuild参数的构建定义:/ p:DeployIisAppPath =“Default Web Site/Scott”/ p:DeployOnBuild = true/p:WebPublishMethod = Package/p:PackageAsSingleFile = true/p:SkipInvalidConfigurations = true/p:IncludeSetAclProviderOnDestination = false/p:PackageLocation = $(Build。ArtifactStagingDirectory)\ scott.zip – Scott

+0

我想要做的是:1.在默认网站下创建一个名为“Scott”的应用程序,最好使用WinRM任务。理想情况下,我想设置Windows身份验证并拒绝匿名身份验证。 2.将程序包部署到新的应用程序文件夹。我可以用WinRM创建*新站点,即:作为“默认网站”的兄弟,但我没有运气创建应用程序作为“默认网站”的子项。我已经设法用来自Colin的ALM角延伸的任务填充setparameters.xml。 – Scott

WinRM - IIS Web App Management任务中,还有一个Parameters for IIS Application configuration您可以简单地配置为部署IIS Web应用程序。然而,这不适机智TFS现在:

正在使用 预览任务奇才的Visual Studio团队服务账户。 IIS Web应用程序部署SQL Server数据库部署应移至此扩展。所有 未来增强到IIS Web应用程序部署任务或SQL Server数据库部署任务将在此 扩展中提供。

Source Link

现在你必须直接部署Web应用程序到IIS服务器与使用Web部署IIS Web App Deploy任务。你可以添加一个环境变量IIS Web Application Name并以此作为网站名称,如:

enter image description here

的“IIS Web应用程序名称”参数是要部署Web应用程序的IIS路径。这可以包括一个值,例如Default Web Site/Contoso.web_deploy,这在部署IIS应用程序任务中指定的部署|网站名称

对于更详细的步骤,你可以在下面两个漂亮的博客看看:

+1

嗨,帕特里克,谢谢你的回复。我已经阅读了Colins Alm Corner,这是我了解web.release.config和带有令牌替换任务的插件的地方。我已经有了生成Web部署包和标记化setparameters.xml文件的解决方案。使用WinRM任务部署到“默认网站/ Scott”工作正常。不起作用的是使用“WinRM - Web App Management”创建/配置网站以启用Windows验证和拒绝匿名。 – Scott

+0

如果除了Powershell之外没有别的选择,我会建议基础架构团队自己配置应用程序。同样,谢谢 - Scott – Scott

+0

@Scott启用Windows身份验证和拒绝匿名是未来增强功能,仅针对正在使用预览任务的Visual Studio Team Services帐户开放的任务。在所有配置的认证选项中列出,包括三种类型:匿名认证,基本认证,Windows认证。目前它还不适用于原始TFS。恐怕你必须使用powershell脚本来做相关配置。 –