• 招生咨詢熱線:4008-569-579 
  • 手機(jī)版
    用手機(jī)掃描二維碼直達(dá)商品手機(jī)版
招生咨詢熱線
4008-569-579
機(jī)構(gòu)主頁(yè) > 培訓(xùn)資料 > 嵌入式開發(fā):將 CICD 流程用于嵌入式系統(tǒng)
機(jī)構(gòu)主頁(yè) > 培訓(xùn)資料>嵌入式開發(fā):將 CICD 流程用于嵌入式系統(tǒng)

嵌入式開發(fā):將 CICD 流程用于嵌入式系統(tǒng)

來源:廣州達(dá)內(nèi)教育        時(shí)間:2023-05-30        熱度:41℃        返回列表

  持續(xù)集成/持續(xù)部署(CI/CD) 是一個(gè)為最終用戶自動(dòng)構(gòu)建、測(cè)試、分析和部署軟件的過程。CI/CD

可以為嵌入式開發(fā)團(tuán)隊(duì)提供多種價(jià)值,例如:


  提高軟件質(zhì)量

  減少調(diào)試時(shí)間

  降低項(xiàng)目成本

  提高按時(shí)完成任務(wù)的能力

  簡(jiǎn)化軟件部署過程

  在這篇文章中,我們將探討嵌入式系統(tǒng)的 CI/CD。




  CI/CD 簡(jiǎn)介


  團(tuán)隊(duì)可以使用許多不同的工具和配置來設(shè)置 CI/CD

流程以用于嵌入式軟件開發(fā)。一般的作品雖然保持相對(duì)相似。


  首先,團(tuán)隊(duì)有一個(gè)包含產(chǎn)品源代碼的 git

存儲(chǔ)庫(kù)。開發(fā)人員將存儲(chǔ)庫(kù)源代碼分支以在其開發(fā)機(jī)器上本地開發(fā)功能或修復(fù)錯(cuò)誤。在本地環(huán)境中,開發(fā)人員可以使用像 Docker

這樣的工具來構(gòu)建容器化的構(gòu)建環(huán)境以及測(cè)試和調(diào)試工具。功能準(zhǔn)備就緒后,開發(fā)人員會(huì)將他們的更改提交到存儲(chǔ)庫(kù)中的分支。


  接下來,提交代碼將使用嵌入式開發(fā)團(tuán)隊(duì)選擇的 CI/CD 工具鏈啟動(dòng)一個(gè)預(yù)定義的流程。例如,用于 CI/CD

流程的常用工具包括 Jenkins 和 GitLab。CI/CD

流程將配置為運(yùn)行一系列自動(dòng)化步驟(稱為管道),以確保軟件滿足預(yù)先配置的參數(shù)。


  此時(shí),管道中的第一步通常是構(gòu)建應(yīng)用程序映像。構(gòu)建應(yīng)用程序映像需要擁有成功構(gòu)建所需的所有工具。這就是 Docker

的用武之地! CI/CD 工具可以使用已經(jīng)設(shè)置了構(gòu)建工具鏈的 Docker 鏡像來驗(yàn)證代碼是否可以成功構(gòu)建。為此,CI/CD

工具通常需要設(shè)置一個(gè)運(yùn)行程序,該運(yùn)行程序可以調(diào)度命令來構(gòu)建和運(yùn)行 Docker

映像。對(duì)于小型團(tuán)隊(duì),運(yùn)行器可能存在于單個(gè)開發(fā)人員的筆記本電腦上,但強(qiáng)烈建議將運(yùn)行器安裝在本地或云中的服務(wù)器上。當(dāng)有人需要提交代碼時(shí),這消除了開發(fā)人員筆記本電腦的依賴。




  當(dāng) runner 完成流水線階段時(shí),它會(huì)將結(jié)果報(bào)告給 CI/CD 工具。如果管道中有多個(gè)階段,CI/CD

工具可能會(huì)分派更多命令。完成后,CI/CD

工具將報(bào)告運(yùn)行管道的結(jié)果。如果一切順利,則狀態(tài)將設(shè)置為通過。如果某事沒有成功完成,它將被設(shè)置為失敗。如果管道失敗,開發(fā)人員可以進(jìn)入并查看管道中的哪個(gè)作業(yè)沒有成功完成。然后他們負(fù)責(zé)修復(fù)它。


  CI / CD 管道


  CI/CD

管道只是執(zhí)行的作業(yè)的集合;但是,這些作業(yè)指定了在發(fā)布軟件之前需要驗(yàn)證的軟件應(yīng)用程序構(gòu)建過程的重要方面。例如,開始時(shí),嵌入式開發(fā)團(tuán)隊(duì)可能會(huì)創(chuàng)建一個(gè)簡(jiǎn)單的管道來構(gòu)建映像、lint

的源代碼、執(zhí)行單元測(cè)試,然后部署應(yīng)用程序。管道將類似于圖

2。在第一次部署期間,我甚至建議不要將自己與部署工作相關(guān)聯(lián)。只需進(jìn)行構(gòu)建和測(cè)試設(shè)置就可以為團(tuán)隊(duì)提供很多價(jià)值。(并非所有團(tuán)隊(duì)都需要自動(dòng)部署)。




  一旦基礎(chǔ)工作正常,團(tuán)隊(duì)就可以在他們的管道上構(gòu)建以添加額外的工作來增加新的功能。例如,更高級(jí)的管道可能開始如圖 3

所示。




  CI/CD

為嵌入式軟件團(tuán)隊(duì)提供了很多價(jià)值。起初,這個(gè)過程可能看起來很復(fù)雜,特別是因?yàn)榍度胧较到y(tǒng)通常需要定制硬件。但是,一旦設(shè)置了流程,它可以幫助及早發(fā)現(xiàn)問題,從長(zhǎng)遠(yuǎn)來看可以節(jié)省時(shí)間和金錢。這個(gè)過程可以幫助嵌入式開發(fā)人員對(duì)他們編寫的代碼負(fù)責(zé),尤其是他們編寫的質(zhì)量水平。如果你剛剛進(jìn)入

CI/CD,請(qǐng)從簡(jiǎn)單開始,然后啟動(dòng)并運(yùn)行構(gòu)建階段。之后,逐步增加功能,直到你擁有完整且自動(dòng)化的 CI/CD 流程。

電話咨詢

電話咨詢

咨詢電話:
4008-569-579
回到頂部

回到頂部