diff --git a/Jenkinsfile b/Jenkinsfile index a767cb1..db74299 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -29,24 +29,26 @@ pipeline { script { def repoOwner = 'reza' def repoName = 'go-hello-world' - def tagName = 'v1.0.0' - def releaseTitle = 'v1.0.0' - def releaseDescription = 'v1.0.0' + def tagName = 'v1.0.1' + def releaseTitle = 'v1.0.1' + def releaseDescription = 'v1.0.1' def zipFile = 'hello-world.zip' - def createReleaseCmd = """ - curl -X POST -H "Content-Type: application/json" -H "Authorization: token ${GITEA_API_TOKEN}" \\ - -d '{ "tag_name": "${tagName}", "target_commitish": "main", "name": "${releaseTitle}", "body": "${releaseDescription}", "draft": false, "prerelease": false }' \\ + def createReleaseResponse = sh(script: """ + curl -s -X POST -H "Content-Type: application/json" -H "Authorization: token ${GITEA_API_TOKEN}" \\ + -d '{ "tag_name": "${tagName}", "target_commitish": "master", "name": "${releaseTitle}", "body": "${releaseDescription}", "draft": false, "prerelease": false }' \\ "https://git.behzadan.ir/api/v1/repos/${repoOwner}/${repoName}/releases" - """ - sh createReleaseCmd + """, returnStdout: true).trim() + + def parsedResponse = readJSON text: createReleaseResponse + def releaseID = parsedResponse.id - def uploadAssetCmd = """ - curl -X POST -H "Authorization: token ${GITEA_API_TOKEN}" -H "Content-Type: application/zip" \\ + sh """ + curl -X POST -H "Authorization: token ${GITEA_API_TOKEN}" -H "Content-Type: application/octet-stream" \\ --data-binary @${zipFile} \\ - "https://git.behzadan.ir/api/v1/repos/${repoOwner}/${repoName}/releases/${tagName}/assets?name=${zipFile}" + "https://git.behzadan.ir/api/v1/repos/${repoOwner}/${repoName}/releases/${releaseID}/assets?name=${zipFile}" """ - sh uploadAssetCmd + } } }