module_ctx

ヘルパー関数と依存関係グラフ全体の関連タグに関する情報を含むモジュール拡張機能のコンテキスト。モジュール拡張機能を作成するときに、implementation 関数の引数として module_setIamPolicy オブジェクトを取得します。

メンバー

ダウンロード

struct module_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, *, integrity='')

指定した URL の出力パスにファイルをダウンロードし、success を含む構造体を返します。ダウンロードが正常に完了した場合は true フラグ、ダウンロードが正常に完了した場合は sha256 フィールドと integrity フィールドを持つファイルのハッシュを返します。

パラメータ

パラメータ 説明
url string; or Iterable of strings(必須)
同じファイルを参照するミラー URL のリスト。
output string; or Label; or path; default = ''
出力ファイルのパス(リポジトリ ディレクトリからの相対パス)。
sha256 default = ''
ダウンロードされたファイルの想定された SHA-256 ハッシュ。これは、ダウンロードしたファイルの SHA-256 ハッシュと一致する必要があります。リモート ファイルは変更される可能性があるため、SHA-256 を省略するとセキュリティ上のリスクになります。このフィールドを省略しても、ビルドは非密閉型になります。開発を容易にするために省略できますが、リリース前に設定する必要があります。
executable default = False
作成されたファイルに実行可能フラグを設定します(デフォルトは false)。
allow_fail default = False
設定すると、ダウンロードの失敗時にエラーを発生させるのではなく、戻り値でエラーを示します。
canonical_id default = ''
設定すると、同じ正規 ID でファイルがキャッシュに追加されたケースにキャッシュ ヒットを制限します。
auth default = {}
一部の URL の認証情報を指定する辞書(省略可)。
integrity default = ''
ダウンロードされたファイルの予想されるチェックサム(サブリソースの整合性形式)。これは、ダウンロードしたファイルのチェックサムと一致する必要があります。リモート ファイルが変更される可能性があるため、チェックサムを省略することはセキュリティ上のリスクになります。このフィールドを省略しても、ビルドは非密閉型になります。開発を容易にするために省略できますが、リリース前に設定する必要があります。

download_and_extract

struct module_ctx.download_and_extract(url, output='', sha256='', type='', stripPrefix='', allow_fail=False, canonical_id='', auth={}, *, integrity='', rename_files={})

指定された URL の出力パスにファイルをダウンロードしてファイルを抽出し、success を含む構造体を返します。ダウンロードが正常に完了した場合は true フラグ、ダウンロードが正常に完了した場合は sha256integrity フィールドを持つファイルのハッシュを返します。

パラメータ

パラメータ 説明
url string; or Iterable of strings(必須)
同じファイルを参照するミラー URL のリスト。
output string; or Label; or path; default = ''
アーカイブが展開されるディレクトリへのパス(リポジトリ ディレクトリからの相対パス)。
sha256 default = ''
ダウンロードされたファイルの想定された SHA-256 ハッシュ。これは、ダウンロードしたファイルの SHA-256 ハッシュと一致する必要があります。リモート ファイルは変更される可能性があるため、SHA-256 を省略するとセキュリティ上のリスクになります。このフィールドを省略しても、ビルドは非密閉型になります。開発を容易にするために省略できますが、リリース前に設定する必要があります。指定すると、リポジトリ キャッシュで、指定されたハッシュを持つファイルが確認されます。キャッシュでファイルが見つからなかった場合にのみダウンロードが試行されます。ダウンロードが正常に完了すると、ファイルがキャッシュに追加されます。
type default = ''
ダウンロードされたファイルのアーカイブ タイプ。デフォルトでは、アーカイブ タイプは URL のファイル拡張子から決定されます。ファイルに拡張子がない場合は、"zip"、"jar"、"war"、"aar"、"tar"、"tar.gz"、"tgz"、"tar.xz"、"txz"、".tar.zst"、".tzst"、"tar.bz2"、または ".ar" のいずれかを明示的に指定できます。
stripPrefix default = ''
抽出されたファイルから削除するディレクトリ接頭辞。 多くのアーカイブには最上位ディレクトリがあり、アーカイブ内のすべてのファイルが含まれています。この接頭辞を build_file で何度も指定する代わりに、このフィールドを使用して抽出したファイルから接頭辞を削除できます。
allow_fail default = False
設定すると、ダウンロードの失敗時にエラーを発生させるのではなく、戻り値でエラーを示します。
canonical_id default = ''
設定すると、同じ正規 ID でファイルがキャッシュに追加されたケースにキャッシュ ヒットを制限します。
auth default = {}
一部の URL の認証情報を指定する辞書(省略可)。
integrity default = ''
ダウンロードされたファイルの予想されるチェックサム(サブリソースの整合性形式)。これは、ダウンロードしたファイルのチェックサムと一致する必要があります。リモート ファイルが変更される可能性があるため、チェックサムを省略することはセキュリティ上のリスクになります。このフィールドを省略しても、ビルドは非密閉型になります。開発を容易にするために省略できますが、リリース前に設定する必要があります。
rename_files default = {}
抽出時に名前を変更するファイルを指定するオプションの dict。キーと完全に一致する名前のアーカイブ エントリは、ディレクトリ接頭辞の調整が行われる前に、値に変更されます。Unicode ではないファイル名を含むアーカイブや、大文字と小文字を区別しないファイルシステム上で同じパスに解凍するファイルがあるアーカイブの抽出に使用できます。

execute

exec_result module_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")

引数のリストで指定されたコマンドを実行します。コマンドの実行時間は timeout によって制限されます(秒単位、デフォルトは 600 秒)。このメソッドは、コマンドの出力を含む exec_result 構造体を返します。environment マップを使用すると、プロセスに渡す一部の環境変数をオーバーライドできます。

パラメータ

パラメータ 説明
arguments required
引数のリスト。最初の要素は、実行するプログラムへのパスです。
timeout default = 600
コマンドの最大継続時間(秒)(デフォルトは 600 秒)。
environment default = {}
プロセスに渡すように一部の環境変数を強制的に設定します。
quiet default = True
stdout と stderr をターミナルに出力する必要がある場合。
working_directory default = ""
コマンド実行用の作業ディレクトリ。 リポジトリのルートからの相対パス、または絶対パスで指定できます。

あなた宛てに表示されます。

None module_ctx.file(path, content='', executable=True, legacy_utf8=True)

指定されたコンテンツを含むファイルをリポジトリ ディレクトリに生成します。

パラメータ

パラメータ 説明
path string; or Label; or path: 必須
作成するファイルのパス(リポジトリ ディレクトリからの相対パス)。
content default = ''
作成するファイルの内容。デフォルトでは空です。
executable default = True
作成されたファイルに実行可能フラグを設定します(デフォルトは true)。
legacy_utf8 default = True
デフォルトで、ファイル コンテンツを UTF-8 にエンコードします。今後のバージョンでは、デフォルトが変更され、このパラメータは削除されます。

モジュール

list module_ctx.modules

外部依存関係グラフ内のすべての Bazel モジュールのリスト。各モジュールは、このモジュール拡張機能に指定されたすべてのタグを公開する bazel_module オブジェクトです。この辞書の反復順序は、ルート モジュールから始まる幅優先検索と同じであることが保証されます。

os

repository_os module_ctx.os

システムからの情報にアクセスするための構造体。

パス

path module_ctx.path(path)

文字列、ラベル、またはパスからパスを返します。相対パスの場合は、リポジトリ ディレクトリからの相対パスで解決されます。パスがラベルの場合は、対応するファイルのパスに解決されます。リモート リポジトリは分析フェーズで実行されるため、ターゲットの結果に依存できないことに注意してください(ラベルは生成されていないファイルを指している必要があります)。パスがパスの場合は、そのパスがそのまま返されます。

パラメータ

パラメータ 説明
path string; or Label; or path; 必須
パスの作成元の文字列、ラベル、またはパス

読み取り

string module_ctx.read(path)

ファイル システム上のファイルの内容を読み取ります。

パラメータ

パラメータ 説明
path string; or Label; or path: 必須
読み取り元のファイルのパス。

report_progress

None module_ctx.report_progress(status='')

このリポジトリまたはモジュール拡張機能の取得の進行状況ステータスを更新します。

パラメータ

パラメータ 説明
status string; default = ''
取得の進行状況の現在のステータスを示す文字列

これは

path module_ctx.which(program)

対応するプログラムのパスを返します。該当するプログラムがパス内に存在しない場合は None を返します。

パラメータ

パラメータ 説明
program required
パス内で見つけるプログラム。
None を返す場合があります。