日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jenkins-pipline-agent使用,使构建能够在不同环境,不同容器中运行

發布時間:2024/3/26 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jenkins-pipline-agent使用,使构建能够在不同环境,不同容器中运行 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

jenkins agent

參考地址https://www.jenkins.io/doc/book/pipeline/syntax/

該agent部分指定整個Pipeline或特定階段將在Jenkins環境中執行的位置,具體取決于該agent 部分的放置位置。該部分必須在pipeline塊內的頂層定義 ,但階段級使用是可選的。

簡單來說,agent部分主要作用就是告訴Jenkins,選擇那臺節點機器去執行Pipeline代碼。這個指令是必須要有的,也就在你頂層pipeline {…}的下一層,必須要有一個agent{…},agent這個指令對應的多個可選參數,本篇文章會一一介紹。這里注意一點,在具體某一個stage {…}里面也可以使用agent指令。這種用法不多,一般我們在頂層使用agent,這樣,接下來的全部stage都在一個agent機器下執行代碼。

#參數1:any 作用:在任何可用的代理上執行Pipeline或stage pipeline {agent anyparameters {gitParameter branchFilter: 'origin/(.*)', defaultValue: 'dev', name: 'BRANCH', type: 'PT_BRANCH'}stages{stage("git clone"){steps {script {sh """"""}}}stage("git clone"){steps {}}stage("git clone"){steps {}}} }參數2:none 當在pipeline塊的頂層應用時,將不會為整個Pipeline運行分配全局代理,并且每個stage部分將需要包含其自己的agent部分。 pipeline {agent anyparameters {gitParameter branchFilter: 'origin/(.*)', defaultValue: 'dev', name: 'BRANCH', type: 'PT_BRANCH'}stages{stage("git clone"){agent {label 'jenkins-git'}steps {script {sh """"""}}}stage("git build"){agent {label 'jenkins-jdk'}steps {}}stage("deploy"){agent {label 'jenkins-sync'}steps {}}} }//參數3:label 作用:使用提供的標簽在Jenkins環境中可用的代理機器上執行Pipeline或stage內執行。 pipeline {agent {label 'jenkins-dev'} } //參數4:node 作用:和上面label功能類似,但是node運行其他選項,例如customWorkspace pipeline {agent {node {label 'jenkins-agent-node1'customWorkspace "${env.JOB_NAME}/${env.BUILD_NUMBER}"}} }//其實agent相關的還有兩個可選參數,分別是docker和dockerfile//第一種全部在一個節點和 容器內運行 在節點jenkins-dev 上運行 golang:1.17-alpine容器掛載目錄 pipeline {agent {docker { label 'jenkins-dev'image 'golang:1.17-alpine' args "-v ${SSH_KEY_PATH}:${SSH_CREDENTIAL_PATH}"}}parameters {gitParameter branchFilter: 'origin/(.*)', defaultValue: 'dev', name: 'BRANCH', type: 'PT_BRANCH'}stages{stage("git clone"){steps {script {sh """"""}}}stage("git build"){agent {label 'jenkins-jdk'}steps {}}stage("deploy"){agent {label 'jenkins-sync'}steps {}}} }//使用多個容器 pipeline {agent nonestages {stage('git pull') {agent {docker{ image 'git:latest' }}steps {sh 'git version'}}stage('build'){agent {docker{ image 'node:7-alpine' }}steps {sh 'node --version'}}} }

總結

以上是生活随笔為你收集整理的jenkins-pipline-agent使用,使构建能够在不同环境,不同容器中运行的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。