【问题标题】:TFS 2017 How to rollback a releaseTFS 2017 如何回滚版本
【发布时间】:2017-12-18 19:51:58
【问题描述】:

如果发布失败,是否有人有可靠的回滚方法?文中提到的方法听起来不太实用:https://blogs.msdn.microsoft.com/devops/2016/03/28/implement-rollback-with-release-management-for-tfs-2015/

IBM UrbanCode Deploy 可以选择重新部署先前成功的部署,无需任何用户干预:https://developer.ibm.com/urbancode/videos/rollback-scenarios-in-ibm-urbancode-deploy/

我们可以在 TFS 中使用它吗?

【问题讨论】:

  • 能否描述一下MSDN博客中哪一部分不实用?

标签: ucd


【解决方案1】:

在您的帐户中安装 Release Management Utility Tasks 扩展程序后,您将在任务目录中看到一个名为“Rollback powershell”的任务。对于回滚,您只需将此任务添加到发布定义中并将其标记为“始终运行”。

访问任务执行信息的示例如下。

try
{

$jsonobject = ConvertFrom-Json $env:Release_Tasks

}
catch
{

Write-Verbose -Verbose “Error parsing Release_Tasks environment variable”
Write-Verbose -Verbose $Error

}

foreach ($task in $jsonobject | Get-Member -MemberType NoteProperty)
{

$taskproperty = $jsonobject.$($task.Name) | ConvertFrom-Json
Write-Verbose -Verbose “Task $($taskproperty.Name) with rank $($task.Name) has status $($taskproperty.Status)”
// Perform rollback action required in case $task.Name has status failed

}

请注意,您可能需要更新 api 版本。检查以下情况:

https://social.msdn.microsoft.com/Forums/expression/en-US/aacab4c3-b25b-4348-90b1-4d5661d9d148/release-management-utility-tasks-rollback-task-is-not-working-in-tfs-2017-update-1?forum=tfsbuild

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-15
    • 1970-01-01
    • 1970-01-01
    • 2018-02-22
    • 2010-12-03
    • 2010-09-07
    相关资源
    最近更新 更多