refs TG-3: build Windows Qt

This commit is contained in:
2026-05-02 18:54:35 +03:00
parent af48107a88
commit 7af1556fd8
Vendored
+82
View File
@@ -1,12 +1,19 @@
pipeline {
agent none
environment {
TAIGA_PROJECT_ID = '1'
TAIGA_URL = 'https://taiga.grigowashere.ru'
}
stages {
stage('Build Windows Qt') {
agent { label 'windows' }
steps {
deleteDir()
checkout scm
bat '''
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Auxiliary\\Build\\vcvars64.bat"
@@ -33,4 +40,79 @@ bat '''
}
}
}
post {
always {
node('windows') {
script {
def result = currentBuild.currentResult ?: 'UNKNOWN'
withCredentials([string(credentialsId: 'TAIGA_TOKEN', variable: 'TAIGA_TOKEN')]) {
powershell(returnStatus: true, script: """
\$commitMsg = git log -1 --pretty=%B
\$match = [regex]::Match(\$commitMsg, 'TG-(\\d+)')
if (-not \$match.Success) {
Write-Host "No TG-* reference found"
exit 0
}
\$ref = \$match.Groups[1].Value
\$headers = @{
Authorization = "Bearer \$env:TAIGA_TOKEN"
"Content-Type" = "application/json"
}
\$targets = @(
@{ endpoint = "userstories"; label = "User Story" },
@{ endpoint = "issues"; label = "Issue" },
@{ endpoint = "tasks"; label = "Task" }
)
\$found = \$null
foreach (\$target in \$targets) {
try {
\$url = "\$env:TAIGA_URL/api/v1/\$(\$target.endpoint)/by_ref?project=\$env:TAIGA_PROJECT_ID&ref=\$ref"
\$data = Invoke-RestMethod -Uri \$url -Headers \$headers -Method Get
if (\$data.id) {
\$found = @{
endpoint = \$target.endpoint
label = \$target.label
data = \$data
}
break
}
} catch {
Write-Host "Taiga lookup warning: \$($_.Exception.Message)"
}
}
if (-not \$found) {
Write-Host "Taiga TG-\$ref not found"
exit 0
}
\$comment = "Jenkins Windows Qt build #$env:BUILD_NUMBER: ${result}`n$env:BUILD_URL"
\$body = @{
comment = \$comment
version = \$found.data.version
} | ConvertTo-Json
try {
\$url = "\$env:TAIGA_URL/api/v1/\$(\$found.endpoint)/\$(\$found.data.id)"
Invoke-RestMethod -Uri \$url -Headers \$headers -Method Patch -Body \$body
Write-Host "Commented Taiga TG-\$ref (\$(\$found.label))"
} catch {
Write-Host "Taiga comment warning: \$($_.Exception.Message)"
}
exit 0
""")
}
}
}
}
}
}