ローカル リポジトリ ルール

<ph type="x-smartling-placeholder"></ph> 問題を報告する ソースを表示 夜間 · 7.3 · 7.2 · 7.1 · 7.0 · 6.5

次の関数は、ソースから読み込めます @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

local_repository(name, path, repo_mapping)

Bazel ファイルがすでに含まれているローカル ディレクトリをリポジトリとして利用できるようにします。このディレクトリには、Bazel BUILD ファイルとリポジトリ境界ファイルがすでに含まれているはずです。これらのファイルが含まれていない場合は、<a href="#new_local_repository"><code>new_local_repository</code></a> の使用を検討してください。してください。

属性

name 名前:必須

このリポジトリの一意の名前。

path String;必須

リポジトリとして使用可能にするディレクトリのパス。

パスは、絶対パスまたはワークスペース ルートからの相対パスで指定できます。

repo_mapping 辞書: 文字列 ->String;必須

ローカル リポジトリ名からグローバル リポジトリ名への辞書。これにより、このリポジトリの依存関係について、ワークスペースの依存関係の解決を制御できます。

たとえば、エントリ "@foo": "@bar"` は、このリポジトリが `@foo` に依存する場合は常に(`@foo//some:target` への依存関係など、グローバルに宣言された `@bar`(`@bar//some:target`)内でその依存関係を解決する必要があることを宣言します。

new_local_repository

new_local_repository(name, build_file, build_file_content, path, repo_mapping)

Bazel ファイルを含まないローカル ディレクトリをリポジトリとして作成します。このディレクトリに Bazel BUILD ファイルやリポジトリ境界ファイルが含まれている必要はありません。このリポジトリ ルールによって作成されます。このディレクトリにすでに Bazel ファイルが含まれている場合は、<a href="#local_repository"><code>local_repository</code></a> の使用を検討してください。してください。

属性

name 名前:必須

このリポジトリの一意の名前。

build_file ラベル:省略可

このリポジトリのビルド ファイルとして使用するファイル。

build_filebuild_file_content のいずれか 1 つのみを指定する必要があります。

このラベルで指定されるファイルの名前は BUILD にする必要はありませんが、BUILD にできます。BUILD.new-repo-name などを使用すると、実際の BUILD ファイルと区別しやすくなります。

build_file_content String;省略可

このリポジトリ用に作成される BUILD ファイルの内容。

build_filebuild_file_content のいずれか 1 つのみを指定する必要があります。

path String;必須

リポジトリとして使用可能にするディレクトリのパス。

パスは、絶対パスまたはワークスペース ルートからの相対パスで指定できます。

repo_mapping 辞書: 文字列 ->String;必須

ローカル リポジトリ名からグローバル リポジトリ名への辞書。これにより、このリポジトリの依存関係について、ワークスペースの依存関係の解決を制御できます。

たとえば、エントリ "@foo": "@bar"` は、このリポジトリが `@foo` に依存する場合は常に(`@foo//some:target` への依存関係など、グローバルに宣言された `@bar`(`@bar//some:target`)内でその依存関係を解決する必要があることを宣言します。