部署到Adobe I/O Runtime

asset compute项目及其包含的工作程序必须通过Adobe I/OCLI部署到Adobe I/O Runtime,以供AEM用作Cloud Service。

部署到Adobe I/O Runtime以供AEM作为Cloud Service创作服务使用时,只需要两个环境变量:

  • AIO_runtime_namespace 指向Adobe项目Firefly工作区以部署
  • AIO_runtime_auth 是Adobe项目Firefly工作区的身份验证凭据

.env文件中定义的其他标准变量在调用Asset compute工作程序时由AEM隐式作为Cloud Service提供。

开发工作区

由于此项目是使用Development工作区aio app init生成的,因此在本地.env文件中,会自动将AIO_runtime_namespace设置为与AIO_runtime_auth匹配的81368-wkndaemassetcompute-development。 如果.env文件位于用于发出deploy命令的目录中,则会使用其值,除非它们通过操作系统级别变量导出(即stage和production工作区的目标方式)取代。

使用env变量部署aio应用程序

要部署到项目.env文件中定义的工作区,请执行以下操作:

  1. 在Asset compute项目的根中打开命令行
  2. 执行命令aio app deploy
  3. 执行命令aio app get-url以获取工作程序URL,以在AEM中用作Cloud Service处理配置文件以引用此自定义Asset compute工作程序。 如果项目包含多个工作程序,则会列出每个工作程序的离散URL。

如果本地开发和AEM as a Cloud Service开发环境使用单独的Asset compute部署,则可以采用与暂存和生产部署相同的方式管理AEM as a Cloud Service开发的部署。

暂存和生产工作区

部署到舞台和生产工作区通常由您选择的CI/CD系统来完成。 必须将Asset compute项目离散地部署到每个工作区(暂存,然后是生产)。

设置true环境变量将覆盖.env中同名变量的值。

使用导出变量部署aio应用程序

通常由CI/CD系统自动化的一般方法是:

  1. 确保安装了Adobe I/OCLI npm模块和Asset compute插件
  2. 查看要从Git部署的Asset compute项目
  3. 使用与目标工作区(暂存或生产)对应的值设置环境变量
    • 这两个必需变量是AIO_runtime_namespaceAIO_runtime_auth,它们是在Adobe I/O开发人员控制台中按工作区通过工作区的​下载全部​功能获取的。

Adobe开发人员控制台 — AIO运行时命名空间和身份验证

可以通过从命令行发出导出命令来设置这些键的值:

$ export AIO_runtime_namespace=81368-wkndaemassetcompute-stage
$ export AIO_runtime_auth=27100f9f-2676-4cce-b73d-b3fb6bac47d1:0tDu307W6MboQf5VWB1BAK0RHp8xWqSy1CQc3lKe7f63o3aNtAu0Y3nAmN56502W

如果您的Asset compute工作程序需要任何其他变量(例如云存储),则这些变量也应导出为环境变量。

  1. 在将目标工作区设置为要部署到的所有环境变量后,执行deploy命令:
    • aio app deploy
  2. AEM作为Cloud Service处理配置文件引用的工作程序URL也可通过以下方式获得:
    • aio app get-url

如果Asset compute项目版本更改了工作程序URL,则工作程序URL也会更改以反映新版本,并且该URL需要在处理配置文件中进行更新。

工作区API配置

在Adobe I/O中设置Adobe项目Firefly项目以支持本地开发时,将创建一个新的开发工作区,并在其中添加​Asset compute、I/O事件​和​I/O事件管理API

Asset compute、I/O事件​和​I/O事件管理API API只显式添加到用于本地开发的工作区中。 与AEM as a Cloud Service环境集成(仅限)的工作区​not​需要显式添加这些API,因为API可自然地作为Cloud Service提供给AEM。

在此页面上