動作

回報問題 查看來源 夜間 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

在規則分析期間建立的動作。

這個物件會顯示以供測試,並可能從 Actions 供應商取得。一般來說,您不需要在規則的實作函式中存取 Action 物件或其欄位。如要瞭解如何定義自訂規則時使用動作,請參閱規則頁面的一般討論內容,或參閱API 參考資料,瞭解如何建立動作。

這個物件的部分欄位僅適用於特定類型的動作。不適用的欄位會設為 None

成員

args

sequence Action.args

凍結 Args 物件的清單,內含動作引數的相關資訊。這些物件包含正確的引數資訊,包括涉及擴展動作輸出目錄的引數。不過,Args 物件在分析階段無法讀取。如要在分析階段取得較不準確的引數帳戶,請參閱 argv

請注意,部分動作類型目前不支援顯示這個欄位。如果是這類動作類型,則為 None。 可能會傳回 None

argv

sequence Action.argv

如果是透過 ctx.actions.run()ctx.actions.run_shell() 建立的動作,則為要執行的指令列引數不可變更的清單。請注意,如果是殼層動作,前兩個引數會是殼層路徑和 "-c"。 可能會傳回 None

內容

string Action.content

如果是透過 ctx.actions.write()ctx.actions.expand_template() 建立的動作,則為要寫入的檔案內容 (如果這些內容可在分析階段計算)。如果內容要到執行階段才能判斷,例如需要展開 Args 物件中的目錄,則值為 None。 可能會傳回 None

env

dict Action.env

這項動作的「固定」環境變數。這只包含動作定義明確設定的環境設定,因此會省略執行環境中預先設定的設定。

輸入內容

depset Action.inputs

這項動作的一組輸入檔案。

助憶鍵

string Action.mnemonic

這項動作的助記符。

輸出

depset Action.outputs

這項動作的一組輸出檔案。

substitutions

dict Action.substitutions

對於由 ctx.actions.expand_template() 建立的動作,這是保存替代對應項目的不可變更字典。 可能會傳回 None