在規則分析期間建立的動作。
這個物件可供測試,可從 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
。