摘要:參考文章持續集成持續集成指的是,頻繁地一天多次將代碼集成到主干。說過,持續集成并不能消除,而是讓它們非常容易發現和改正。持續交付可以看作持續集成的下一步。持續部署的前提是能自動化完成測試構建部署等步驟。
基本概念
什么是敏捷開發?
敏捷開發(Agile)是一種以人為核心、迭代、循序漸進的開發方法。
在敏捷開發中,軟件項目的構建被切分成多個子項目,各個子項目的成果都經過測試,具備集成和可運行的特征。
簡單地來說,敏捷開發并不追求前期完美的設計、完美編碼,而是力求在很短的周期內開發出產品的核心功能,盡早發布出可用的版本。然后在后續的生產周期內,按照新需求不斷迭代升級,完善產品。
參考文章:http://blog.jobbole.com/110231/
持續集成指的是,頻繁地(一天多次)將代碼集成到主干。
它的好處主要有兩個:
快速發現錯誤。每完成一點更新,就集成到主干,可以快速發現錯誤,定位錯誤也比較容易。
防止分支大幅偏離主干。如果不是經常集成,主干又在不斷更新,會導致以后集成的難度變大,甚至難以集成。
Martin Fowler 說過,"持續集成并不能消除 Bug,而是讓它們非常容易發現和改正。"
持續交付(Continuous delivery)指的是,頻繁地將軟件的新版本,交付給質量團隊或者用戶,以供評審。如果評審通過,代碼就進入生產階段。
持續交付可以看作持續集成的下一步。它強調的是,不管怎么更新,軟件是隨時隨地可以交付的。
持續部署(continuous deployment)是持續交付的下一步,指的是代碼通過評審以后,自動部署到生產環境。
持續部署的目標是,代碼在任何時刻都是可部署的,可以進入生產階段。
持續部署的前提是能自動化完成測試、構建、部署等步驟。
基本操作流程總體流程:
1.配置好GitRunner腳本和docker相關文件提交到 GitLab
2.提交就會觸發GitRunner程序,自動下載代碼,然后根據腳本進行編譯構建,運行。
總的目標:
實現提交代碼就可以集成到測試環境中,無需我們再像以前那樣,需要自己安裝什么環境,下載代碼,編譯構建等操作,完全自動處理。
大概就是流程如下圖:
此類實戰文字無法描述,推薦以下教程視頻或者你可以找一下相關資源:
https://www.bilibili.com/vide...
或者文末公眾號有相關docker視頻教程。
總結docker 一次構建,到處運行。隔離機制,與運行環境無關。
因為這些特點,就不會出現我們平時說的:“在我的電腦上運行沒問題的呀”
由于隔離機制,所以不用擔心CPU多少核,系統是Linux或者windows,你只要有docker其他的都沒有影響。
如果對 Java、大數據感興趣請長按二維碼關注一波,我會努力帶給你們價值。覺得對你哪怕有一丁點幫助的請幫忙點個贊或者轉發哦。
關注公眾號【n平方】,回復2019有相關視頻教程哦。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27799.html
摘要:基于的特性,以及持續集成的需求,個推采用為持續集成搭建了一整套測試系統。個推持續集成流程以一個假設名為模塊為例,以開發人員的視角闡述了持續集成的邏輯。 軟件開發過程中,開發成員經常需要把自己工作集成到項目中,通常每個成員每天至少集成一次。如果項目較小,對外部的依賴較小,那么軟件集成可能不會是什么問題。但是目前很多軟件項目特別是互聯網項目面臨著需求不明確,系統架構復雜,任務分配混亂等一系...
摘要:對測試的影響讓單元測試運行的更順暢單元測試驅動開發是一個很好的應用程序開發方式,單元測試往往也是和代碼一起被提交到代碼倉庫中。但是很多單元測試通常依賴于很多其他服務,而這些服務的標準化配置往往是一個難點,如數據庫的搭建防火墻的配置等。 傳統的軟件開發、測試、運維需要三個團隊在三個不同的環境中進行,而三個環境的不同引發了很多的問題。如:工作內容的重復;開發環境中可運行的程序在測試和運維環...
摘要:而所謂的持續,就是說每完成一個完整的部分,就向下個環節交付,發現問題可以馬上調整。那么每完成一部分就測試,這是持續部署。這是一個免費的源代碼,可以處理任何類型的構建或持續集成。容器是完全使用沙箱機制,相互之間不會有任何接口。 導讀: 很久沒有更新文章了 最近公司在使用Spring Cloud構建的項目中經常會持續發布變更頻繁,一天中會出現發布多次的情況 在這種情況下對測試環境做了改造 ...
摘要:而持續集成的意義就在于減少風險,和重復的過程,最終提高工作效率。第二級調度由被稱作的組件組成。能和不同類型的通信,每種由相應的應用集群管理。這是的任務啟動過程。數人云運維平臺持續集成實踐這是數人云運維平臺的持續集成實踐。 今天小數給大家帶來的又是十足的干貨:當運維遇到云計算,當Docker遇到Mesos和Jenkins,會擦出怎樣的火花呢?且看來自數人云運維工程師金燁的演講實錄分享——...
摘要:為了看起來清晰,我寫了一個文件,將這個文件和之前的放在同一個目錄中,可以用以下命令快速啟動,啟動之后新構建的鏡像和容器都名為。 showImg(https://segmentfault.com/img/remote/1460000014924499?w=883&h=515); 在軟件開發過程中,如果我們每一次提交的代碼都能夠進行一次完整的編譯、測試、打包、發布,就能及早發現問題、及早修...
閱讀 1537·2023-04-25 18:56
閱讀 1484·2021-09-29 09:34
閱讀 1710·2021-09-22 15:51
閱讀 3483·2021-09-14 18:03
閱讀 1160·2021-07-23 17:54
閱讀 2018·2019-08-29 18:38
閱讀 2900·2019-08-29 12:38
閱讀 610·2019-08-26 13:41