部署至Adobe I/O Runtime
asset compute專案及其所包含的背景工作必須透過Adobe I/O CLI部署至Adobe I/O Runtime,才可供AEM as a Cloud Service使用。
部署到Adobe I/O Runtime以供AEM as a Cloud Service Author服務使用時,只需要兩個環境變數:
AIO_runtime_namespace
指向App Builder Workspace以部署到AIO_runtime_auth
是App Builder工作區的驗證認證
在.env
檔案中定義的其他標準變數,在AEM as a Cloud Service叫用Asset compute背景工作程式時以隱含方式提供。
開發工作區
因為此專案是使用aio app init
使用Development
工作區所產生,AIO_runtime_namespace
會自動設定為81368-wkndaemassetcompute-development
,且在本機.env
檔案中符合AIO_runtime_auth
。 如果用於發出部署命令的目錄中存在.env
檔案,則會使用其值,除非其值透過OS層級變數匯出取代,這就是階段和生產工作區的目標方式。
使用.env變數部署
若要部署至專案.env
檔案中定義的工作區:
- 在Asset compute專案的根目錄中開啟命令列
- 執行命令
aio app deploy
- 執行命令
aio app get-url
以取得背景工作URL,以便用於AEM as a Cloud Service處理設定檔,以參考此自訂Asset compute背景工作。 如果專案包含多個背景工作,則會列出每個背景工作的獨立URL。
如果本機開發和AEM as a Cloud Service開發環境使用單獨的Asset compute部署,則對AEM as a Cloud Service Dev的部署可採用與中繼和生產部署相同的方式進行管理。
中繼和生產工作區 stage-and-production
部署到中繼和生產工作區通常由您選擇的CI/CD系統完成。 asset compute專案必須離散地部署到每個Workspace (暫存然後生產)。
設定True環境變數會覆寫.env
中同名變數的值。
使用匯出變數部署
部署到中繼和生產環境的一般方法通常由CI/CD系統自動化,即:
- 請確定已安裝Adobe I/OCLI npm模組和Asset compute外掛程式
- 檢視要從Git部署的Asset compute專案
- 使用與目標工作區(「預備」或「生產」)相對應的值設定環境變數
- 兩個必要變數為
AIO_runtime_namespace
和AIO_runtime_auth
,是透過Workspace的 全部下載 功能在Adobe I/ODeveloper Console中為每個工作區取得的。
- 兩個必要變數為
從命令列發出匯出指令可以設定這些鍵的值:
$ export AIO_runtime_namespace=81368-wkndaemassetcompute-stage
$ export AIO_runtime_auth=27100f9f-2676-4cce-b73d-b3fb6bac47d1:0tDu307W6MboQf5VWB1BAK0RHp8xWqSy1CQc3lKe7f63o3aNtAu0Y3nAmN56502W
如果您的Asset compute背景工作需要任何其他變數(例如雲端儲存空間),這些變數也應該匯出為環境變數。
- 設定好要部署的目標工作區的所有環境變數後,請執行部署命令:
aio app deploy
- AEM as a Cloud Service處理設定檔參考的工作者URL也可透過以下方式取得:
aio app get-url
。
如果Asset compute專案版本變更,背景工作URL也會變更以反映新版本,且該URL需要在「處理設定檔」中更新。
Workspace API布建 workspace-api-provisioning
當在Adobe I/O中設定App Builder專案以支援本機開發時,已建立新的開發工作區,並新增 Asset compute、I/O事件 和 I/O事件管理API。
Asset compute、I/O事件 和 I/O事件管理API API僅明確新增至本機開發所使用的工作區。 與AEM as a Cloud Service環境整合(獨佔)的工作區 不需要 明確新增這些API,因為API自然可供AEM as a Cloud Service使用。