吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

Pipeline改造過程中的幾點主要經(jīng)驗分享

8nfr_ZTEdevelop ? 來源:未知 ? 作者:李倩 ? 2018-04-13 10:26 ? 次閱讀

概述

經(jīng)過前面三篇文章的詳細介紹,講述了本項目在Jenkins2.0 Pipeline實踐和iPipeline框架(plll庫)應用的過程中的一些思考、改進以及實踐,而本文作為系列文章的最后一篇,主要想分享一下本項目在過去一段時間中對于Jenkins2.0 Pipeline改造的一些經(jīng)驗。

經(jīng)驗分享

XXX項目遷移到Pipeline已經(jīng)有一段時間了,期間不斷重構,不斷改進和演化,本文準備在此給出幾條本項目Pipeline改造過程中的幾點主要經(jīng)驗分享。

1. 建議項目打造分層模式的Pipeline流程

本項目啟用CI分層策略,打造了4個層次的CI流程,分別為:

VerifyCI

MergeCI

DailyCI

TagCI

其中VerifyCI和MergeCI用于開發(fā)人員平時合代碼、DailyCI對應每日構建,而TagCI則用于版本構建,各司其職,層次分明。

具體如下圖所示:

2. 建議打造多層次并行的Pipeline流程

不同Pipeline之間可并行Jenkins已天然支持,而利用iPipeline則能支持同一個Pipeline的不同任務之間的并行,而再具體到某個任務內(nèi)則設計者應根據(jù)各自項目實際情況,盡量將任務內(nèi)各步驟設計成并行模式。本項目對VerifyCI任務內(nèi)的各步驟運行規(guī)劃如下,能并行的步驟盡量并行執(zhí)行:

3. 關于MergeCI的運行模式與流程的摸索

該部分可以參考:-Jenkins2.0 Pipeline框架(iPipeline)優(yōu)化實踐之路(三:MergeCI機制研究)

4. 關于Jenkinsfile托管方式的小技巧

雖然說一般要求將Jenkinsfile與所在代碼庫的代碼放在一起托管,即將Jenkinsfile置于代碼庫根目錄,但我們在實際實踐中發(fā)現(xiàn)一個問題是,一旦代碼庫比較龐大,每次Pipeline運行時去解析Jenkinsfile時也是需要很長時間的,背后的原因不言而喻。

因此我們實際試驗發(fā)現(xiàn):Jenkinsfile 與 代碼庫可分離!即可以將置于其他Gerrit庫路徑中Jenkinsfile對另外一個Gerrit庫的代碼做CI編排,原因在于要做CI編排的庫路徑是人為地配置在Jenkinsfile中的。

舉例來說明:

本項目VerifyCI的Jenkinsfile托管路徑位于:xxx.xxx.com.cn/XXXXX/xxxxx_lib_verifyci

從VerifyCI的屬性參數(shù)中可以看出,如下圖所示:

然后我們的代碼庫地址則是另外一個,其配置于Jenkinsfile之中:

env.GERRIT_SERVER_NAME ="XXXXX_VerifyCI"

env.GERRIT_SERVER_URL ="ssh://xxxxx_jenkins@gerrit.zte.com.cn:29418/"

env.GERRIT_PROJECT = env.GERRIT_PROJECT?:"XXXXX/tool"http:// 實際代碼庫地址

plll.set_default_properties("verifyci",[

gerrit:[

server:"${env.GERRIT_SERVER_NAME}",

projects:[[project:"${env.GERRIT_PROJECT}", branch:"${plll.getJobBaseName()}"]]

]

]);

如此一來便實現(xiàn)了二者的分離。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4827

    瀏覽量

    69055
  • Pipeline
    +關注

    關注

    0

    文章

    28

    瀏覽量

    9383
  • devops
    +關注

    關注

    0

    文章

    116

    瀏覽量

    12089

原文標題:DevOps 案例 | Jenkins2.0 Pipeline框架(iPipeline)優(yōu)化實踐之路(四)

文章出處:【微信號:ZTEdeveloper,微信公眾號:中興開發(fā)者社區(qū)】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Linux安裝的幾點經(jīng)驗

    Linux的應用軟件比較少,Native分區(qū)也不必留的太大。我建議Native分區(qū)不要超過2.5G。  3. 由于安裝過程中會詢問一些有關硬件的信息,因此要提前搜集好PC硬件方面的信息。硬件信息主要
    發(fā)表于 09-13 10:16

    使用WiFi的過程中總結的一些經(jīng)驗

    簡述在我們做項目開發(fā),經(jīng)常會用到WiFi,這次給大家分享一下我在使用WiFi的過程中總結的一些經(jīng)驗,這次用到的是esp8266WiFi模塊,如圖所示。引腳連接:GND:接地GPIO16:其實是
    發(fā)表于 08-05 07:30

    無線充電電力傳輸過程中主要的損耗是什么

    無線充電電力傳輸過程中主要的損耗:1.供電端的驅動組件,主要是MOSFET的開關損耗2. 供電端和受電端的線圈與諧振電容通過電流的損耗3.受電端的整流部分,交流到直流的轉換損耗4.受電端的穩(wěn)壓轉換
    發(fā)表于 09-15 07:13

    Linux安裝的幾點經(jīng)驗

    Linux安裝的幾點經(jīng)驗 Linux安裝的幾點經(jīng)驗  有關于Linux操作系統(tǒng)的好處許多文章都已經(jīng)有介紹過了,想必大家一定都知道一些,前不久,我在我的電腦上安裝了一套
    發(fā)表于 01-18 12:40 ?438次閱讀

    ATX_電源維修的幾點經(jīng)驗

    ATX_電源維修的幾點經(jīng)驗,ATX_電源維修的幾點經(jīng)驗
    發(fā)表于 05-27 17:04 ?13次下載

    PCB布線的幾點經(jīng)驗

    PCB布線的幾點經(jīng)驗,感興趣的小伙伴們可以看看。
    發(fā)表于 07-26 15:18 ?0次下載

    淺析STM32調(diào)試過程中的幾個相關問題

    總的來講,單片機調(diào)試是單片機開發(fā)工作必不可少的環(huán)節(jié)。不管你愿不愿意,調(diào)試過程中總會有各種不期而遇的問題出現(xiàn)在我們面前來磨礪我們。這里分享幾點STM32調(diào)試過程中與開發(fā)工具及IDE有關的幾個常見問題,以供參考。
    的頭像 發(fā)表于 01-21 13:50 ?5492次閱讀

    5G網(wǎng)絡建設過程中的規(guī)劃及經(jīng)驗總結

    5G建設過程中難點,杭州移動在快速規(guī)劃、天面快速改造、靈活傳輸組網(wǎng)方案和動力改造方案4個方面做出一些探索。
    發(fā)表于 06-20 09:23 ?1.8w次閱讀
    5G網(wǎng)絡建設<b class='flag-5'>過程中</b>的規(guī)劃及<b class='flag-5'>經(jīng)驗</b>總結

    5G網(wǎng)絡建設過程中的各種規(guī)劃建以及經(jīng)驗總結

    5G建設過程中難點,杭州移動在快速規(guī)劃、天面快速改造、靈活傳輸組網(wǎng)方案和動力改造方案4個方面做出一些探索。
    發(fā)表于 06-21 08:57 ?1.4w次閱讀
    5G網(wǎng)絡建設<b class='flag-5'>過程中</b>的各種規(guī)劃建以及<b class='flag-5'>經(jīng)驗</b>總結

    如何降低數(shù)模設計過程中的數(shù)模干擾

    數(shù)模設計過程中要避免照搬經(jīng)驗和規(guī)則,但要徹底講清這個問題,首先要明白數(shù)模干擾的機理,數(shù)字對模擬的影響可以分為以下兩種情況。
    發(fā)表于 03-27 14:05 ?965次閱讀

    嵌入式開發(fā)過程中的一點調(diào)試經(jīng)驗

    嵌入式開發(fā)過程中的一點調(diào)試經(jīng)驗嵌入式開發(fā)最麻煩的在現(xiàn)場調(diào)試過程中或實際運營過程中出現(xiàn)問題很難定位。我在實際開發(fā)過程中一點
    發(fā)表于 11-02 18:06 ?15次下載
    嵌入式開發(fā)<b class='flag-5'>過程中</b>的一點調(diào)試<b class='flag-5'>經(jīng)驗</b>

    Verilog設計過程中的一些經(jīng)驗與知識點

     “ 本文主要分享了在Verilog設計過程中一些經(jīng)驗與知識點,主要包括塊語句、阻塞賦值和非阻塞賦值 以及結構說明語句(initial, always, task, function)
    的頭像 發(fā)表于 03-15 12:19 ?2442次閱讀

    升壓變流器的幾點調(diào)試經(jīng)驗

    升壓變流器的幾點調(diào)試經(jīng)驗
    發(fā)表于 11-02 08:16 ?0次下載
    升壓變流器的<b class='flag-5'>幾點</b>調(diào)試<b class='flag-5'>經(jīng)驗</b>

    PipelinethrowIt的用法

    字如其名,來看下PipelinethrowIt的用法,是怎么個丟棄方式。
    的頭像 發(fā)表于 10-21 16:24 ?612次閱讀
    <b class='flag-5'>Pipeline</b><b class='flag-5'>中</b>throwIt的用法

    什么是pipeline?Go構建流數(shù)據(jù)pipeline的技術

    本文介紹了在 Go 構建流數(shù)據(jù)pipeline的技術。 處理此類pipeline的故障很棘手,因為pipeline
    的頭像 發(fā)表于 03-11 10:16 ?668次閱讀
    百家乐官网制胜秘| 真人百家乐官网代理合作| 百家乐扎金花斗地主| 在线百家乐纸牌游戏| 百家乐赌场软件| 金三角百家乐的玩法技巧和规则| 百家乐博娱乐网提款速度快不| 怎么赢百家乐的玩法技巧和规则| 百家乐加牌规| 大发888游戏黄金之旅| 棋牌捕鱼| 云顶国际注册| 百家乐官网娱乐城7| 百家乐官网龙虎斗等| 老k百家乐官网的玩法技巧和规则| 24山向阴阳图| 百家乐投注杀手| 百家乐太阳娱乐网| 真人娱乐城排行榜| 百家乐最好的平台是哪个| 百盛百家乐的玩法技巧和规则 | 利都百家乐官网国际娱乐| 百家乐注册送免费金| 聚宝盆百家乐的玩法技巧和规则| 金博士娱乐城备用网址| 粤港澳百家乐官网娱乐场| 百家乐视频打麻将| 百家乐六手变化混合赢家打| 金昌市| 百家乐官网看点打法| 百家乐官网赌博破解方法| 娱乐城百家乐高手| 东方太阳城二手房| 真钱娱乐平台| 真人百家乐官网蓝盾娱乐平台| 百家乐高手论坛| 波克棋牌官方下载| 澳门百家乐官网规则视频| 网络百家乐可靠吗| 大发888娱乐游戏外挂| 真人百家乐官网网站接口|