SAP Commerce Cloud 的 build 过程

简介: SAP Commerce Cloud 的 build 过程

build process


SAP Commerce Cloud 中的构建过程会根据您的代码存储库中的信息构建您的最终软件。


Commerce Cloud 中的构建过程负责多项操作。


这些操作包括:


使用项目自定义克隆 Git 存储库。

下载所需的工件。

应用自定义。

构建最终的软件。

将软件打包到 Docker 镜像中。

将图像上传到 Docker 注册表。

返回有关要在目标 Commerce Cloud 环境中启用的服务的信息。

image.png

Build Process Customization

构建过程需要考虑几个自定义设置。


这些自定义设置包括:


core commerce

Data Hub

Javascript storefront

每个自定义设置都使用项目代码存储库中的单独目录,从 repository-root 出发。


core-customize

datahub

js-storefront

构建过程在开始时确定每个镜像的预期内容的哈希码。


它需要考虑多方面的因素,例如:


artifacts 版本。

基本镜像版本。

项目代码存储库的内容。

然后它检查在 Docker 注册表中是否可以使用带有此类哈希标记的镜像:


如果可用 - 将跳过镜像构建并在部署中使用现有镜像。

如果它不可用 - 执行完整镜像构建并在部署中使用新镜像。

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

该构建与环境无关,这意味着同一个构建可以与多个 Commerce Cloud 环境一起使用。 这种方法的优点是在开发或暂存环境中测试的相同代码被部署到生产环境中。


与环境紧密相连的设置包括:


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).

此类设置无法出现在最终构建中,因为它将构建与特定环境结合在一起。

image.png

环境角色影响环境性能和环境的目的。 一般规则是生产环境比 staging 环境快,staging 环境比开发快。 环境可以有不同的配置,例如不同的服务属性。


在执行部署时考虑环境的目的。建议:


执行一次构建。构建与环境无关。

将构建部署到所有环境,从开发开始,然后登台,最后到生产。

在将构建提升到下一个环境之前,在每个环境上测试构建。

构建环境与最终的 Commerce Cloud 环境分离。 这意味着特定于构建的资源(例如工件存储库)仅可用于构建环境。


同样,特定于最终 Commerce Cloud 环境的资源(例如数据库或媒体存储)对于构建环境不可用。 由于构建与环境无关,因此在构建期间不要存储或涉及任何特定于环境的资源,例如外部系统。


相关文章
|
存储 缓存 数据库
什么是 SAP Commerce Cloud 的 Flexible Search?
什么是 SAP Commerce Cloud 的 Flexible Search?
168 0
如何用 SAP Commerce Cloud CMS API 批量返回多个 CMS Component 数据
如何用 SAP Commerce Cloud CMS API 批量返回多个 CMS Component 数据
|
安全 网络协议 测试技术
SAP Commerce Cloud 的 Security 策略概述
SAP Commerce Cloud 的 Security 策略概述
|
前端开发 API uml
SAP Commerce Cloud 里的 User 模型和 Restriction 的关系
SAP Commerce Cloud 里的 User 模型和 Restriction 的关系
100 0
|
负载均衡 前端开发 网络协议
使用 Azure SNAT 为 SAP Commerce Cloud 的 outbound connection 进行端口映射
使用 Azure SNAT 为 SAP Commerce Cloud 的 outbound connection 进行端口映射
|
XML JavaScript API
如何打通 SAP Cloud for Customer 系统和微信公众号的双向消息通信功能(3)
如何打通 SAP Cloud for Customer 系统和微信公众号的双向消息通信功能
|
运维 监控 Kubernetes
SAP MTA 里定义 SAP UI5 module 的一个例子
SAP MTA 里定义 SAP UI5 module 的一个例子
|
XML JSON 数据格式
SAP UI5 XML 视图中数据绑定路径语法的难点和易混淆点的专题讲解
SAP UI5 XML 视图中数据绑定路径语法的难点和易混淆点的专题讲解
|
JavaScript 前端开发
SAP UI5 里 FlexBox 控件使用的一个例子
SAP UI5 里 FlexBox 控件使用的一个例子
|
前端开发
关于 SAP UI5 应用 render2 实例异步创建的编码实现(2)
关于 SAP UI5 应用 render2 实例异步创建的编码实现