【问题标题】:Promote build with Jenkins API使用 Jenkins API 促进构建
【发布时间】:2017-04-09 21:07:57
【问题描述】:

假设 Jenkins 构建作业具有不同的提升作业(即,将构建提升到不同的环境),如何使用 Jenkins API 触发特定构建的特定提升作业?

【问题讨论】:

    标签: jenkins build


    【解决方案1】:

    综合不同来源的答案得出这个结论:

    $Username = "Username"
    $APItoken = '12345'
    $Credential = "$($Username):$($APItoken)"
    $EncodedCredential = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($Credential))
    $BasicAuthValue = "Basic $EncodedCredential"
    $Headers = @{
                    Authorization = $BasicAuthValue
                }
    
    Write-Output "Promoting build $LatestBuildNumber to Environment..."
    
    Invoke-WebRequest -URI "http://jenkins.prd.company.com/job/jobname/buildnumber/promotion/forcePromotion?name=PromoteToEnvironment" -Headers $Headers
    

    【讨论】:

      【解决方案2】:

      我知道这是一个旧线程,但只是为了帮助社区。​​p>

      使用CURL的Shell解决方案:

      user_name="jenkins_user"
          user_token="token" 
          promotion_name="Test_Promote"
          jenkins_url="http://build-server.com"
          JOB_NAME="job_name"
          JOB_NO="job-no"
      
          url="--silent -u $user_name:$user_token $jenkins_url/job/$JOB_NAME/$JOB_NO/promotion/forcePromotion?name=$promotion_name"
          curl $url
      

      如何生成jenkins用户token:https://jenkins.io/blog/2018/07/02/new-api-token-system/

      【讨论】:

        猜你喜欢
        • 2011-09-07
        • 1970-01-01
        • 1970-01-01
        • 2012-01-19
        • 2013-03-12
        • 1970-01-01
        • 2023-03-15
        • 2012-10-25
        • 1970-01-01
        相关资源
        最近更新 更多