VSTS 版本定义的问题

Posted

技术标签:

【中文标题】VSTS 版本定义的问题【英文标题】:Issue with VSTS Release Definition 【发布时间】:2018-02-18 11:58:37 【问题描述】:

我有一个 ASP.NET MVC 应用程序并希望将其部署到 Azure 云服务。

我已添加 Azure 云服务部署任务并尝试使用“新建按钮”配置订阅详细信息。有两个字段要求输入用户名和密码。所以我输入了用于登录portal.azure.com 的凭据。但是在发布过程中出现错误。如果我遗漏了什么,你能帮忙吗?

2018-02-14T22:43:28.0976940Z ##[command]Import-Module -Name C:\Program Files\WindowsPowerShell\Modules\AzureRM.Profile\2.1.0\AzureRM.Profile.psm1 -Global 2018-02-14T22:43:28.1499971Z ##[command]Add-AzureAccount -Credential System.Management.Automation.PSCredential 2018-02-14T22:43:31.8827701Z ##[error]AADSTS50079:用户需要使用多重身份验证。

【问题讨论】:

【参考方案1】:

Azure 经典门户已停用,因此您需要使用新门户并添加 Azure 资源管理器 (Azure RM) 服务端点。

添加 Azure RM 服务端点的简单方法:

    创建新的构建定义 添加Azure App Service Deploy任务,选择Available Azure subscription中的项目 点击授权按钮

之后,它会将相关的服务端点添加到您的团队项目中。

另一种方式是,你可以参考这篇博客添加服务端点:

Connect your Azure subscriptions to VSTS in 3 clicks

【讨论】:

谢谢!但我很少在 Azure 上提供云服务,而不是应用服务。所以不能选择应用服务部署。您能建议我使用云服务的步骤吗? 这篇文章可能对你有帮助:edsquared.com/…【参考方案2】:

您可以创建一组与您的 Microsoft 帐户凭据不同的部署凭据

一切都很好解释here:

当您登录 Microsoft Azure 时,您将使用 Microsoft 帐户登录。此帐户允许您添加、修改和删除 Azure 订阅中的资源。一些 Azure 资源,例如 因为网站和移动服务需要单独部署 发布代码的凭据。这个单独的部署凭证可以 令人困惑,我想记录几个关键点:

    您为部署凭据选择的用户名必须是唯一的 跨所有 Azure 订阅者。 您创建的部署凭据是 与您的 Microsoft 帐户绑定,并且对所有人都是相同的凭据 需要部署凭据的 Azure 资源。 你没有 想要共享您的部署凭据。同样,该凭证具有 有权将代码发布到您的所有网站和移动服务 Microsoft 帐户可以管理

【讨论】:

不确定如何为云服务部署创建用户?没有为云服务下载发布配置文件的选项。这仅适用于应用程序服务。新门户中也不存在“将用户添加为共同管理员”。我将自己添加为 Azure 服务发布管理贡献者,但仍然遇到同样的错误。

以上是关于VSTS 版本定义的问题的主要内容,如果未能解决你的问题,请参考以下文章

在 VSTS 中使用 git tag 或 package.json 版本作为 Release 名称

如何在VSTS版本定义中处理WebRole的配置转换

如何为NuGet创建手动VSTS版本?

VSTS - Xamarin Proguard 版本和 JDK 1.8 的问题

是否可以在 TFS\VSTS 中识别部署批准被覆盖的版本?

使用 VSTS REST API 创建带有标题的版本