学习目标
完成本单元后,您将能够:
- 描述用于创建,启动和停止按需沙箱的工具。
- 列出开发人员可能在自动化过程中包括的三个步骤。
- 列出三种REST API操作。
- 说明API客户端访问实例所需的业务管理器配置设置。
介绍
Cloud Kicks管理员Linda Rosenberg希望进行所有设置,以便她的开发人员可以正常工作。配置用户和客户端ID后,她想创建一个沙箱。首席开发人员之一Vijay Lahiri渴望创建一个新的过程来加快功能的推出。一旦他和开发团队启动并运行,Linda将监视信贷消耗并在出现问题时介入。
按需沙箱管理员和开发人员(例如Linda和Vijay)使用这些工具在其领域中创建,启动,停止,删除和管理沙箱。
- REST API:在Swagger用户界面(UI)中公开
- 基于社区的命令行界面(CLI):GitHub上的Commerce Cloud社区套件的一部分 。(您必须具有GitHub凭据)。
Linda希望首先探索REST API。然后她将帮助Vijay准备使用CLI。他想使用CLI创建类似于以下内容的自动化开发过程:
- 获取一个沙箱。
- 将代码部署到沙箱。
- 将测试数据部署到沙箱。
- 运行自动化测试。
- 删除沙箱。
REST API
Linda使用REST API创建按需沙箱。首先,她确保自己:
- 可以访问已为按需沙箱启用的领域
- 被分配沙盒API用户和业务经理管理员角色
- 有客户编号
这是她访问REST API所采取的步骤。
- 打开浏览器。
- 输入此URL:https : //admin.us01.dx.commercecloud.salesforce.com/
- 单击授权以使用她使用帐户管理器配置的API客户端ID登录。
- 点击授权。
- 输入客户端ID。
- 再次单击授权。
- 单击关闭。授权锁定图标变为锁定。
动作
REST API控制信用消耗。Linda使用它们来创建,启动,停止和删除沙箱。主页分为两部分,顶部是命令,底部是模型。
她可以执行以下操作:
- 对于通用API端点
- 在领域级别
- 在沙盒级别
她使用领域操作来获取有关其领域的信息或修补领域。
她可以使用多种沙箱操作,例如创建沙箱,运行沙箱操作,删除沙箱或显示沙箱使用情况。
Linda首先列出了沙箱,然后创建了一个新沙箱。拥有沙箱ID后,就可以管理各个沙箱。
楷模
琳达研究模型的详细信息,以便她可以理解其结果并正确指定请求。例如,这是StatusResponse模型。
创建一个按需沙箱
现在Linda熟悉REST API,她创建了一个按需沙箱。这是她采取的步骤。
- 打开浏览器。
- 输入此URL:https : //admin.us01.dx.commercecloud.salesforce.com/
- 通过客户端ID授权。
- 单击/ sandboxes创建沙箱旁边的POST。
- 在<您的领域ID>和<您的客户ID>字段中输入详细信息。
- 点击执行。
- 在“响应”部分中查看结果。
在此示例中,生存时间(TTL)设置为24。此值定义沙箱需要生存多少小时。如果TTL设置为0或更小,沙盒将永远存在。
监控沙箱
为了使事情顺利进行,Linda会查看在专用日志中心收集的按需沙箱日志消息。她单击这样的链接以查看其领域的日志:https://logcenter.us01.dx.commercecloud.salesforce.com/
信贷使用
当Cloud Kicks达到其使用量消耗的85%时,按需沙箱系统会通知其Salesforce客户经理。由客户经理通知她的管理层。如果消费超过其公司购买的金额,则沙箱将继续运行并消费信用额,但会收取超额费用。
Linda可以轻松跟踪信贷使用情况。她将REST API中的GET使用情况请求API 用于领域(1)和沙箱(2)的使用情况数据。
她可以查看模型以了解详细信息。这是领域使用模型。要跟踪的重要信息包括沙箱秒数,minutesUp和minutesDown(与她的管理层购买的商品相对应)。
这是沙盒使用模型。它告诉Linda沙盒已运行了几秒钟,并且该时间已启动(正在运行)多少分钟,已关闭(未运行)了几分钟。请记住,实例运行时的成本要比不运行实例时的成本高。
删除沙箱
按需沙箱将消耗积分,直到将其删除。因此,只要Linda或开发人员不再需要它们,便可以迅速删除它们。
在某些情况下,她或Vijay使用POST /沙盒创建按需沙盒,并为沙盒存在的小时数配置可选的生存时间(TTL)设置。当他们仅需要短时间的沙箱时,他们会指定仅覆盖所需时间的TTL。
当Linda对于不确定最终计划的项目需要沙箱时,她无需配置TTL或指定一个非常大的TTL(例如2100小时),然后在项目完成后立即删除沙箱。TTL的最大值是2,160小时。创建沙箱后,可以使用PATCH / sandboxes命令更改TTL值。
准备好命令行界面(CLI)
Vijay准备使用CLI创建(CI / CD)开发过程。尽管此工具不是Salesforce的正式产品,但它是用于开发自动化流程的流行工具。它可以节省时间并消除通常由容易出错的手动过程引起的问题。通过这种类型的过程,他可以在其按需沙箱上自动执行Salesforce B2C Commerce代码验证和交付。
他可以在本地的任何计算机上,也可以从Jenkins,Travis CI,Bitbucket Pipelines和Heroku CI等构建工具中使用CLI。CLI带有基本的JavaScript API,他可以使用它与Node.js上的更高级别的应用程序集成。
这是他可以执行的一些功能。
- OAuth2交互式无头认证(无需Business Manager用户)
- 创建,启动,停止和删除按需沙箱
- 配置多个实例,包括别名
- 使用代码版本管理部署代码和数据
- 执行和监视系统作业
- 执行和监视自定义作业
- 通过WebDAV连接
Linda已经配置了供Vijay使用的API客户端ID。她还配置了重定向URI,默认范围,并为他提供了管理员级别的CLI访问权限。现在,他需要授予对实例的API客户端ID访问权限。
授予API客户端访问权限
对于某些CLI命令,Vijay需要对其他B2C Commerce实例进行API调用。这意味着Linda必须在Business Manager中授予全局访问权限。这是她的做法。
- 打开业务经理。
- 单击管理>网站开发>打开Commerce API设置。
- 选择数据API和全局。
- 将客户端ID的权限集添加到设置中。
- 您可以复制此代码段并将其粘贴到设置字段中。将my_client_id替换为您的客户端ID。如果您已经具有OCAPI设置(用于其他API客户端ID),则将此权限集合并到现有列表中。
- 单击管理>组织> WebDAV客户端权限。
- 将您的客户端ID的权限集添加到权限设置中。您可以复制此代码段并将其粘贴到设置字段中。将my_client_id替换为您的客户端ID。如果您已经为其他API客户端ID配置了WebDAV客户端权限,请将此权限集合并到现有列表中。
Vijay准备使用按需沙箱创建自动化流程。有关设置和使用SFCC-CLI的说明,请参见B2C Commerce B2C Commerce GitHub存储库。他遵循Salesforce B2C Commerce Developers Trailhead模块的工具和资源中的说明, 以学习如何访问此存储库。