다음 함수는 @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)
또는 use_repo_rule
를 사용하여 MODULE.bazel 파일에서 이러한 저장소 규칙을 직접 호출할 수 있습니다.
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 |
문자열, 필수
저장소로 사용할 디렉터리의 경로입니다. 경로는 절대 경로이거나 워크스페이스 루트를 기준으로 할 수 있습니다. |
repo_mapping |
사전: 문자열 -> 문자열; 필수
로컬 저장소 이름을 글로벌 저장소 이름으로 변환하는 사전입니다. 이를 통해 이 저장소의 종속 항목에 대한 워크스페이스 종속 항목 확인을 제어할 수 있습니다. 예를 들어 항목 `"@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 파일로 사용할 파일입니다.
이 라벨로 주소 지정된 파일의 이름은 BUILD여야 할 필요는 없지만 BUILD일 수 있습니다. |
build_file_content |
문자열(선택사항)
이 저장소에 생성할 BUILD 파일의 콘텐츠입니다.
|
path |
문자열, 필수
저장소로 사용할 디렉터리의 경로입니다. 경로는 절대 경로이거나 워크스페이스 루트를 기준으로 할 수 있습니다. |
repo_mapping |
사전: 문자열 -> 문자열; 필수
로컬 저장소 이름을 글로벌 저장소 이름으로 변환하는 사전입니다. 이를 통해 이 저장소의 종속 항목에 대한 워크스페이스 종속 항목 확인을 제어할 수 있습니다. 예를 들어 항목 `"@foo": "@bar"` 는 이 저장소가 `@foo`에 종속될 때마다 (예: `@foo//some:target`에 대한 종속 항목) 전역적으로 선언된 `@bar` (`@bar//some:target`) 내에서 실제로 해당 종속 항목을 확인해야 함을 선언합니다. |