了解如何配置生产管道以生成代码并将其部署到生产环境。生产管道首先将代码部署到暂存环境,并在获得批准后将相同的代码部署到生产环境。
用户必须具有部署管理员角色才能配置生产管道。
在程序创建完成、Git 存储库至少有一个分支以及创建生产和暂存环境集之前,无法设置生产管道。
在开始部署代码之前,必须从 Cloud Manager 配置管道设置。
在初始设置后,您可以编辑管道设置。
在设置项目并具有至少一个使用 Cloud Manager UI 的环境后,便可以执行以下步骤来添加非生产管道。
在配置前端管道之前,请参阅 AEM 快速网站创建历程,获取易于使用的“AEM 快速站点创建”工具的端到端指南。这段历程将帮助您简化 AEM 站点的前端开发,使您能够在不了解 AEM 后端的情况下快速定制站点。
在 my.cloudmanager.adobe.com 登录 Cloud Manager 并选择适当的组织和程序。
导航到项目概述页面中的管道信息卡,并单击 +添加,然后选择添加生产管道。
此时会显示添加生产管道对话框。提供管道名称,识别您的管道以及以下选项。单击“继续”。
部署触发器 – 在定义启动管道的部署触发器时,您可以使用以下选项。
重要量度失败行为r – 在管道设置或编辑期间,部署管理员可以选择定义在任何质量审核出现重要失败时的管道行为。可用的选项为:
在源代码选项卡上,必须定义管道检索其代码的位置以及代码类型。
根据您选择的源代码选项,完成生产管道创建的步骤有所不同。按照上面的链接跳到本文档的下一节,完成管道的配置。
前端代码管道部署包含一个或多个客户端 UI 应用程序的前端代码版本。有关此类型管道的详细信息,请参阅 CI/CD 管道文档。
要完成前端代码生产管道的配置,请执行以下步骤。
在源代码选项卡上,必须定义以下选项。
请参阅添加和管理存储库文档,了解如何在 Cloud Manager 中添加和管理存储库。
单击保存以保存管道。
管道已保存,您现在可以在程序概述页面的管道信息卡上管理您的管道。
全栈代码管道同时部署后端和前端代码构建,其中包含一个或多个 AEM 服务器应用程序以及 HTTPD/Dispatcher 配置。有关此类型管道的详细信息,请参阅 CI/CD 管道文档。
如果所选环境已存在全栈代码管道,则会禁用此选择。
要完成全栈代码生产管道的配置,请执行以下步骤。
在源代码选项卡上,必须定义以下选项。
请参阅添加和管理存储库文档,了解如何在 Cloud Manager 中添加和管理存储库。
单击继续前进到体验审核选项卡,您可以在其中定义应始终包含在体验审核中的路径。
提供要包含在体验审核中的路径。
/
开头。https://wknd.site/us/en/about-us.html
,请输入路径 /us/en/about-us.html
。单击添加页面,路径会自动填写您的环境地址,并添加到路径表中。
重复前两步,根据需要继续添加路径。
单击保存,保存您管道。
为体验审核配置的路径会提交给服务,并在管道运行时根据性能、可访问性、SEO(搜索引擎优化)、最佳实践和 PWA(Progressive Web 应用程序)测试进行评估。有关更多详细信息,请参阅了解体验审核结果。
管道已保存,您现在可以在程序概述页面的管道信息卡上管理您的管道。
Web 层配置管道部署 HTTPD/Dispatcher 配置。有关此类型管道的详细信息,请参阅 CI/CD 管道文档。
要完成全栈代码生产管道的配置,请执行以下步骤。
在源代码选项卡上,必须定义以下选项。
请参阅添加和管理存储库文档,了解如何在 Cloud Manager 中添加和管理存储库。
conf.d
、conf.dispatcher.d
和 opt-in
目录。/dispatcher/src
。单击保存以保存管道。
如果将现有的全栈管道部署到环境中,则为同一环境创建 Web 层配置管道将忽略全栈管道中的现有 Web 层配置。
管道已保存,您现在可以在程序概述页面的管道信息卡上管理您的管道。
有了前端管道,前端开发人员可以获得更多的独立性,可加快开发过程。
请参阅使用前端管道开发站点,了解此流程的工作方式以及一些需要注意的事项,以便充分发挥此流程的潜力。
如果希望将 Dispatcher 程序包作为管道的一部分构建,但不希望将其发布来构建存储,则可以禁用发布它们,这可能会缩短管道运行持续时间。
必须通过项目 pom.xml
文件,添加以下禁用发布 Dispatcher 程序包的配置。该配置基于一个环境变量,作为一个标志,您可以在 Cloud Manager 构建容器中设置,定义何时应忽略 Dispatcher 程序包。
<profile>
<id>only-include-dispatcher-when-it-isnt-ignored</id>
<activation>
<property>
<name>env.IGNORE_DISPATCHER_PACKAGES</name>
<value>!true</value>
</property>
</activation>
<modules>
<module>dispatcher</module>
</modules>
</profile>