透過預設的 Looker Git 整合,Looker 開發人員可將變更提交至開發分支版本,然後將開發分支版本合併至正式分支版本。接著,當您部署至 Looker 環境時,Looker 會使用正式版分支的最新版本。(如要瞭解預設 Git 工作流程和進階 Git 實作功能的其他選項,請參閱「使用版本管控和部署」說明文件頁面)。
如果您不想在 Looker 環境中使用正式版分支的最新提交內容,Looker 管理員可以啟用進階部署模式。啟用後,開發人員只要具備 deploy
權限,就能指定要部署至 Looker 正式環境的不同提交 SHA 或標記,而非使用正式分支的最新提交版本。如果您想部署來自不同分支的提交,可以使用進階部署模式 webhook 或 API 端點。
進階部署模式可協助您在多環境開發人員工作流程中整合存放區,其中每個環境都會指向不同的程式碼集版本。這項功能還可讓一或多位開發人員或管理員更有效地控管部署至正式環境的變更。
啟用進階部署模式後,Looker 不會提示開發人員將異動內容部署至正式環境。相反地,Looker 會提示開發人員將變更內容合併至正式版分支版本。您只能透過下列方式部署變更:
啟用進階部署模式
如要啟用進階部署模式,請按照下列步驟操作:
- 在 Looker IDE 中,依序選取圖示選單中的「設定」圖示,然後選取「Configuration」分頁,即可前往「Project Configuration」頁面。
- 在「專案設定」頁面中,勾選「部署」部分下方「啟用進階部署模式」旁的核取方塊。
- 選取「儲存專案設定」按鈕,即可儲存變更。
使用進階部署模式進行版本控制
啟用進階部署模式後,開發人員就無法從 Looker 部署至實際工作環境。相反地,當開發人員進行修訂時,Git 按鈕會提示他們將變更合併至主要分支版本,而非提示他們將變更部署至正式環境。
變更會透過 webhook、API 或Deployment Manager 部署至實際環境。
部署管理工具
對於已啟用進階部署模式的專案,擁有 deploy
權限的 Looker 開發人員可以使用部署管理工具,將提交或代碼標記部署至 Looker 實際工作環境。
您可以從圖示選單中選取「Deploy」圖示,存取部署管理工具。
部署管理工具會顯示先前使用進階部署模式部署的所有提交和標記。
如果您尚未使用進階部署模式部署修訂版本,請按一下「選取修訂版本」按鈕,查看 Looker 開發人員已合併至正式版分支的修訂版本修訂版本記錄。
如果專案使用進階部署模式部署提交版本,提交記錄也會顯示提交版本的相關聯標記 (如有),並指出哪個提交版本是目前用於實際環境的版本。
如果正式版分支版本的修訂版本比已部署的修訂版本更新,部署管理員會顯示這項資訊,並顯示 Looker 開發人員已合併至正式版分支版本的最新修訂版本。
透過部署管理工具部署提交版本
您可以透過下列幾種方式,從部署管理工具部署提交內容:
- 如要部署尚未部署的提交,請按一下「選取提交」按鈕,從已合併至遠端正式版分支的所有提交中選取。(如果您想部署來自不同分支的提交,請使用進階部署模式 webhook 或 API 端點)。
- 如要在遠端正式版分支中部署最近合併的提交,請按一下「Deploy Latest」按鈕。
- 如要部署先前已部署的提交或代碼標記,請在部署管理工具中按一下該項目的三點圖示「選項」選單 ,然後點選「部署至生產環境」。
如果您選擇先前未部署的版本,部署管理員會顯示「Deploy Commit」選單。如要透過「Deploy Commit」選單部署提交內容,請按照下列步驟操作:
- 如要部署提交內容,但不指派代碼,請選取「Deploy without tagging」,然後選取「Deploy to Environment」。否則,請保留「標記並部署」選項。
指定修訂版本的標記。Git 標記可標示存放區記錄中提交內容的重要性,例如發布版本號碼或版本名稱。請注意下列 Git 標記:
- Git 標記在 Git 存放區中不得重複。您無法在儲存庫中為兩個不同的提交使用相同的標記。
- Git 標記不得包含空格或特定特殊字元。如要瞭解 Git 中的參照命名規則,請參閱 Git 參考資料說明文件。
您可以視需要為標記新增說明,提供有關提交的詳細資訊。
選取「部署至環境」,將提交內容部署至 Looker 執行個體的正式版。
部署提交內容後,部署管理工具會將提交內容標示為 Looker 實際執行環境中的目前版本。
使用 Webhook 部署
如果專案採用進階部署模式,您可以使用部署 Webhook 將變更部署至正式環境。
如要設定部署 webhook,您必須先在「專案設定」頁面為 Looker 專案新增 webhook 密鑰。新增 Webhook 密鑰可確保只有授權單位能觸發部署 Webhook。
啟用進階部署模式後,您可以使用兩個 webhook 將變更部署至正式環境。一個 webhook 用於部署分支的頭,另一個則用於部署特定的 Git SHA 或標記。
用於部署分支頂端的 Webhook 採用以下格式:
<Looker URL>/webhooks/projects/<LookML project name>/deploy/branch/<Git branch name>
用於部署修訂版本 SHA 或標記的 webhook 採用以下格式:
<Looker URL>/webhooks/projects/<LookML project name>/deploy/ref/<commit SHA or tag>
請將尖括號 < >
docsexamples.dev.looker.com
Looker 執行個體上 e_faa
專案的 v1.0
代碼名稱部署 webhook 範例:
https://docsexamples.dev.looker.com/webhooks/projects/e_faa/deploy/ref/v1.0
使用 API 部署
如果專案採用進階部署模式,您可以使用 Looker API 將變更部署至正式環境。
如要搭配 API 部署,發出呼叫的 API 使用者必須具備 deploy
權限。如要進一步瞭解如何驗證及使用 Looker API,請參閱 Looker API 驗證和 API 使用入門說明文件。
如要透過 API 部署,請使用 deploy_ref_to_production
端點。這個端點可透過多種方式呼叫。以下範例適用於 HTTPS 和 SDK 方法。
HTTPS
如要使用 deploy_ref_to_production
API 端點手動部署,請參閱以下使用 HTTPS 方法的範例。如需進一步瞭解如何使用 CURL 要求手動呼叫 API 的範例,請參閱「如何驗證 API」GitHub 說明檔,或使用 API Explorer。您可以從 Looker Marketplace 在 Looker 執行個體上安裝 API Explorer。
在 HTTPS 要求中使用下列範例,透過 deploy_ref_to_production
API 端點部署分支的首頁,或特定提交 SHA 或標記:
部署分支版本的最新版本:
<HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?branch=<BRANCH_NAME>
部署修訂版本 SHA 或標記:
<HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?ref=<SHA_OR_TAG>
SDK
或者,您可以使用 Looker 的 SDK,而非手動向 API 提出要求。SDK 會處理驗證、參數和回應序列化,以及其他相關問題的詳細資訊。
使用 deploy_ref_to_production
搭配 SDK 方法進行部署的情況如下所示:
部署分支版本的最新版本:
deploy_ref_to_production(<PROJECT_ID>, {branch: <BRANCH_NAME>})
部署修訂版本 SHA 或標記:
deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})