次の関数は、
@bazel_tools//tools/build_defs/repo:local.bzl から読み込むことができます。
ローカル ファイルシステムのディレクトリをリポジトリとして使用できるようにするルール。
設定
モジュール拡張機能でこれらのルールを使用するには、.bzl ファイルに読み込んでから、拡張機能の実装関数から呼び出します。たとえば、local_repository を使用するには、次のようにします。
load("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository")
def _my_extension_impl(mctx):
local_repository(name = "foo", path = "foo")
my_extension = module_extension(implementation = _my_extension_impl)
または、MODULE.bazel ファイルで
use_repo_ruleを使用して、これらのリポジトリルールを直接呼び出すこともできます。
local_repository = use_repo_rule("@bazel_tools//tools/build_defs/repo:local.bzl", "local_repository")
local_repository(name = "foo", path = "foo")
local_repository
load("@bazel//tools/build_defs/repo:local.bzl", "local_repository")
local_repository(name, path, repo_mapping)
Bazel ファイルがすでに含まれているローカル ディレクトリをリポジトリとして使用できるようにします。このディレクトリには、Bazel BUILD ファイルとリポジトリ境界ファイルがすでに含まれている必要があります。これらのファイルが含まれていない場合は、代わりに new_local_repository を使用することを検討してください。
属性
name |
名前。必須
このリポジトリの一意の名前。 |
path |
文字列。必須
リポジトリとして使用するディレクトリのパス。 パスは絶対パスまたはワークスペース ルートからの相対パスにできます。 |
repo_mapping |
ディクショナリ: 文字列 -> 文字列。省略可
`WORKSPACE` コンテキストのみ: ローカル リポジトリ名からグローバル リポジトリ名へのディクショナリ。これにより、このリポジトリの依存関係のワークスペース依存関係解決を制御できます。 たとえば、エントリ `"@foo": "@bar"` は、このリポジトリが `@foo` に依存するたびに(`@foo//some:target` への依存関係など)、グローバルに宣言された `@bar`(`@bar//some:target`)内でその依存関係を解決する必要があることを宣言します。 この属性は、`MODULE.bazel` コンテキスト(モジュール拡張機能の実装関数内でリポジトリルールを呼び出す場合)ではサポートされていません。 |
new_local_repository
load("@bazel//tools/build_defs/repo:local.bzl", "new_local_repository")
new_local_repository(name, build_file, build_file_content, path, repo_mapping)
Bazel ファイルが含まれていないローカル ディレクトリをリポジトリとして使用できるようにします。このディレクトリに Bazel BUILD ファイルやリポジトリ境界ファイルを含める必要はありません。これらはこのリポジトリルールによって作成されます。ディレクトリに Bazel ファイルがすでに含まれている場合は、代わりに local_repository を使用することを検討してください。
属性
name |
名前。必須
このリポジトリの一意の名前。 |
build_file |
ラベル。省略可
このリポジトリの BUILD ファイルとして使用するファイル。 `build_file` と `build_file_content` のいずれか 1 つを指定する必要があります。 このラベルで指定されたファイルの名前は BUILD である必要はありませんが、BUILD にすることもできます。`BUILD.new-repo-name` のようにすると、実際の BUILD ファイルと区別しやすくなります。 |
build_file_content |
文字列。省略可
このリポジトリ用に作成される BUILD ファイルの内容。 `build_file` と `build_file_content` のいずれか 1 つを指定する必要があります。 |
path |
文字列。必須
リポジトリとして使用するディレクトリのパス。 パスは絶対パスまたはワークスペース ルートからの相対パスにできます。 |
repo_mapping |
ディクショナリ: 文字列 -> 文字列。省略可
`WORKSPACE` コンテキストのみ: ローカル リポジトリ名からグローバル リポジトリ名へのディクショナリ。これにより、このリポジトリの依存関係のワークスペース依存関係解決を制御できます。 たとえば、エントリ `"@foo": "@bar"` は、このリポジトリが `@foo` に依存するたびに(`@foo//some:target` への依存関係など)、グローバルに宣言された `@bar`(`@bar//some:target`)内でその依存関係を解決する必要があることを宣言します。 この属性は、`MODULE.bazel` コンテキスト(モジュール拡張機能の実装関数内でリポジトリルールを呼び出す場合)ではサポートされていません。 |