【发布时间】:2018-03-14 11:46:41
【问题描述】:
我们目前使用 Octopus Deploy 将网站推送到托管在 Window Server 2012 上的 IIS 服务器。
我们希望放弃 Octopus 并改用我们的本地 TFS 2017 的内置发布系统。我们已经构建了发布成品(网站二进制文件和内容)的定义。
使用 Octopus,我们在所有服务器上都安装了触手。
八达通中定义的遗留发布流程是这样的:
- 设置 IIS(Powershell 脚本为站点配置应用程序池,将虚拟目录映射到绝对路径)
- 部署 nuget 包(包包含网站二进制文件和脚本) - 将包含网站的包解包到关联虚拟目录的物理路径
- 启用 Windows 身份验证(调用 Set-WebConfigurationProperty 的单行 powershell 脚本)
- 禁用匿名身份验证(再次使用 powershell。)
我并不热衷于我们的 Octopus 流程中使用的 Powershell 的数量,并且希望在 TFS 版本定义中最小化 Powershell。
我的问题是:Microsoft 推荐的将 ASP.NET 网站(普通 MVC 项目,而不是 .NET 核心)部署到 CI 环境中的服务器的方法是什么?是否可以同时配置站点认证?
注意: 我查看了发布 WinRM 部署任务的 OOB IIS,我担心它们可能需要比我们的基础架构团队更多的时间(配置防火墙等)
我们在构建服务器上安装了 Visual Studio 2017。
TIA, 斯科特
【问题讨论】:
-
八达通设置有什么问题吗?你为什么打算放弃它?
-
您好,我们使用的是旧版本的 Octopus,而 TFS 2017 版本定义能够完成我们需要做的事情。
标签: asp.net iis tfs visual-studio-2017 octopus-deploy