最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

軟件測試 | Jenkinsfile語法

2023-05-31 10:13 作者:愛測軟件測試  | 我要投稿

實現(xiàn) Pipeline 功能的腳本語言叫做 Jenkinsfile,由 Groovy 語言實現(xiàn)。Jenkinsfile 一般是放在項目根目 錄,隨項目一起受源代碼管理軟件控制,無需像創(chuàng)建"自由風(fēng)格\"項目一樣,每次可能需要拷貝很多設(shè) 置到新項目,提供了一些直接的好處:

  • Pipeline 上的代碼審查/迭代

  • Pipeline 的審計跟蹤

  • Pipeline 的唯一真實來源,可以由項目的多個成員查看和編輯

Pipeline 支持:Declarative(在 Pipeline 2.5 中引入)和 Scripted Pipeline 兩種格式。兩者都支持建立 Pipeline,兩者都可以用于在 Web UI 中定義一個流水線 Jenkinsfile,將 Jenkinsfile 文件創(chuàng)建并檢查到 源代碼控制庫中通常被認(rèn)為是最佳做法。

Declared Pipeline

Declared Pipeline 語句樹

Declared Pipeline 必須包含在固定格式 Pipeline {} 塊內(nèi),每個聲明語句必須獨(dú)立一行,行尾無需使用分 號。塊( blocks{} )只能包含章節(jié)(Sections),指令(Directives),步驟(Steps)或賦值語句。 Declared Pipeline 語句樹

塊 blocks{}

由大括號括起來的語句,如 Pipeline{},Section{},parameters{},script{}

章節(jié)(Sections)

章節(jié)中通常包含一個或多個指令或步驟。如 agent 、post、stages、steps

指令(Directives)

environment、options、parameters、triggers(觸發(fā))、stage、tools、when

節(jié)點(agent)

必須存在,agent 必須在 Pipeline 塊內(nèi)的頂層定義,但 stage 內(nèi)是否使用使可選的

參數(shù): any/none/label/node/docker/dockerfile

常用選項 label/cuetomWorkspace/reuseNode

示例:

agent { label 'my-label' } agent { node { label 'my-label' customWorkspace '/some/other/path' } } agent { docker { image 'nginx:1.12.2' label 'my-label' args '-v /tmp:/tmp' } }

構(gòu)建后(post)

不是必須,用于 Pipeline 的最外層或者 stage{} 中,主要用于表達(dá) Jenkins 完成構(gòu)建動作之后需要做的 事情。 示例:

pipeline { agent any stages { stage('Example'){ steps { echo 'Hello world' } } } post { always { echo 'say goodbay' } } }

階段集 (stages)

必須存在,包括順序執(zhí)行的一個或多個 stage 命令,在 Pipeline 內(nèi)僅能使用一次,通常位于 agent/ options 后面。

步驟 steps

必須存在,steps 位于 stage 指令塊內(nèi)部,包括一個或多個 step。僅有一個 step 的情況下可以忽略關(guān)鍵 字 step 及其{}。

環(huán)境 environment

不是必須,environment 定義了一組全局的環(huán)境變量鍵值對,存在于 pipeline {} 或者 stage 指令內(nèi)。執(zhí) 行特殊方法 credentials()可以獲取 Jenkins 中預(yù)定義的憑證明文內(nèi)容。

示例:

environment {CC='clang'} environment {AN_ACCESS_KEY = credentials('my-prefined-secret-text')} steps {sh 'printenv'}

選項 options

不是必須,預(yù)定義 Pipeline 專有的配置信息,僅可定義一次

示例:

pipeline { agent any options{ timeout(time:1,unit: 'HOURS') } }

參數(shù) parameters

不是必須, 定義參數(shù)化構(gòu)建的參數(shù)可選參數(shù), 參數(shù)類型 booleanParam,choice,file,text, password,run,string 示例:

parameters { string(name: 'PERSON', defaultValue: 'Jenkins', description: '輸入的文本參 數(shù)') choice(name: 'CHOICE', choices: ['One', 'Two', 'Three'], description: 'Pick something') }

觸發(fā)器 triggers

不是必須,定義 Pipeline 被自動觸發(fā)的方式選項 cron、pollSCM、upstream

示例:

triggers { cron('0 8 * * 1-5') }


軟件測試 | Jenkinsfile語法的評論 (共 條)

分享到微博請遵守國家法律
上饶县| 克东县| 芒康县| 遵义市| 江都市| 荣昌县| 龙岩市| 出国| 大余县| 饶河县| 甘谷县| 淮北市| 房产| 奉贤区| 江川县| 离岛区| 灯塔市| 奉节县| 鄂温| 和田市| 怀集县| 长海县| 手游| 辽中县| 法库县| 萨嘎县| 嘉禾县| 汶上县| 钦州市| 广宁县| 高安市| 西盟| 灌云县| 新昌县| 乐山市| 洛扎县| 绍兴市| 收藏| 阿图什市| 渝北区| 宿州市|