在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

實(shí)踐中我們將展示我們的三種代碼分支策略

電子工程師 ? 來源:未知 ? 作者:李倩 ? 2018-03-24 09:52 ? 次閱讀

DevOps微課系列旨在幫助用戶學(xué)習(xí)DevOps實(shí)踐。

業(yè)務(wù)背景

問題一:

現(xiàn)有CI上的構(gòu)建項(xiàng)目無法完成UT/FT/ST等測(cè)試及SM復(fù)雜度或Lizard圈復(fù)雜度檢查。

現(xiàn)有CI上的構(gòu)建項(xiàng)目只能對(duì)版本控制源代碼,而測(cè)試代碼、數(shù)據(jù)庫腳本、構(gòu)建和部署腳本、依賴的庫文件等,并且對(duì)構(gòu)建產(chǎn)物的版本控制也同樣重要,只有這些內(nèi)容都納入版本控制了,才能夠確保所有的開發(fā)、測(cè)試、運(yùn)維活動(dòng)能夠正常開展,系統(tǒng)能夠被完整的搭建。

普通pipeline無法對(duì)多個(gè)branch進(jìn)行支持,無法對(duì)Gerrit trigger觸發(fā)的DailyCI、VerifyCI、MergeCI合并在同一個(gè)構(gòu)建項(xiàng)目中,導(dǎo)致pipeline流水線很多,管理復(fù)雜。

問題二:

現(xiàn)有的版本發(fā)布是將版本編譯目標(biāo)文件打包上傳制品庫,在環(huán)境部署過程中需要提前配置主機(jī)環(huán)境,如果環(huán)境較為復(fù)雜和繁瑣,給環(huán)境配置帶來不小的困難。采用docker方式打包環(huán)境和版本利于測(cè)試部署和現(xiàn)網(wǎng)部署。

解決思路

1.通過multibranch類型的pipeline job使得對(duì)于多個(gè)branch的支持更加簡(jiǎn)單。

只需要?jiǎng)?chuàng)建一個(gè)multibranch job,jenkins將自動(dòng)地為所有的branch創(chuàng)建job。

2.構(gòu)建docker環(huán)境并打包編譯版本到鏡像中,將鏡像pull到制品庫。

實(shí)踐情況

解決方案中我們明確了gerrit上代碼分支管理策略,對(duì)不同的分支版本采用不同的分支策略,在實(shí)踐中我們將展示我們的三種代碼分支策略。

1.代碼分支策略1——開發(fā)分支與發(fā)布分支

2.代碼分支策略2——特性分支(臨時(shí)分支)

3.代碼分支策略3——修復(fù)Bug分支

解決方案

解決方案中我們還詳細(xì)闡述了我們的CI創(chuàng)建,包括Multibranch Pipeline創(chuàng)建,Jenkinsfile的撰寫、存放及調(diào)用,完整效果預(yù)覽。

1.新建multibranch pipeline job

2. 每個(gè)分支代碼的根目錄下存放Jenkinsfile,撰寫jekinsfile腳本

腳本分如下幾個(gè)部分:

1) Jekinsfile中添加接收gerrit 觸發(fā)事件的Properties

配置成功后在Branches中查看配置,會(huì)看到自動(dòng)生成的配置觸發(fā)頁面為

2)獲取verifyCI需要的gerrit上change分支

3) 腳本處理不同的gerrit上的branch分支

4) 腳本處理不同的gerrit觸發(fā)事件

3.自動(dòng)為每個(gè)branch生成job

在multibranch pipeline job保存后,jenkins自動(dòng)地檢查所有的branch,且自動(dòng)地為所有的branch創(chuàng)建job,當(dāng)然前提是存在jenkinsfile文件。例如上面的job,自動(dòng)地生成了文件夾*-AI-*-RUNNTIME,且在此文件夾下自動(dòng)地為trunk和branch生成了job。如果在代碼庫上某個(gè)branch分支被刪除,multibranch pipeline也會(huì)自動(dòng)檢測(cè)變化并刪除相應(yīng)的job。

4.Scan Multibranch Pipeline Now第一次生成Multibranch Pipeline時(shí),會(huì)自動(dòng)掃描pipeline配置文件并建立相應(yīng)的job,后續(xù)如果jenkinsfile文件有變更,也可以手動(dòng)觸發(fā)掃描,日志輸出如下

5.這樣建立完成一個(gè)完整的MultiBranch Pipeline

不同任務(wù)運(yùn)行效果圖如下所示,在同一個(gè)pipeline中可見并管理不同的gerrit觸發(fā)任務(wù),比如patchset-created、change-merged和daily_ci。

6.Gtest+lconv代碼單元測(cè)試及覆蓋率檢查

輸出gtest單元測(cè)試及l(fā)cov代碼覆蓋率檢測(cè)結(jié)果

7.Docker鏡像通過制品庫發(fā)布

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

    關(guān)注

    30

    文章

    4891

    瀏覽量

    70308
  • Docker
    +關(guān)注

    關(guān)注

    0

    文章

    512

    瀏覽量

    12757

原文標(biāo)題:DevOps案例 | 基于Multibranch Pipeline+docker+gtest+lcov等集成代碼檢查構(gòu)建發(fā)布實(shí)踐

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    我們如何開始代碼審查

    從一開始,開發(fā)者就會(huì)互相幫助,如果測(cè)試遇到了問題或是有新人加入到了團(tuán)隊(duì),領(lǐng)導(dǎo)或是資深開發(fā)者就會(huì)審查他們的代碼。除此之外,我們還聘請(qǐng)了外部專家進(jìn)行安全代碼審查。系統(tǒng)發(fā)布后,
    發(fā)表于 12-16 15:51

    展示三種RS485應(yīng)用場(chǎng)景的半雙工參考設(shè)計(jì)包括BOM及層圖

    設(shè)計(jì)的隔離式電源進(jìn)行快速評(píng)估和設(shè)計(jì)。此外,用戶指南中的測(cè)試結(jié)果還將展示針對(duì)此設(shè)計(jì)所執(zhí)行的 IEC61000-4-2 ESD 和 IEC61000-4-5 浪涌測(cè)試。主要特色一項(xiàng)設(shè)計(jì)展示
    發(fā)表于 09-21 09:15

    隨機(jī)動(dòng)力系統(tǒng)怎么實(shí)現(xiàn)策略搜索?

    隨機(jī)輸入使我們的模型能夠自動(dòng)捕獲復(fù)雜的噪聲模式,提高基于模型的模擬質(zhì)量,并在實(shí)踐中制定出更好的策略。
    發(fā)表于 08-12 07:07

    三種提高Python代碼性能的簡(jiǎn)便方法

      在互聯(lián)網(wǎng)編程語言盛行的今天,Python是比較流行的編程語言之一。但很多程序員對(duì)于Python代碼性能的方法并不了解。今天這里主要為大家介紹三種提高Python代碼性能的簡(jiǎn)便方法,即是一是基準(zhǔn)
    發(fā)表于 08-03 18:37

    什么是回歸測(cè)試及為什么它在軟件開發(fā)實(shí)踐中占如此重要的地位?

    確定每個(gè)軟件版本的穩(wěn)定性。這是一個(gè)反復(fù)的過程,一直持續(xù)到項(xiàng)目達(dá)到開發(fā)結(jié)束或維護(hù)結(jié)束為止。在其他工作流程,回歸測(cè)試是開發(fā)人員日常工作。實(shí)際上,可以說在迭代和敏捷過程,大多數(shù)測(cè)試是回歸測(cè)試。在繼續(xù)進(jìn)行之前,讓我們看一下什么是回歸
    發(fā)表于 12-21 07:52

    python編寫條件分支的最佳實(shí)踐

    這段代碼最大的問題,就是過于直接翻譯了原始的條件分支要求,導(dǎo)致短短十幾行代碼包含了有層嵌套分支。這樣的
    發(fā)表于 04-21 15:20

    ADμC812 芯片實(shí)踐中幾點(diǎn)注意

    ADμC812 芯片實(shí)踐中幾點(diǎn)注意
    發(fā)表于 05-16 14:16 ?10次下載

    EDA 技術(shù)在教學(xué)實(shí)踐中的應(yīng)用2

    EDA 技術(shù)在教學(xué)實(shí)踐中的應(yīng)用2 摘 要: EDA 在電子技術(shù)教學(xué)實(shí)踐中的應(yīng)用是現(xiàn)代教育發(fā)展的一趨勢(shì), 本文通過數(shù)字式測(cè)溫儀這一綜合性設(shè)計(jì)實(shí)例,比較全面地說明
    發(fā)表于 12-07 13:50 ?0次下載

    極管三種工作狀態(tài)特點(diǎn)分析及判斷

    極管有放大、飽和、截止三種工作狀態(tài),放大電路極管是否處于放大狀態(tài)或處于何種工作狀態(tài),對(duì)于學(xué)生是一個(gè)難點(diǎn)。筆者在長(zhǎng)期的教學(xué)實(shí)踐中發(fā)現(xiàn),
    的頭像 發(fā)表于 09-28 09:11 ?19w次閱讀
    <b class='flag-5'>三</b>極管<b class='flag-5'>三種</b>工作狀態(tài)特點(diǎn)分析及判斷

    剖析智能制造關(guān)于“輕與重”的實(shí)踐中的誤區(qū)

    智能制造無疑是建設(shè)制造強(qiáng)國重中之重的核心策略。但還有很多制造企業(yè)存在不少關(guān)于“輕與重”的認(rèn)識(shí)與實(shí)踐中的誤區(qū)!
    的頭像 發(fā)表于 02-20 10:33 ?3621次閱讀

    測(cè)試工程師的三種分支

    測(cè)試技術(shù)在新環(huán)境下產(chǎn)生一奇妙的變革:出現(xiàn)了三種分支,可能有些人清楚,有些人糊涂,而另有些人投入,那就是根據(jù)業(yè)務(wù)驅(qū)動(dòng)的測(cè)試執(zhí)行,根據(jù)行業(yè)的通性的測(cè)試服務(wù)及他山之石可以攻玉的產(chǎn)品評(píng)測(cè)。
    的頭像 發(fā)表于 09-12 10:29 ?3738次閱讀

    設(shè)計(jì)模式最佳實(shí)踐探索—策略模式

    根據(jù)不同的應(yīng)用場(chǎng)景與意圖,設(shè)計(jì)模式主要分為創(chuàng)建型模式、結(jié)構(gòu)型模式和行為型模式類。本文主要探索行為型模式策略模式如何更好地應(yīng)用于實(shí)踐中。
    的頭像 發(fā)表于 10-31 14:24 ?1162次閱讀

    軟件代碼結(jié)構(gòu)化覆蓋測(cè)試-分支覆蓋

    本篇我們介紹分支覆蓋,從測(cè)試技術(shù)對(duì)代碼的測(cè)試程度上來說,在復(fù)雜代碼,分支覆蓋比語句覆蓋效果要好
    的頭像 發(fā)表于 09-01 11:34 ?923次閱讀
    軟件<b class='flag-5'>代碼</b>結(jié)構(gòu)化覆蓋測(cè)試-<b class='flag-5'>分支</b>覆蓋

    三種LED接線:串聯(lián)、并聯(lián)和串并聯(lián),我們該如何選?

    三種LED接線:串聯(lián)、并聯(lián)和串并聯(lián),我們該如何選?
    的頭像 發(fā)表于 12-08 17:21 ?3985次閱讀
    <b class='flag-5'>三種</b>LED接線:串聯(lián)、并聯(lián)和串并聯(lián),<b class='flag-5'>我們</b>該如何選?

    介紹三種常見的MySQL高可用方案

    方案——MHA(MySQL High Availability Manager)、PXC(Percona XtraDB Cluster) 和 Galera Cluster。我們將從原理、架構(gòu)、優(yōu)勢(shì)和局限性等角度對(duì)比這三種方案,并探討它們?cè)趯?shí)際應(yīng)用
    的頭像 發(fā)表于 05-28 17:16 ?211次閱讀
    主站蜘蛛池模板: 日本一视频一区视频二区 | toyota东热综合网 | 久久波多野结衣 | 手机在线一区二区三区 | 性欧洲女人18 | 就去色播| 午夜色在线 | 欧美一区二区三区免费看 | 女人的逼毛片 | 播放欧亚一级特黄录像 | 国产色婷婷精品综合在线 | 欧美人另类zooz | 操碰视频在线 | 康熙古代高h细节肉爽文全文 | www.天天操.com| 如果我们是季节韩剧在线观看 | 国产精品色片 | 亚洲经典乱码在线播 | 性色xxx | 亚洲午夜在线视频 | 男女www视频在线看网站 | 8050午夜网| 日本免费色网站 | 性性性性bbbbxxxx | 午夜精品网站 | 精品久草| 四虎精品免费国产成人 | 国产精品自线在线播放 | 97午夜精品| 男人j进入女人j在线视频 | 日本bbxx| 狠狠久| 色婷婷5月精品久久久久 | 性色视频在线观看 | 国产三级a三级三级天天 | 女a男0攻巨肉高h | 狠狠色噜噜狠狠狠狠狠色综合久久 | 亚洲成人高清在线 | 高清视频一区 | 在线免费观看h | 亚洲qingse|