快速開始:將 Salesforce CLI 與 DevOps Center 搭配使用
使用 Salesforce CLI 從指令行自動化 DevOps Center 工作。在此快速入門中,您可以建立和啟用管道、管理工作項目,並將變更升級至下一個管道階段。
必要版本
| 提供版本:Professional (需要 API 存取權)、Enterprise、Performance、Unlimited 及 Developer Edition 的 Lightning Experience |
| 不適用於:Government Cloud Plus。請連絡您的 Salesforce 帳戶主管以取得詳細資訊。 |
| 不適用於:歐盟運作區域。歐盟運作區域是特殊付費的供應項目,提供增強層級的資料落地承諾。根據標準產品條款和條件,歐盟的組織不屬於歐盟 OZ。 |
| 所需的使用者權限 | |
|---|---|
| 若要建立管道: | DevOps Center 管理員 |
| 若要透過管道升級變更: | DevOps Center 部署經理 |
如需所有可用的標記和選項,請參閱 Salesforce CLI 指令參照。
開始之前,請先完成這些工作。
- 安裝 Salesforce CLI。請參閱安裝 Salesforce CLI。
- 安裝 DevOps Center 外掛程式。
sf plugins install @salesforce/plugin-devops-center - 驗證可使用 DevOps Center 的組織。此快速入門使用
my-devops-org作為組織別名。sf org login web --alias my-devops-org - 從 UI 建立 DevOps Center 專案。
- 將 GitHub (或 Bitbucket) 儲存庫連線至 DevOps Center 組織。
- 將已驗證的組織設定為預設組織。
sf config set target-org=my-devops-org設定目標組織會省略後續指令中的
--target-org my-devops-org。此快速入門會在每個指令中包含標記,讓目標組織清楚明確。
設定銷售管道
建立銷售管道、新增和設定其階段、啟用銷售管道,並附加您的專案。
-
列出專案以尋找專案識別碼。
sf devops project list --target-org my-devops-org複製您要附加至銷售管道之專案的識別碼。此快速入門中的範例使用
0Hn000000000001。 -
建立未啟用的管道並將其連線至您的存放庫。
sf devops pipeline create --target-org my-devops-org --name "Release Pipeline" --repo https://github.com/myorg/myrepo從指令輸出複製銷售管道識別碼。此快速入門中的範例使用
0XB000000000001。管道會保持未啟用,直到您設定其階段並將其啟用為止。
若要在建立銷售管道時建立存放庫,請使用含
--repo-type github|bitbucket的--create-repo。 -
將階段新增至管道。新銷售管道包含預設的最終階段。透過使用
--next-stage-id指定現有階段,將每個新階段新增至現有階段之前。例如,新增「整合」階段。
sf devops pipeline stage add --target-org my-devops-org --pipeline-id 0XB000000000001 --name "Integration" --next-stage-id 0Xc000000000001從指令輸出複製階段識別碼。剩餘的範例使用整合階段的
0Xc000000000005。針對每個其他階段 (例如 UAT) 重複指令。
小秘訣 在 DevOps Center UI 中檢視您的銷售管道,以取得後續指令的階段識別碼。或執行sf devops pipeline get --pipeline-id 0XB000000000001。 -
設定每個階段。每個階段都需要分支和環境。從右到左設定階段,因為最後階段必須有分支,您才能在前面設定階段。
將分支新增至「整合」階段。
--create-vcs-branch標記會在存放庫中建立分支 (若不存在)。sf devops stage branch add --target-org my-devops-org --pipeline-id 0XB000000000001 --stage-id 0Xc000000000005 --branch-name integration --create-vcs-branch將 Sandbox 環境新增至階段。
sf devops stage environment add --target-org my-devops-org --pipeline-id 0XB000000000001 --stage-id 0Xc000000000005 --environment-name Integration_Org --org-type Sandbox瀏覽器視窗隨即開啟,讓您能夠對環境進行驗證。針對生產組織使用
--org-type Production。在無周邊環境中,新增--no-browser並遵循指令傳回的驗證指示。針對每個階段重複分支和環境指令。使用適用於每個階段的分行名稱、環境名稱和組織類型。
-
啟用銷售管道。
重要 您無法在透過管道階段升級變更後修改管道階段。執行此指令之前,請先確定所有階段皆已正確設定。sf devops pipeline update --target-org my-devops-org --pipeline-id 0XB000000000001 --activate -
將 DevOps Center 專案附加至管道。
sf devops pipeline project add --target-org my-devops-org --pipeline-id 0XB000000000001 --project-id 0Hn000000000001銷售管道已準備就緒。在 DevOps Center UI 中建立工作項目,或執行sf devops work-item create指令。
管理工作項目
透過開始工作項目、認可您的變更、建立檢閱,以及將工作項目標記為準備升級來完成開發週期。
您可以在所有工作項目和檢閱指令中傳遞 --work-item-id,而非 --work-item-name。
-
將工作項目狀態設定為「進行中」。DevOps Center 會為工作項目建立功能分支。
sf devops work-item update --target-org my-devops-org --work-item-name WI-000042 --status "In Progress" -
從連線的儲存庫中提取功能分支,並在您的本機專案中進行檢查。
git fetch origin git checkout WI-000042 -
從您的開發組織取得變更。此範例會從具有別名
my-sandbox的組織中取用 Apex 類別。sf project retrieve start --target-org my-sandbox --metadata ApexClass:MyNewClass -
檢閱檢取的檔案、暫存檔案、認可檔案,並推送功能分支。
git status git add force-app git commit -am "Implement new feature" git push origin WI-000042如果您的 Salesforce DX 專案使用不同的封裝目錄,請調整傳送至
git add的路徑。 -
建立變更要求 (提取要求) 以將功能分支合併至目標分支。
sf devops review create --target-org my-devops-org --work-item-name WI-000042 - 等待小組批准並合併變更要求。
-
更新工作項目狀態以表示工作項目已準備好升級。
sf devops work-item update --target-org my-devops-org --work-item-name WI-000042 --status "Ready to Promote"
升級工作項目
將工作項目升級至下一個管道階段。DevOps Center 會驗證升級、執行針對目標階段設定的測試套件,並在測試通過時部署變更。
-
使用工作項目識別碼和目標階段識別碼升級工作項目。
sf devops promote --target-org my-devops-org --work-item-id 0Wx000000000042 --target-stage-id 0Xc000000000002指令輸出包含「要求識別碼」。使用它來檢查促銷狀態。
Status: Completed Message: Work items successfully promoted to UAT. Request ID: a0B000000000001 Promoted Work Items ─────────────────── 0Wx000000000042 -
使用要求識別碼檢查促銷狀態。
sf devops request status --target-org my-devops-org --request-token a0B000000000001
當要求狀態完成時,該工作項目可在目標階段中使用。
常見工作
在您的每日開發工作流程期間使用這些指令。
-
將多個工作項目升級至相同的階段。為每個工作項目指定一次
--work-item-id。sf devops promote --target-org my-devops-org --work-item-id 0Wx000000000042 --work-item-id 0Wx000000000043 --target-stage-id 0Xc000000000002 -
將外部合併的變更部署至與 DevOps Center 不同步的階段。
sf devops promotion complete --target-org my-devops-org --target-stage-id 0Xc000000000002
