로컬 저장소 규칙

문제 신고 소스 보기 나이틀리 빌드 · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

다음 함수는 @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

load("@bazel//tools/build_defs/repo:local.bzl", "local_repository")

local_repository(name, path, repo_mapping)

이미 Bazel 파일이 포함된 로컬 디렉터리를 저장소로 사용할 수 있도록 합니다. 이 디렉터리에는 이미 Bazel BUILD 파일과 저장소 경계 파일이 포함되어 있어야 합니다. 이러한 파일이 포함되어 있지 않으면 new_local_repository을 대신 사용하는 것이 좋습니다.

ATTRIBUTES

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를 사용하는 것이 좋습니다.

ATTRIBUTES

name 이름: 필수

이 저장소의 고유한 이름입니다.

build_file 라벨: 선택사항

이 저장소의 빌드 파일로 사용할 파일입니다. `build_file` 과 `build_file_content` 중 정확히 하나를 지정해야 합니다. 이 라벨로 지정된 파일의 이름은 BUILD가 아니어도 되지만 BUILD여도 됩니다. 실제 BUILD 파일과 구분하기 위해 `BUILD.new-repo-name` 과 같은 이름을 사용하면 됩니다.

build_file_content 문자열, 선택사항

이 저장소에 생성할 BUILD 파일의 콘텐츠입니다. `build_file` 과 `build_file_content` 중 정확히 하나를 지정해야 합니다.

path 문자열, 필수

저장소로 사용할 수 있도록 할 디렉터리의 경로입니다. 경로는 절대적이거나 작업공간 루트를 기준으로 할 수 있습니다.

repo_mapping 사전: 문자열 -> 문자열; 선택사항

`WORKSPACE` 컨텍스트에서만: 로컬 저장소 이름에서 전역 저장소 이름으로의 사전입니다. 이를 통해 이 저장소의 종속 항목에 대한 작업공간 종속 항목 해결을 제어할 수 있습니다. 예를 들어 `"@foo": "@bar"` 항목은 이 저장소가 `@foo`에 종속되는 경우 (예: `@foo//some:target`에 종속되는 경우) 전역적으로 선언된 `@bar` (`@bar//some:target`) 내에서 실제로 해당 종속 항목을 확인해야 한다고 선언합니다. 이 속성은 `MODULE.bazel` 컨텍스트 (모듈 확장 프로그램의 구현 함수 내에서 저장소 규칙을 호출하는 경우)에서 지원되지 않습니다.