Cloud Manager CI/CD 管道 intro-cicd

了解 Cloud Manager 的 CI/CD 管道以及如何使用它們來有效地部署您的程式碼。

簡介 introduction

Cloud Manager 中的 CI/CD 管道是一種從源存放庫構建程式碼並將其部署到環境的機制。管道可以由事件觸發,例如來自源程式碼存放庫的拉取請求 (即程式碼更改),也可以定期觸發以匹配發布節奏。

若要配置管道,您必須:

  • 定義將啟動管道的觸發器。
  • 定義控制生產部署的參數。
  • 設定效能測試參數。

Cloud Manager 提供兩種類型的管道:

管道類型

生產管道 prod-pipeline

生產管道是專門構建的管道,其中包括一系列精心安排的步驟,用於部署來源程式碼以供生產使用。這些步驟包括首先建置、封裝、測試、驗證和部署到所有中繼環境中。因此,只有在建立了一組生產和中繼環境後,才能新增生產管道。

TIP
如需更多詳細資訊,請參閱設定非生產管道

非生產管道 non-prod-pipeline

非生產管道主要用於執行程式碼品質掃描或將原始程式碼部署到開發環境中。

TIP
如需更多詳細資訊,請參閱設定非生產管道

程式碼來源 code-sources

除了生產和非生產之外,管道還可以透過它們部署的程式碼類型來區分。

  • 完整堆疊程式碼管道 - 同時部署包含一個或多個 AEM 伺服器應用程序以及 HTTPD/Dispatcher 配置的後端和前端程式碼構建
  • 設定管道 — 快速部署功能設定,例如記錄轉送、清除相關的維護工作,以及各種CDN設定,例如流量篩選器規則(包括WAF規則)、請求和回應轉換、來源選擇器、使用者端重新導向、錯誤頁面、客戶管理的CDN金鑰、清除API金鑰以及基本驗證。
  • 前端程式碼管道 - 部署包含一個或多個用戶端 UI 應用程式的前端程式碼建置。
  • Web 層設定管道 - 部署 HTTPD/ Dispatcher 設定。

這些將在本文件後面詳細描述。

了解 Cloud Manager 中的 CI-CD 管道 understand-pipelines

下表總結了Cloud Manager中可用的管道及其用途。

管道類型
部署或程式碼品質
原始碼
用途
附註
生產或非生產
部署
完整堆疊
同時部署後端和前端程式碼構建以及 HTTPD/Dispatcher 配置
當前端程式碼必須與 AEM 伺服器程式碼同時部署時。
當尚未採用前端管道或 Web 層配置管道時。
生產或非生產
部署
前端
部署包含一個或多個客戶端 UI 應用程序的前端程式碼建構。
支援多個並發的前端管道
比完整堆疊部署快得多
生產或非生產
部署
Web 層設定
部署 HTTPD/Dispatcher 配置
幾分鐘內部署
生產或非生產
部署
設定
為與CDN、記錄檔轉送和清除維護工作相關的許多功能🔗部署設定
幾分鐘內部署
非生產
程式碼品質
完整堆疊
無需部署即可對完整堆疊程式碼執行程式碼品質掃描
支援多管道
非生產
程式碼品質
前端
無需部署即可對前端程式碼執行程式碼品質掃描
支援多管道
非生產
程式碼品質
Web 層設定
在沒有部署的情況下對 Dispatcher 配置執行程式碼品質掃描
支援多管道

下圖說明了 Cloud Manager 的管道配置以及傳統的單一前端存放庫或獨立的前端存放庫設定。

Cloud Manager 管道配置

完整堆疊管道 full-stack-pipeline

完整堆疊管道同時將後端程式碼、前端程式碼和 Web 層配置部署到 AEM 執行時。

  • 後端程式碼 - 不可變內容,例如 Java 程式碼、OSGi 配置、repoinit 和可變內容
  • 前端程式碼 - 應用程序 UI 資源,例如 JavaScript、CSS、字體
  • Web 層設定 - HTTPD/Dispatcher 設定。

完整堆疊管道代表“超級”管道,一次完成所有工作,同時為使用者提供分別透過前端管道和 Web 層配置管道專門部署其前端程式碼或 Dispatcher 配置的選項。

完整堆疊管道將前端程式碼 (JavaScript/CSS) 封裝為 AEM 用戶端程式庫

完整堆疊管道可以部署 Web 層配置,如果 Web 層配置管道未配置。

以下限制適用。

  • 使用者必須使用​ 部署管理員 ​角色以配置或執行管道。
  • 在任何時候,每個環境只能有一個完整堆疊管道。

此外,如果您選擇引入一個 Web 層設定管道,請注意完整堆疊管道的運作方式。

  • 如果存在相應的 Web 層配置管道,則環境的完整堆疊管道將忽略 Dispatcher 配置。
  • 如果環境對應的 Web 層配置管道不存在,使用者可以配置完整堆疊管道包括或忽略 Dispatcher 配置。

完整堆疊管道可以是程式碼品質管道或部署。

正在設定完整堆疊管道 configure-full-stack

若要了解如何配置完整堆疊管道,請參閱以下文件:

設定管道 config-deployment-pipeline

透過設定管道,您可以快速部署記錄轉送、清除相關的維護工作的設定,以及各種CDN設定,例如流量篩選規則(包括WAF規則)、請求和回應轉換、來源選擇器、使用者端重新導向、錯誤頁面、客戶管理的CDN金鑰、清除API金鑰以及基本驗證。

請參閱檔案使用設定管道,以取得支援功能的完整清單,並瞭解如何管理存放庫中的設定,以便正確部署設定。

設定管道設定 configure-config-deployment

要瞭解如何配置管道,請參閱以下檔案:

前端管道 front-end

前端程式碼是用作靜態文件的任何程式碼。它獨立於 AEM 提供的 UI 程式碼,可能包括網站主題、客戶定義的 SPA、SPA 和其他解決方案。

前端管道透過啟用與後端開發異步的前端程式碼的加速部署,幫助您的團隊簡化您的設計和開發流程。此專用管道將 JavaScript 和 CSS 作為主題部署到 AEM 分發層,從而產生一個新的主題版本,可以從 AEM 提供的頁面中引用。

NOTE
一個使用者​ 部署管理員 ​角色可以同時建立和執行多個前端管道。
但是,每個計畫 (所有類型) 最多有 300 個管道。

前端管道可以是程式碼品質管道或部署管道。

配置前端管道之前 before-start

在設定前端管道之前,請參閱 AEM Quick Site 建立歷程,以透過易於使用的 AEM Quick Site 建立工具取得端到端指南。此歷程可幫助您簡化 AEM 網站的前端開發,讓您無需 AEM 後端知識即可快速自訂網站。

配置前端管道 configure-front-end

若要了解如何配置前端管道,請參閱以下項目:

使用前端管道開發網站 developing-with-front-end-pipeline

有了前端流水線,給前端開發者更多的獨立性,可以加快開發進程。

請參閱使用前端管道開發網站,了解此程序的工作原理以及需要注意的一些注意事項,以充分發揮此程序的潛力。

Web 層設定管道 web-tier-config-pipelines

Web 層配置管道透過將 HTTPD/Dispatcher 配置與其他程式碼更改分離,從而能夠將 HTTPD/Dispatcher 配置以獨占方式部署到 AEM 執行時。它是一個簡化的管道,為只想部署Dispatcher配置更改的使用者提供了一種在幾分鐘內完成的加速方法。

TIP
使用 Web 層配置管道,您可以選擇將 Web 配置存儲在與完整堆棧管道相同的源位置或不同位置,具體取決於哪種結構更適合您的項目。

以下限制適用。

  • 您必須使用 AEM 版本2021.12.6151.20211217T120950Z或更新以使用 Web 層配置管道。
  • 你必須選擇使用 Dispatcher 的靈活模式使用 Web 層配置管道。
  • 使用者必須使用​ 部署管理員 ​角色以配置或執行管道。
  • 在任何時候,每個環境只能有一個 Web 層配置管道。
  • 當相應的完整棧疊管道正在執行時,使用者無法配置Web層配置管道。
  • Web 層結構必須遵循靈活模式結構,如雲端中的 Dispatcher 文件所定義。

此外,如果您選擇引入一個 Web 層設定管道,請注意完整堆疊管道的運作方式。

  • 如果尚未為環境配置 Web 層配置管道,則使用者可以在配置其對應的完整堆疊管道時進行選擇,以在執行和部署期間包括或忽略 Dispatcher 配置。
  • 為環境配置了 Web 層設定管道後,對應的全堆疊管道 (如果存在) 將在執行和部署期間忽略 Dispatcher 設定。
  • Web 層配置管道被刪除後,它對應的完整堆疊管道會重設以在其執行期間部署 Dispatcher 設定。

Web 層配置管道可以是程式碼品質或部署類型。

設定Web層管道 configure-web-tier

要瞭解如何配置Web層管道,請參閱以下檔案:

管道型別的影片概述 video

如需快速了解管道類型,請觀看此短影片。

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab