Rayfin CLI 參考

找到 Rayfin CLI 指令,用於建立專案、管理結構變更、部署到 Fabric 以及設定環境設定。 每個章節列出指令語法、選項及常見用途。

安裝

npm i @microsoft/rayfin-cli 來安裝 CLI。

入門指南

請依照終端機中的步驟建立 Fabric 應用程式。

npm create @microsoft/rayfin@latest my-app  # 1. Create a project from a template
cd my-app
npm run dev     # 2. Run the frontend dev server
npx rayfin up   # 3. Deploy to Microsoft Fabric

小提示

對於已有或空專案,請使用 npx rayfin init 而非 npm create 新增 Rayfin 到已有原始碼或空目錄的專案中。 init 指令會引導你啟用服務、選擇資料庫方言,以及設定靜態主機,無需搭建新模板。

完整攻略請參考 使用 CLI 建立並部署你的第一個 Fabric 應用程式,以及 部署 Fabric 應用程式到 Fabric

支架專案 npm create

npm create (別名) npm init透過呼叫 create initializer 套件來啟動新專案。 要搭建一個 Fabric 應用程式,請搭配 @microsoft/rayfin 初始化器一起使用:

npm create @microsoft/rayfin@latest my-app --workspace <workspace name>

命令說明

本文中的指令與旗標已從本地安裝的 CLI 說明輸出中驗證。

最上層命令

利用此表格快速找到正確的指令。

命令 用它來做
npx rayfin init [directory] 建立或設定一個 Rayfin 專案。
npx rayfin up 將應用程式部署到 Fabric 並管理遠端部署。
npx rayfin env rayfin/.env中產生框架專用環境檔案。
npx rayfin login 登入 Rayfin 平台。
npx rayfin logout 登出並清除快取的憑證。

建立或配置專案

rayfin init [directory]

rayfin init 來新增或現有專案加入 Rayfin。

Argument Description
--project-name <name> 設定專案名稱。
-t, --template <uri> 指定要使用的範本 URI。
--template-name <name> 依名稱選擇範本。
-l, --list-templates 列出可用的範本。
--dialect <dialect> 設定資料庫方言。
--services <list> 選擇啟用哪些服務。
--auth-methods <list> 選擇認證方式。
--static-hosting 啟用靜態主機設定。
--overwrite 覆蓋現有產生的檔案。
--workspace-id <id> 使用特定的 Fabric 工作區 ID。
--workspace-uri <uri> 使用特定的 Fabric 工作區 URI。
--base-api-url <url> 覆蓋基礎 API URL。
--item-id <id> 鎖定特定的 Fabric 項目 ID。

Examples

在支架前列出可用範本:

npx rayfin init --list-templates

在目前目錄中初始化 Rayfin,使用命名範本和特定方言:

npx rayfin init . --template-name react-vite --dialect mssql

建立一個非互動式的新專案,並設定服務與認證:

npx rayfin init my-app --project-name my-app --services db,storage --auth-methods fabric --static-hosting --overwrite

部署到 Fabric

rayfin up

使用 rayfin up 將應用程式部署到 Fabric,作為 Rayfin 項目。

Argument Description
--tenant <id> 使用特定的租戶識別碼。
--workspace-id <id> 部署到特定的 Fabric 工作區 ID。
--workspace-uri <uri> 部署到特定的 Fabric 工作空間 URI。
--base-api-url <url> 覆蓋基礎 API URL。
--force 必要時進行部隊部署步驟。
--dry-run 預覽部署動作,但不套用它們。
--env-file <path> 從檔案載入環境值。
--verbose 顯示冗長的部署輸出。
--json 以 JSON 格式回傳部署輸出。
-y, --yes 自動接受提示。
--encryption-fallback-enabled 啟用加密備援行為。

Examples

部署到目前選擇的 Fabric 工作區:

npx rayfin up

預覽部署動作而不套用:

npx rayfin up --dry-run --verbose

非互動式部署到特定工作空間:

npx rayfin up --workspace-id 00000000-0000-0000-0000-000000000000 --yes
Subcommand Description
npx rayfin up db apply 產生並套用 DAB 設定至遠端 Rayfin 項目工作負載端點。
npx rayfin up staticapp deploy 建立、打包並部署靜態內容到遠端 Rayfin 項目。
npx rayfin up status 顯示目前的部署狀態。
npx rayfin up list 列出專案中所有已記錄的 Fabric 部署。
npx rayfin up switch [workspace] 切換主動Fabric部署並重寫 rayfin/.env

rayfin up db apply

產生並套用 DAB 設定至遠端 Rayfin 項目工作負載端點。

Argument Description
--verbose 顯示詳細輸出。
--force 強制再生並套用設定。
--json 以 JSON 格式回傳輸出。

Examples

對遠端 Rayfin 項目套用資料庫設定變更:

npx rayfin up db apply

強制再生並捕捉機器可讀的輸出:

npx rayfin up db apply --force --json

rayfin up staticapp deploy

建置、封裝並部署靜態內容到遠端 Rayfin 項目。

Argument Description
--verbose 顯示詳細輸出。
--skip-build 部署時不執行建置步驟。
--json 以 JSON 格式回傳輸出。

Examples

建置並部署靜態內容:

npx rayfin up staticapp deploy

部署一個預先建置 dist 的資料夾,無需重跑建置:

npx rayfin up staticapp deploy --skip-build

rayfin up status

顯示雲端部署狀態。

Argument Description
--json 以 JSON 格式回傳狀態。
--verbose 顯示詳細輸出。

Examples

請查看目前的部署狀態:

npx rayfin up status

回傳狀態為 JSON 用於腳本:

npx rayfin up status --json

rayfin up list

列出本專案所有錄製的 Fabric 部署。

Argument Description
--json 請以 JSON 格式回傳部署清單。

Examples

列出本專案所有已錄製的 Fabric 部署:

npx rayfin up list

rayfin up switch [workspace]

切換主動Fabric部署並相應重寫 rayfin/.env

Argument Description
-l, --list 列出可部署的方案,無需切換。
--no-emit-env 跳過寫入已發佈的環境檔案。

Examples

列出可切換的部署:

npx rayfin up switch --list

將主動部署切換到特定工作區:

npx rayfin up switch my-workspace

產生環境檔案

rayfin env

使用 rayfin env 以輸出框架特定的.env.local值。rayfin/.env

Argument Description
--framework <vite|nextjs|plain> 選擇目標框架格式。
--output <dir> 將產生的檔案寫入特定目錄。
--show 列印輸出值時不寫入檔案。

Examples

產生相容 .env.local的 Vite:

npx rayfin env --framework vite

預覽已發出的環境值,無需寫入檔案:

npx rayfin env --framework nextjs --show

登入和登出

rayfin login

請使用 rayfin login 登入 Rayfin 平台。

Argument Description
--tenant <id> 使用特定的租戶識別碼。
--service-principal 嘗試服務負責人簽到。 這個選項在說明中有列出,但目前不支援。
-u, --client-id <id> 請提供服務主體登入時的客戶 ID。 這個選項在說明中有列出,但目前不支援。
-p, --client-secret <secret> 提供客戶端的秘密資料以便服務主體登入。 這個選項在說明中有列出,但目前不支援。
--select 從可用的登入帳號或情境中選擇。
--encryption-fallback-enabled 啟用加密備援行為。

Examples

互動式登入:

npx rayfin login

登入特定租戶:

npx rayfin login --tenant 00000000-0000-0000-0000-000000000000

切換登入帳號:

npx rayfin login --select
Subcommand Description
npx rayfin login status 顯示目前的認證狀態。

rayfin login status

顯示目前的認證狀態。

Argument Description
沒有 這個子指令在 CLI 說明的輸出中沒有列出任何選項。

Example

請確認您是否已登入:

npx rayfin login status

rayfin logout

登出並清除快取的憑證。

Argument Description
沒有 這個指令在 CLI 說明的輸出中沒有列出任何選項。

Example

登出並清除快取憑證:

npx rayfin logout