Continuous Integration (CI) and Continuous Delivery (CD): A Practical Guide to Designing and Developing Pipelines
Van Merode, Henry
相關主題
商品描述
Most teams just plunge into coding, without thinking about the CI/CD process itself. Why don't we use the same development method for pipelines that we use for apps?
Pipelines code development undergoes similar stages as application code development, such as requirements analysis, development, testing, implementation, operations, and monitoring. This is the starting point of the book. It describes the current challenges with pipeline development and how this process can be improved and structured. It describes in detail how to design pipelines and shows examples in BPMN 2.0 notation.What You'll Learn
- Know the shortcomings and challenges of current pipeline development such as misalignment between the pipeline engineer and the team's workflow, the use of infrastructure as code (IaC), and pipeline security
- Understand the need for CI/CD requirements through the book's non-exhaustive list of more than 60 CI/CD requirements provided to inspire and increase awareness
- See how certain choices affect the way a pipeline is designed (and realized)
- Become familiar with branching strategy, build strategy, test strategy, release strategy, and deployment strategy that are explained in detail in the book, including their effect on pipeline design
- Know how pipelines can be unit tested, using a real-world example
- Know how performance bottlenecks in a pipeline occur, how they can be detected, and how they can be solved
- View a complete implementation, including code, showing how the guidelines in this book are applied to a real use case
Who This Book Is For
DevOps engineers and solution architects involved with automating the software supply chain and using application lifecycle management (ALM)/integration platforms such as Jenkins, CircleCI, Bamboo, and Azure DevOps; intermediate and experienced DevOps engineers (developers, ops engineers, test engineers); and ICT managers interested in the CI/CD pipeline development domain
商品描述(中文翻譯)
使用持續整合(CI)和持續交付(CD)來提高軟體交付的速度。本書介紹了一個改變遊戲規則的方法,即如何使用流程管道來自動化軟體交付過程。關於CI/CD的理論大致相同,但本書涵蓋了流程管道的開發過程以及如何執行流程管道的測試。
大多數團隊只是直接開始編碼,而不考慮CI/CD流程本身。為什麼我們不使用與應用程式相同的開發方法來開發流程管道呢?
流程管道的程式碼開發經歷與應用程式程式碼開發類似的階段,例如需求分析、開發、測試、實施、運營和監控。這是本書的起點。它詳細描述了流程管道開發的當前挑戰以及如何改進和結構化這個過程。它詳細介紹了如何設計流程管道,並以BPMN 2.0符號示例進行演示。
你將學到什麼:
- 了解當前流程管道開發的缺點和挑戰,例如流程管道工程師與團隊工作流程不匹配、基礎架構即代碼(IaC)的使用以及流程管道安全性。
- 通過本書提供的超過60個非詳盡的CI/CD需求列表,了解對CI/CD需求的需求。
- 看到某些選擇如何影響流程管道的設計(和實現)。
- 熟悉分支策略、構建策略、測試策略、發布策略和部署策略,本書詳細解釋了它們對流程管道設計的影響。
- 了解如何對流程管道進行單元測試,並以一個實際案例進行演示。
- 了解流程管道中的性能瓶頸是如何發生的,如何檢測它們以及如何解決它們。
- 查看一個完整的實現,包括代碼,展示了本書中的指南如何應用於實際案例。
本書適合對自動化軟體供應鏈和使用應用程式生命週期管理(ALM)/集成平台(如Jenkins、CircleCI、Bamboo和Azure DevOps)感興趣的DevOps工程師和解決方案架構師;中級和有經驗的DevOps工程師(開發人員、運維工程師、測試工程師);以及對CI/CD流程管道開發領域感興趣的ICT經理。
作者簡介
Henry van Merode is a Solution Architect with over 30 years of experience in ICT within several financial organizations. His experience spans a wide range of technologies and platforms, from IBM Mainframe to Cloud systems on AWS and Azure. He developed, designed, and architected major financial systems such as Internet Banking and Order Management systems, with a focus on performance, high availability, reliability, maintainability, and security. Last 8 years, Henry's expertise has been extended with Continuous Integration, Continuous Delivery, and automated pipelines. As an Azure DevOps community lead, Henry likes to talk about this subject and promotes automating the software supply chain to the teams at his work.
作者簡介(中文翻譯)
Henry van Merode 是一位解決方案架構師,擁有超過30年的資訊通訊科技(ICT)經驗,曾在多家金融機構工作。他的經驗涵蓋了從IBM主機到AWS和Azure雲端系統的各種技術和平台。他曾開發、設計和架構了重要的金融系統,如網上銀行和訂單管理系統,並注重性能、高可用性、可靠性、可維護性和安全性。在過去的8年中,Henry的專業知識還擴展到了持續整合、持續交付和自動化流程。作為Azure DevOps社群的領導者,Henry喜歡談論這個主題,並在他的工作中推廣軟體供應鏈的自動化。