2017-09-20 9 views
0

작업 1은 PowerShell 스크립트입니다. 변수를 설정합니다. ##vso[task.setvariable variable=Metadata.ContinueGen;]falseTaskContext에 설정된 변수를 기반으로 Visual Studio Online 빌드를 취소하는 방법은 무엇입니까?

작업 2에는 eq(variables['Metadata.ContinueGen'], true) 조건이 충족되는 경우에만 실행되는 사용자 지정 조건이 있습니다. 작업이 건너 뜁니다. 괜찮습니다. 그러나 나는 아직도 실행하고 싶지 않은 일련의 작업들을 가지고 있습니다.

각 작업 정의에 조건을 적용하지 않고도 나머지 빌드 작업을 중지하는 방법을 알고 싶습니다. 당신이 당신의 PowerShell 스크립트에 넣고 경우 조건이 발생하는 경우 빌드를 중지하고 싶은 것 소리

답변

0

..

, 그것은 오류와 활동의 나머지 부분을 종료합니다.

Write-Error ("Stopping Build steps, will not continue to the next") 
exit 1 
+0

그래도 작동하려면 오류가 아닌 성공 + 취소 된 상태로 완료해야합니다. –

1

사용자 정의 조건은 어떻게 모든 다음 작업을 작업을 실행하는 을 설정할 수 있습니다. 따라서 다음 모든 작업에 대한 사용자 지정 조건을 설정해야합니다 (사용자 지정 조건에 따라 보관하려는 경우).

그러나 변수 Metadata.ContinueGenfalse 인 경우을 건너 뛰거나 취소 할 수있는 다른 방법은 입니다. 상세 아래 단계 : 기본 조건

  1. 설정 다음의 모든 작업은 이전의 모든 작업은을 성공에만 사용할 수 있습니다.
  2. 작업 전에 PowerShell 작업을 추가하여 Metadata.ContinueGen 값이 false인지 비교하십시오. 그것은 거짓 경우, 취소로 jobstatus 설정하십시오 Metadata.ContinueGen이 거짓

    Write-Host "##vso[task.setvariable variable=agent.jobstatus;]canceled" 
    
  3. 경우 PowerShell을 작업에 대한 상태가 성공하지 않기 때문에, 다음과 같은 작업도 취소됩니다.