VSTS Devops развернул неудачный откат к предыдущей версии с сетью и базой данных? - PullRequest
0 голосов
/ 03 июня 2019

Обеспечивает автоматический откат к предыдущей версии при неудачном развертывании (Web & Database)

Я установил Release Management Utility Расширение задач в вашей учетной записи, вы увидите задачу с именем « Откат PowerShell » в задаче

Я попытался добавить код «Откат 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   
} 

Этот метод правильный? если другим способом?

Спасибо

Ответы [ 2 ]

0 голосов
/ 11 июня 2019

Я думаю, что вам не хватает остальной части кода. Вам нужно добавить логику для того, когда должен быть выполнен откат:

if ($taskproperty.Status -eq  "failed")
{
      $statuscode = "$($taskproperty.Status)"
      Write-Verbose -Verbose $statuscode
}
} 
0 голосов
/ 03 июня 2019

Метод правильный. Как указано в документе:

Задача должна установить переменную среды "Release_Tasks", чтобы сделать состояние выполнения каждой из задач в задании развертывания доступным дляСкрипт powershell.

Могу ли я узнать, добавили ли вы переменную System.Debug для вывода информации об отладке.Если вы установите System.Debug в качестве режима для конвейера выпуска, вы можете найти журнал при выполнении задач.

try
{    
    Write-Verbose -Message "1111111111111111111111111111111111111111111111111"
    Write-Verbose -Message “$env:Release_Tasks”
    Write-Verbose -Message "2222222222222222222222222222222222222222222222222"
    $jsonobject = ConvertFrom-Json $env:Release_Tasks
    Write-Verbose -Message "3333333333333333333333333333333333333333333333333"

}
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   
} 

Вы получите отладочную информацию, такую ​​как Информация о журнале .Можете ли вы проверить журналы задач?Я не уверен, что смысл не работает в вашем посте.Означает ли это, что выпуск не выполнен или задача Rollback PowerShell не работает так, как вы хотели?Пожалуйста, детализируйте информацию.

...