SAP Commerce Cloud 的 build 过程
build process
SAP Commerce Cloud 中的構建過程會根據(jù)您的代碼存儲庫中的信息構建您的最終軟件。
Commerce Cloud 中的構建過程負責多項操作。
這些操作包括:
- 使用項目自定義克隆 Git 存儲庫。
- 下載所需的工件。
- 應用自定義。
- 構建最終的軟件。
- 將軟件打包到 Docker 鏡像中。
- 將圖像上傳到 Docker 注冊表。
- 返回有關要在目標 Commerce Cloud 環(huán)境中啟用的服務的信息。
Build Process Customization
構建過程需要考慮幾個自定義設置。
這些自定義設置包括:
- core commerce
- Data Hub
- Javascript storefront
每個自定義設置都使用項目代碼存儲庫中的單獨目錄,從 repository-root 出發(fā)。
- core-customize
- datahub
- js-storefront
構建過程在開始時確定每個鏡像的預期內容的哈希碼。
它需要考慮多方面的因素,例如:
- artifacts 版本。
- 基本鏡像版本。
- 項目代碼存儲庫的內容。
然后它檢查在 Docker 注冊表中是否可以使用帶有此類哈希標記的鏡像:
- 如果可用 - 將跳過鏡像構建并在部署中使用現(xiàn)有鏡像。
- 如果它不可用 - 執(zhí)行完整鏡像構建并在部署中使用新鏡像。
Docker Images
構建過程中,會生成下列鏡像。
For core commerce customization:
- Platform
- Solr
For Data Hub customization (optional):
- Data Hub
For Javascript storefront (optional):
- Javascript storefront with static content.
- Javascript storefront with server-side rendering.
Services 和 鏡像
構建過程組成了部署期間使用的服務和 Docker 鏡像的列表。 有些服務是可選的,無法自定義的鏡像版本是確定的。
服務及其鏡像的最終列表如下所示:
- Accelerator storefront service → customized Platform image
- Backoffice service → customized Platform image
- Admin service → customized Platform image
- API service → customized Platform image
- Solr service → customized Solr image
- Zookeeper service → customized Zookeeper image
- Image-processing service → image-processing image
- Data Hub service → customized Data Hub image
- Javascript storefront service → customized Javascript storefront image
- Javascript storefront SSR service → customized Javascript storefront SSR image
該構建與環(huán)境無關,這意味著同一個構建可以與多個 Commerce Cloud 環(huán)境一起使用。 這種方法的優(yōu)點是在開發(fā)或暫存環(huán)境中測試的相同代碼被部署到生產環(huán)境中。
與環(huán)境緊密相連的設置包括:
- Domain names.
- IP address.
- SSL certificates.
- URLs or credentials to resources (database, media storage).
- URLs or credentials to any external systems.
- Credentials for technical users.
- Machine size or available amount of resources (CPU, memory).
此類設置無法出現(xiàn)在最終構建中,因為它將構建與特定環(huán)境結合在一起。
環(huán)境角色影響環(huán)境性能和環(huán)境的目的。 一般規(guī)則是生產環(huán)境比 staging 環(huán)境快,staging 環(huán)境比開發(fā)快。 環(huán)境可以有不同的配置,例如不同的服務屬性。
在執(zhí)行部署時考慮環(huán)境的目的。建議:
- 執(zhí)行一次構建。構建與環(huán)境無關。
- 將構建部署到所有環(huán)境,從開發(fā)開始,然后登臺,最后到生產。
- 在將構建提升到下一個環(huán)境之前,在每個環(huán)境上測試構建。
構建環(huán)境與最終的 Commerce Cloud 環(huán)境分離。 這意味著特定于構建的資源(例如工件存儲庫)僅可用于構建環(huán)境。
同樣,特定于最終 Commerce Cloud 環(huán)境的資源(例如數(shù)據(jù)庫或媒體存儲)對于構建環(huán)境不可用。 由于構建與環(huán)境無關,因此在構建期間不要存儲或涉及任何特定于環(huán)境的資源,例如外部系統(tǒng)。
更多Jerry的原創(chuàng)文章,盡在:“汪子熙”:
總結
以上是生活随笔為你收集整理的SAP Commerce Cloud 的 build 过程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SAP Commerce Cloud J
- 下一篇: 什么是 Immutable Web Ap