<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Jenkins Pipeline動(dòng)態(tài)使用Git分支名稱的技巧

          共 1621字,需瀏覽 4分鐘

           ·

          2021-07-04 11:04

          前言

          在上一篇 Jenkins 使用環(huán)境變量 中,幫助大家使用一條 Docker 命令就可以快速玩轉(zhuǎn) Jenkins,同時(shí)用最簡(jiǎn)單的方式解釋了 Jenkins 中讓人混亂的環(huán)境變量,本文還是接著變量說點(diǎn)事情

          一般成熟的項(xiàng)目流程都會(huì)通過 Jenkins Pipeline 來做 CI 部分,在默認(rèn) Jenkins 環(huán)境配置中,Jenkins Pipeline 分為兩種:

          1. Pipeline (單分支 Pipeline)
          2. Multibranch Pipeline (多分支 Pipeline)

          如下圖:

          如果使用了多分支 Pipeline,就不會(huì)存在動(dòng)態(tài)使用分支名稱的問題了。如果你想使用單分支 Pipeline,又想動(dòng)態(tài)使用分支,那本文就派上用場(chǎng)了

          Jenkins 中動(dòng)態(tài)使用分支名稱

          新建單分支 Pipeline后,可以在界面中看到 This project is parameterized , 勾選上,然后添加 String 類型的參數(shù),如下圖所示,String 類型的參數(shù)名稱為 BranchName, 默認(rèn)值是 master 分支

          向下滾動(dòng),來配置 Jenkins Pipeline,其中在指定 Jenkins Pipeline 分支的位置,就可以使用上面剛剛創(chuàng)建的變量 BranchName 了,如下圖所示,配置成

          */${BranchName}

          注意:如果勾選 Lightweight checkout 可能會(huì)出現(xiàn)下面的 Error

          stderr: fatal: Couldn't find remote ref refs/heads/${BranchName}

          以這種方式,Jenkins Pipeline 會(huì)動(dòng)態(tài)根據(jù)分支名稱來拉取代碼,同樣也可以在 Jenkinsfile 中動(dòng)態(tài)使用剛剛創(chuàng)建好的 BranchName

          pipeline {
           ...
           
           parameters {
            string(name: 'BranchName'defaultValue: 'master'description: null)
           }
           
           stages {
            stage ('Test Branch Name') {
             steps {
              echo "${env.BranchName}"
             }
            }
           }
          }

          當(dāng)點(diǎn)擊左側(cè) Build with Parameters 后,我們就可以動(dòng)態(tài)輸入分支名稱來運(yùn)行 job 了

          總結(jié)

          在 Jenkins 中,其實(shí)這是一種很常見的動(dòng)態(tài)使用參數(shù)的方式,config 的其他參數(shù)也可以動(dòng)態(tài)引用變量,大大增加靈活性,如果你要維護(hù) JenkinsPipelie 相關(guān)的內(nèi)容,你大概率會(huì)遇到這種需求,這個(gè)小技巧收入囊中吧。


          往期推薦

          Dubbo 3.0.0正式發(fā)布:應(yīng)用級(jí)服務(wù)注冊(cè),跨語言的RPC協(xié)議、更好支持Kubernetes!

          Spring Boot的各種漏洞,值得好好研究一番!

          超級(jí)任天堂模擬器 bsnes 開發(fā)者自殺(文末附模擬器及ROM)

          深圳一普通中學(xué)老師工資單曝光,秒殺程序員

          我來出個(gè)題:這些事務(wù)會(huì)不會(huì)回滾?大概率你會(huì)錯(cuò)!


          點(diǎn)擊下方卡片關(guān)注我,訂閱更多開發(fā)者資訊

          瀏覽 50
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  影音先锋AV激情理论在线观看 | 水蜜桃视频网站在线观看 | 青娱乐导航 | 欧美黄色成人 | 欧美美穴一区 |