MODULE.bazel 파일에서 사용할 수 있는 메서드
회원
- archive_override
- bazel_dep
- git_override
- include
- local_path_override
- module
- multiple_version_override
- register_execution_platforms
- register_toolchains
- single_version_override
- use_extension
- use_repo
- use_repo_rule
archive_override
None
archive_override(module_name, urls, integrity='', strip_prefix='', patches=[], patch_cmds=[], patch_strip=0)
매개변수
매개변수 | 설명 |
---|---|
module_name
|
string;
필수 이 재정의를 적용할 Bazel 모듈 종속 항목의 이름입니다. |
urls
|
string; 또는 문자열의 반복 가능 항목
필수 자료실의 URL http(s):// 또는 file:// URL일 수 있습니다. |
integrity
|
string;
기본값은 '' 입니다. 하위 리소스 무결성 형식으로 된 보관 파일의 예상 체크섬입니다. |
strip_prefix
|
string;
기본값은 '' 입니다. 추출된 파일에서 삭제할 디렉터리 프리픽스입니다. |
patches
|
string의 반복 가능
기본값은 [] 입니다. 이 모듈에 적용할 패치 파일을 가리키는 라벨 목록입니다. 패치 파일은 최상위 프로젝트의 소스 트리에 있어야 합니다. 목록 순서대로 적용됩니다. |
patch_cmds
|
string의 반복 가능
기본값은 [] 입니다. 패치가 적용된 후 Linux/Macos에서 적용될 Bash 명령어 시퀀스 |
patch_strip
|
int;
기본값은 0 입니다. Unix 패치의 --strip 인수와 동일합니다. |
bazel_dep
None
bazel_dep(name, version='', max_compatibility_level=-1, repo_name='', dev_dependency=False)
매개변수
매개변수 | 설명 |
---|---|
name
|
string;
필수 직접 종속 항목으로 추가할 모듈의 이름입니다. |
version
|
string;
기본값은 '' 입니다. 직접 종속 항목으로 추가될 모듈의 버전입니다. |
max_compatibility_level
|
int;
기본값은 -1 입니다. 모듈이 직접 종속 항목으로 추가되도록 지원되는 최대 compatibility_level 입니다. 모듈의 버전은 지원되는 최소 호환성 수준, 이 속성이 지정되지 않은 경우 최대 버전을 암시합니다.
|
repo_name
|
string;
기본값은 '' 입니다. 이 종속 항목을 나타내는 외부 저장소의 이름입니다. 기본적으로 모듈의 이름입니다. |
dev_dependency
|
bool;
기본값은 False 입니다. true인 경우 현재 모듈이 루트 모듈이 아니거나 `--ignore_dev_dependency` 가 사용 설정된 경우 이 종속 항목이 무시됩니다. |
git_override
None
git_override(module_name, remote, commit='', patches=[], patch_cmds=[], patch_strip=0, init_submodules=False, strip_prefix='')
매개변수
매개변수 | 설명 |
---|---|
module_name
|
string;
필수 이 재정의를 적용할 Bazel 모듈 종속 항목의 이름입니다. |
remote
|
string;
필수 원격 Git 저장소의 URL입니다. |
commit
|
string;
기본값은 '' 입니다. 체크아웃해야 하는 커밋입니다. |
patches
|
string의 반복 가능
기본값은 [] 입니다. 이 모듈에 적용할 패치 파일을 가리키는 라벨 목록입니다. 패치 파일은 최상위 프로젝트의 소스 트리에 있어야 합니다. 목록 순서대로 적용됩니다. |
patch_cmds
|
string의 반복 가능
기본값은 [] 입니다. 패치가 적용된 후 Linux/Macos에서 적용될 Bash 명령어 시퀀스 |
patch_strip
|
int;
기본값은 0 입니다. Unix 패치의 --strip 인수와 동일합니다. |
init_submodules
|
bool;
기본값은 False 입니다. 가져온 저장소의 git 하위 모듈을 재귀적으로 초기화해야 하는지 여부입니다. |
strip_prefix
|
string;
기본값은 '' 입니다. 추출된 파일에서 삭제할 디렉터리 프리픽스입니다. git 저장소의 하위 디렉터리를 타겟팅하는 데 사용할 수 있습니다. 하위 디렉터리에는 이 `git_override` 에 전달된 `module_name` 인수와 동일한 모듈 이름을 가진 자체 `MODULE.bazel` 파일이 있어야 합니다. |
include
None
include(label)
include()
는 포함된 파일이 include()
호출 위치에 텍스트 형식으로 배치되는 것처럼 동작합니다. 단, 변수 결합 (예: use_extension
에 사용되는 결합)은 포함된 파일이나 포함된 파일이 아닌, 변수가 발생한 파일에서만 표시됩니다.루트 모듈만 include()
를 사용할 수 있습니다. bazel_dep
의 MODULE 파일이 include()
를 사용하면 오류입니다.
기본 저장소의 파일만 포함할 수 있습니다.
include()
를 사용하면 루트 모듈 파일을 여러 부분으로 세분화하여 방대한 MODULE.bazel 파일을 피하거나 개별 시맨틱 세그먼트의 액세스 제어를 더 효과적으로 관리할 수 있습니다.
매개변수
매개변수 | 설명 |
---|---|
label
|
string;
필수 포함할 파일을 가리키는 라벨입니다. 라벨은 기본 저장소의 파일을 가리켜야 합니다. 즉, 이중 슬래시 ( // )로 시작해야 합니다.
입니다. |
local_path_override
None
local_path_override(module_name, path)
매개변수
매개변수 | 설명 |
---|---|
module_name
|
string;
필수 이 재정의를 적용할 Bazel 모듈 종속 항목의 이름입니다. |
path
|
string;
필수 이 모듈이 있는 디렉터리의 경로입니다. |
모듈
None
module(name='', version='', compatibility_level=0, repo_name='', bazel_compatibility=[])
최대 한 번만 호출되어야 하며, 호출될 경우 MODULE.bazel 파일의 첫 번째 지시문이어야 합니다. 이 모듈이 루트 모듈인 경우에만 생략할 수 있습니다 (예: 다른 모듈에 의존하지 않을 경우).
매개변수
매개변수 | 설명 |
---|---|
name
|
string;
기본값은 '' 입니다. 모듈의 이름입니다. 이 모듈이 루트 모듈인 경우에만 생략할 수 있습니다 (예: 다른 모듈에 의존하지 않을 경우). 유효한 모듈 이름은 1) 소문자 (a~z), 숫자 (0~9), 마침표 (.), 하이픈 (-), 밑줄 (_)만 포함해야 합니다. 2) 소문자로 시작해야 합니다. 3) 소문자 또는 숫자로 끝나야 합니다. |
version
|
string;
기본값은 '' 입니다. 모듈의 버전입니다. 이 모듈이 루트 모듈인 경우에만 생략할 수 있습니다 (예: 다른 모듈에 의존하지 않을 경우). 버전은 완화된 SemVer 형식이어야 합니다. 자세한 내용은 문서를 참조하세요. |
compatibility_level
|
int;
기본값은 0 입니다. 모듈의 호환성 수준입니다. 호환되지 않는 주요 변경사항이 발생할 때마다 변경해야 합니다. 이것은 기본적으로 '주 버전'이며 버전 문자열 자체에 삽입되지 않고 별도의 필드로 존재한다는 점을 제외하면 모듈의 모듈입니다. 호환성 수준이 서로 다른 모듈은 이름이 다른 모듈인 것처럼 버전 확인에 참여하지만, 최종 종속 항목 그래프에는 이름은 같지만 호환성 수준이 다른 여러 모듈이 포함될 수 없습니다 ( multiple_version_override 가 적용되지 않는 경우). 자세한 내용은 문서를 참고하세요.
|
repo_name
|
string;
기본값은 '' 입니다. 모듈 자체에 표시되는 이 모듈을 나타내는 저장소의 이름입니다. 기본적으로 저장소 이름은 모듈의 이름입니다. 모듈 이름과 다른 저장소 이름을 사용해 온 프로젝트를 쉽게 마이그레이션하기 위해 지정할 수 있습니다. |
bazel_compatibility
|
string의 반복 가능
기본값은 [] 입니다. 사용자가 이 모듈과 호환되는 Bazel 버전을 선언할 수 있는 bazel 버전 목록입니다. 종속 항목 해결에는 영향을 미치지 않지만 bzlmod가 이 정보를 사용하여 현재 Bazel 버전이 호환되는지 확인합니다. 이 값의 형식은 쉼표로 구분된 일부 제약 조건 값의 문자열입니다. 세 가지 제약 조건이 지원됩니다. <=X.X.X: Bazel 버전이 X.X.X 이전 버전이어야 합니다. 최신 버전에 호환되지 않는 것으로 알려진 변경사항이 있을 때 사용됩니다. >=X.X.X: Bazel 버전은 X.X.X 이후여야 합니다.X.X.X 이후만 사용할 수 있는 일부 기능을 사용하는 경우 사용됩니다. -X.X.X: Bazel 버전 X.X.X가 호환되지 않습니다. X.X.X에 손상을 일으키는 버그가 있을 때 사용되지만 이후 버전에서는 수정되었습니다. |
multiple_version_override
None
multiple_version_override(module_name, versions, registry='')
매개변수
매개변수 | 설명 |
---|---|
module_name
|
string;
필수 이 재정의를 적용할 Bazel 모듈 종속 항목의 이름입니다. |
versions
|
string의 반복 가능
필수 공존할 수 있는 버전을 명시적으로 지정합니다. 이러한 버전은 종속 항목 그래프 사전 선택에 이미 있어야 합니다. 이 모듈의 종속 항목이 '업그레이드'됩니다. 동일한 호환성 수준에서 허용되는 버전보다 더 높은 버전을 갖는 종속 항목이 있으면 오류가 발생합니다. |
registry
|
string;
기본값은 '' 입니다. 이 모듈의 레지스트리를 재정의합니다. 기본 레지스트리 목록에서 이 모듈을 찾는 대신 주어진 레지스트리를 사용해야 합니다. |
register_execution_platforms
None
register_execution_platforms(dev_dependency=False, *platform_labels)
@
또는 //
로 시작)이어야 합니다. 자세한 내용은 도구 모음 해상도를 참고하세요. :all
와 같이 여러 타겟으로 확장되는 패턴은 이름별 사전순으로 등록됩니다.
매개변수
매개변수 | 설명 |
---|---|
dev_dependency
|
bool;
기본값은 False 입니다. true인 경우 현재 모듈이 루트 모듈이 아니거나 `--ignore_dev_dependency` 가 사용 설정된 경우 실행 플랫폼이 등록되지 않습니다. |
platform_labels
|
string의 sequence;
필수 등록할 타겟 패턴입니다. |
register_toolchains
None
register_toolchains(dev_dependency=False, *toolchain_labels)
@
또는 //
로 시작)이어야 합니다. 자세한 내용은 도구 모음 해상도를 참고하세요. 여러 타겟 (예: :all
)으로 확장되는 패턴은 도구 모음 구현 이름이 아닌 타겟 이름에 따라 사전순으로 등록됩니다.
매개변수
매개변수 | 설명 |
---|---|
dev_dependency
|
bool;
기본값은 False 입니다. true인 경우 현재 모듈이 루트 모듈이 아니거나 `--ignore_dev_dependency` 가 사용 설정된 경우 도구 모음이 등록되지 않습니다. |
toolchain_labels
|
string의 sequence;
필수 등록할 타겟 패턴입니다. |
single_version_override
None
single_version_override(module_name, version='', registry='', patches=[], patch_cmds=[], patch_strip=0)
매개변수
매개변수 | 설명 |
---|---|
module_name
|
string;
필수 이 재정의를 적용할 Bazel 모듈 종속 항목의 이름입니다. |
version
|
string;
기본값은 '' 입니다. 종속 항목 그래프에서 이 모듈의 선언된 버전을 재정의합니다. 즉, 이 모듈이 '고정'됩니다. 이 재정의 버전으로 업데이트합니다 레지스트리 또는 패치만 재정의하려는 경우 이 속성을 생략할 수 있습니다. |
registry
|
string;
기본값은 '' 입니다. 이 모듈의 레지스트리를 재정의합니다. 기본 레지스트리 목록에서 이 모듈을 찾는 대신 주어진 레지스트리를 사용해야 합니다. |
patches
|
string의 반복 가능
기본값은 [] 입니다. 이 모듈에 적용할 패치 파일을 가리키는 라벨 목록입니다. 패치 파일은 최상위 프로젝트의 소스 트리에 있어야 합니다. 목록 순서대로 적용됩니다. |
patch_cmds
|
string의 반복 가능
기본값은 [] 입니다. 패치가 적용된 후 Linux/Macos에서 적용될 Bash 명령어 시퀀스 |
patch_strip
|
int;
기본값은 0 입니다. Unix 패치의 --strip 인수와 동일합니다. |
use_extension
module_extension_proxy use_extension(extension_bzl_file, extension_name, *, dev_dependency=False, isolate=False)
매개변수
매개변수 | 설명 |
---|---|
extension_bzl_file
|
string;
필수 모듈 확장자를 정의하는 Starlark 파일의 라벨입니다. |
extension_name
|
string;
필수 사용할 모듈 확장 프로그램의 이름입니다. 이 이름의 기호는 Starlark 파일로 내보내야 합니다. |
dev_dependency
|
bool;
기본값은 False 입니다. true인 경우 현재 모듈이 루트 모듈이 아니거나 `--ignore_dev_dependency` 가 사용 설정된 경우 모듈 확장 프로그램의 이 사용이 무시됩니다. |
isolate
|
bool;
기본값은 False 입니다. 실험용. 이 매개변수는 실험 단계이며 언제든지 변경될 수 있습니다. 여기에 의존하지 마세요. --experimental_isolated_extension_usages 를 설정하여 실험용으로 사용 설정할 수 있습니다. true인 경우 이 모듈 확장 프로그램 사용은 이 모듈과 다른 모듈에서 모두 다른 모든 용도와 분리됩니다. 이 용도에 대해 생성된 태그는 다른 용도에 영향을 미치지 않으며 이 용도에 대해 확장 프로그램에서 생성한 저장소는 확장 프로그램에서 생성된 다른 모든 저장소와 구별됩니다. 이 매개변수는 현재 실험용이며 |
use_repo
None
use_repo(extension_proxy, *args, **kwargs)
매개변수
매개변수 | 설명 |
---|---|
extension_proxy
|
module_extension_proxy;
필수use_extension 호출에서 반환된 모듈 확장 프로그램 프록시 객체입니다.
|
args
|
필수 가져올 저장소의 이름입니다. |
kwargs
|
필수 다른 이름을 사용하여 현재 모듈의 범위로 가져올 특정 저장소를 지정합니다. 키는 현재 범위에서 사용할 이름이어야 하며 값은 모듈 확장 프로그램에서 내보낸 원래 이름이어야 합니다. |
use_repo_rule
repo_rule_proxy use_repo_rule(repo_rule_bzl_file, repo_rule_name)
name
속성을 사용하여 선언된 이름으로 현재 모듈에만 표시됩니다. 암시적 불리언 dev_dependency
속성은 현재 모듈이 루트 모듈인 경우에만 특정 저장소가 생성된다는 것을 나타내기 위해 프록시에서 사용할 수 있습니다.
매개변수
매개변수 | 설명 |
---|---|
repo_rule_bzl_file
|
string;
필수 저장소 규칙을 정의하는 Starlark 파일의 라벨입니다. |
repo_rule_name
|
string;
필수 사용할 저장소 규칙의 이름입니다. 이 이름의 기호는 Starlark 파일로 내보내야 합니다. |