1
나는 트래비스 스테이지를 사용하고 있으며 배포를위한 전제 조건으로 어떻게 든 결과를 포함하려고합니다.Travis + Appveyor
이미이 작업을 수행 할 수있는 통합 또는 스크립트가 있습니까? python이 이상적입니다.
나는 트래비스 스테이지를 사용하고 있으며 배포를위한 전제 조건으로 어떻게 든 결과를 포함하려고합니다.Travis + Appveyor
이미이 작업을 수행 할 수있는 통합 또는 스크립트가 있습니까? python이 이상적입니다.
이렇게하면 AppVeyor 빌드를 시작하고 결과를 기다리는 데 도움이 될 수 있습니다. 죄송합니다 PowerShell에 익숙하지만 Python으로 쉽게 변환 할 수 있어야합니다.
$token="<Your_api_token>"
$accountName="<Your_account>"
$projectSlug="<Your_project_slug>"
$branch="<Your_branch>"
$commitId="<Your_commit_id>"
$headers = @{
"Authorization" = "Bearer $token"
"Content-type" = "application/json"
}
$body = @{
accountName=$accountName
projectSlug=$projectSlug
branch=$branch
commitId=$commitId
}
$body = $body | ConvertTo-Json
$newBuild = Invoke-RestMethod -Uri 'https://ci.appveyor.com/api/builds' -Headers $headers -Body $body -Method POST
$success = $false;
while(!$success) {
$status = (Invoke-RestMethod -Uri "https://ci.appveyor.com/api/projects/$accountName/$projectSlug/build/$($newBuild.version)" -Headers $headers -Method GET).build.status
write-host "Status: $status"
$success = $status -eq "success"
if (($status -eq "failed") -or ($status -eq "cancelled")) {throw}
sleep 2
}
걱정할 필요가 없습니다. 제가 리눅스를 요구 한 이유는 Travis를 주요 CI 서버로 유지하기 위해서입니다. 하지만 그렇습니다. 귀하의 예는 매우 유용합니다. – purpletentacle
궁금합니다. 프로덕션에서 이것을 사용하고 있습니까? – purpletentacle
무엇? 이 스크립트? 아니, 그냥 너를 위해 함께 넣었 어. 프로덕션에서는'while' 루프에 추적 및 시간 초과를 추가합니다. – ilyaf