什麼是cicd

轉自:https://ecloud.10086.cn/api/query/developer/user/home.html?ticket=ST-118209-JyOs6xynJVxEZhRnOV3w#L2FwaS9xdWVyeS9kZXZlbG9wZXIvZm9ydW0vZmxvb3JsaXN0Lmh0bWw/aWQ9MDNmMDQ1YzBjZWM4NDQzZGFiNTYyY2U5YTdiMmE4ZTEmc291cmNlPXVzZXI=

CI(continuous integration 持續集成),CD(continuous delivery 持續交付),CI/CD改變了開發和測試人員發佈新版本的方式。
版本迭代經歷了:瀑布模型,敏捷開發,到現在的Devops,敏捷開發的時候,每月每季度甚至每年發佈一個新版本,而現在,每週每天都可能發佈。產品上雲後,可動態的更新應用程序,大部分時候客戶感受不到正在發生變化,開發團隊通過交付流水線實現自動化部署。
那麼什麼是持續集成呢,持續集成希望團隊中的成員能頻繁的提交代碼到倉庫裏,每次的提交都能通過自動化測試進行校驗,從而儘早的暴露問題並解決問題,這會降低解決問題的週期和難度。
持續交付是持續集成的擴展,目的是最小化部署或釋放過程中固有的摩擦,它的實現通常能將構建部署的每個步驟自動化,從而更安全的完成代碼部署。本質是把構建成功的應用迭代更新交付給用戶使用。好處是快速獲取用戶反饋,適應市場變化。CD 依賴於部署流水線,團隊通過流水線實現自動化測試和部署過程,流水線是一個自動化系統,可以針對構建執行一組漸進的測試套件,在流水線的每個階段,如果構建無法通過關鍵測試會向團隊發出警報。否則,將繼續進入下一個測試,並在連續通過測試後自動進入下一個階段。流水線的最後一個部分會將構建部署到和生產環境等效的環境中。這是一個整體的過程,因爲構建、部署和環境都是一起執行和測試的,它能讓構建在實際的生產環境可部署和可驗證。
如何實現持續交付:
1.保證每次提交的修改都是可上線的修改。
2.完善的測試以測試新功能和進行迴歸測試。
3.持續交付的前提條件是自動化的集成和部署。
持續部署:是一種更高程度的自動化,無論何時對代碼進行重大更改,都會自動進行構建/部署。持續部署擴展了持續交付,以便軟件構建,在通過所有測試時自動部署。在這樣的流程中,不需要人爲決定何時及如何投入生產環境。CI/CD 系統的最後一步將在構建後的組件/包退出流水線時自動部署。此類自動部署可以配置爲快速向客戶分發組件、功能模塊或修復補丁,並準確說明當前提供的內容。採用持續部署可以快速的將新功能傳遞給客戶,可迅速處理明顯的缺陷,並獲得用戶對新版本的反饋,次反饋有助於團隊規劃投入避免無效消耗,隨着devops的發展,各種實現cicd流水線的工具應運而生,例如bug跟蹤工具jira,自動化工具jenkins,除了這些開源的還有付費的比如codeship等。使用的過程,可以讓我們更好的瞭解這些工具是如何與雲平臺,容器系統協同運作的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章