Updated Jenkins
Added Release upload
This commit is contained in:
Vendored
+55
@@ -9,6 +9,8 @@ pipeline {
|
||||
|
||||
TAIGA_PROJECT_ID = '2'
|
||||
TAIGA_URL = 'https://taiga.grigowashere.ru'
|
||||
GITEA_OWNER = 'Grigo'
|
||||
GITEA_REPO = 'Testing'
|
||||
}
|
||||
|
||||
stages {
|
||||
@@ -23,6 +25,59 @@ pipeline {
|
||||
'''
|
||||
|
||||
archiveArtifacts artifacts: '**/build/outputs/apk/**/*.apk', fingerprint: true
|
||||
stash name: 'apk', includes: '**/build/outputs/apk/**/*.apk'
|
||||
}
|
||||
}
|
||||
|
||||
stage('Create Gitea Release and Upload APK') {
|
||||
steps {
|
||||
unstash 'apk'
|
||||
|
||||
withCredentials([string(credentialsId: 'Gitea_Credentials', variable: 'GITEA_TOKEN')]) {
|
||||
writeFile file: 'gitea-release.ps1', text: '''
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
$apkPath = "build/outputs/apk/debug/app-debug.apk"
|
||||
|
||||
$headers = @{
|
||||
Authorization = "token $env:GITEA_TOKEN"
|
||||
}
|
||||
|
||||
$body = @{
|
||||
tag_name = "v$env:BUILD_NUMBER"
|
||||
target_commitish = "main"
|
||||
name = "Release v$env:BUILD_NUMBER"
|
||||
body = "Jenkins Android build $env:BUILD_NUMBER`n$env:BUILD_URL"
|
||||
draft = $false
|
||||
prerelease = $false
|
||||
} | ConvertTo-Json
|
||||
|
||||
# Создаём релиз в Gitea
|
||||
$release = Invoke-RestMethod `
|
||||
-Method Post `
|
||||
-Uri "https://git.grigowashere.ru/api/v1/repos/$env:GITEA_OWNER/$env:GITEA_REPO/releases" `
|
||||
-Headers $headers `
|
||||
-ContentType "application/json" `
|
||||
-Body $body
|
||||
|
||||
# Формируем URL для загрузки артефакта
|
||||
$uploadUrl = "https://git.grigowashere.ru/api/v1/repos/$env:GITEA_OWNER/$env:GITEA_REPO/releases/$($release.id)/assets?name=app-debug.apk"
|
||||
|
||||
# Используем curl для загрузки APK в Gitea
|
||||
curl.exe -X POST `
|
||||
$uploadUrl `
|
||||
-H "Authorization: token $env:GITEA_TOKEN" `
|
||||
-F "attachment=@$apkPath;type=application/vnd.android.package-archive"
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
throw "Gitea asset upload failed: $apkPath"
|
||||
}
|
||||
'''
|
||||
|
||||
bat '''
|
||||
powershell -NoProfile -ExecutionPolicy Bypass -File gitea-release.ps1
|
||||
'''
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user