FFX 設定

FFX 的設定管理功能可讓您設定 FFX 程式碼,而不必重新編譯。大致上,設定可以視為鍵/值對應。

設定管理程式碼會在多個位置搜尋與鍵相關聯的值。系統會依下列順序執行搜尋,並傳回找到的第一個值:

  1. 執行階段設定 (由指令列設定)
  2. 環境變數
  3. 設定檔
  4. 經驗法則 (可從環境猜測的編譯方法)

執行階段設定

可在叫用 ffx 時進行設定。頂層指令接受設定參數:

$ fx ffx --config "config=runtime" ...

舉例來說,請執行:

$ fx ffx --config "config-test=runtime" config get --name config-test

執行階段參數採用以半形逗號分隔的鍵/值組合格式 (「{key}={value},{key}={value},etc...」),因為這不是強型別,因此在此設定的所有設定都會假設為字串。

Daemon 會以自己的程序執行,而且目前執行階段設定不會從 CLI 轉移至 Daemon,如果 Daemon 已啟動,一般而言,如果您要使用執行階段設定設定 Daemon,系統將手動執行 Daemon 指令:

$ fx ffx --config "config-test=runtime" daemon

環境變數

鍵也可以與環境變數相關聯。這項作業目前是在編譯時間完成。

金鑰可以與任意數量的環境變數相關聯,並使用可解析為某個值的第一個環境變數 (依照透過向量參數提供的順序)。

設定檔

未來將支援更多語言。

經驗法則

經驗法則設定會使用查詢時執行的程式碼,將鍵解析為值。這段程式碼會在編譯時間設定。

金鑰與必須符合簽章的函式相關聯:

fn(key: &str) -> Option<Value>