implementation 함수의 인수로 repository_ctx 객체를 가져옵니다.
회원
- attr
- 삭제
- download
- download_and_extract
- execute
- extract
- 파일
- getenv
- name
- original_name
- os
- patch
- 경로
- read
- 이름 바꾸기
- repo_metadata
- report_progress
- symlink
- 템플릿
- watch
- watch_tree
- which
- workspace_root
attr
structure repository_ctx.attr
delete
bool repository_ctx.delete(path)
매개변수
| 매개변수 | 설명 |
|---|---|
path
|
string 또는 path;
required 삭제할 파일의 경로입니다. 저장소 디렉터리를 기준으로 한 상대 경로 또는 절대 경로입니다. 경로 또는 문자열일 수 있습니다. |
다운로드
unknown repository_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, headers={}, *, integrity='', block=True)success를 포함하는 구조체를 반환합니다. success는 다운로드가 성공적으로 완료된 경우 true인 플래그이며, 성공한 경우 sha256 및 integrity 필드가 있는 파일의 해시입니다. sha256 또는 integrity이 사용자에 의해 지정된 경우 명시적 canonical_id를 설정하는 것이 좋습니다. 예: get_default_canonical_id
매개변수
| 매개변수 | 설명 |
|---|---|
url
|
string 또는 string의 반복 가능 객체(Iterable); 필수 동일한 파일을 참조하는 미러 URL 목록입니다. |
output
|
문자열 또는 라벨 또는 경로;
기본값은 ''저장소 디렉터리를 기준으로 하는 출력 파일의 경로입니다. |
sha256
|
string;
default is ''다운로드한 파일의 예상 SHA-256 해시입니다. 다운로드한 파일의 SHA-256 해시와 일치해야 합니다. 원격 파일은 변경될 수 있으므로 SHA-256을 생략하면 보안 위험이 있습니다. 이 필드를 생략하면 빌드가 비헤르메틱이 됩니다. 개발을 더 쉽게 하기 위해 선택사항이지만 배송 전에 설정해야 합니다. 제공된 경우 저장소 캐시에서 먼저 지정된 해시가 있는 파일을 확인합니다. 캐시에서 파일을 찾지 못한 경우에만 다운로드를 시도합니다. 다운로드가 완료되면 파일이 캐시에 추가됩니다. |
executable
|
bool;
default is False생성된 파일에 실행 파일 플래그를 설정합니다(기본값은 false). |
allow_fail
|
bool;
기본값은 False입니다. 설정된 경우 다운로드 실패에 대한 오류를 발생시키지 않고 반환 값에 오류를 표시합니다. |
canonical_id
|
string;
default is ''If set, restrict cache hits to those cases where the file was added to the cache with the same canonical id. 기본적으로 캐싱은 체크섬 ( sha256 또는 integrity)을 사용합니다.
|
auth
|
dict;
default is {}일부 URL의 인증 정보를 지정하는 선택적 사전입니다. |
headers
|
dict;
default is {}An optional dict specifying http headers for all URLs. |
integrity
|
string;
default is ''다운로드된 파일의 예상 체크섬입니다(하위 리소스 무결성 형식). 다운로드한 파일의 체크섬과 일치해야 합니다. 원격 파일이 변경될 수 있으므로 체크섬을 생략하면 보안 위험이 발생합니다. 이 필드를 생략하면 빌드가 비헤르메틱이 됩니다. 개발을 더 쉽게 하기 위해 선택사항이지만 배송 전에 설정해야 합니다. 제공된 경우 저장소 캐시에서 먼저 지정된 체크섬이 있는 파일을 확인합니다. 캐시에서 파일을 찾지 못한 경우에만 다운로드를 시도합니다. 다운로드가 완료되면 파일이 캐시에 추가됩니다. |
block
|
bool;
default is Truefalse로 설정하면 호출이 즉시 반환되고 일반 반환 값 대신 다운로드가 완료될 때까지 차단되고 일반 반환 값을 반환하거나 평소와 같이 예외를 발생시키는 단일 메서드 wait()가 있는 토큰이 반환됩니다. |
download_and_extract
struct repository_ctx.download_and_extract(url, output='', sha256='', type='', strip_prefix='', allow_fail=False, canonical_id='', auth={}, headers={}, *, integrity='', rename_files={})
success(다운로드가 성공적으로 완료된 경우 true인 플래그)와 성공한 경우 sha256 및 integrity 필드가 있는 파일의 해시를 포함하는 구조체를 반환합니다. sha256 또는 integrity이 사용자에 의해 지정된 경우 명시적 canonical_id를 설정하는 것이 좋습니다. 예: get_default_canonical_id
매개변수
| 매개변수 | 설명 |
|---|---|
url
|
string 또는 string의 반복 가능 객체(Iterable); 필수 동일한 파일을 참조하는 미러 URL 목록입니다. |
output
|
string 또는 Label 또는 path. 기본값은 ''입니다. 보관 파일이 압축 해제될 디렉터리의 경로입니다(저장소 디렉터리 기준). |
sha256
|
string;
default is ''다운로드한 파일의 예상 SHA-256 해시입니다. 다운로드한 파일의 SHA-256 해시와 일치해야 합니다. 원격 파일은 변경될 수 있으므로 SHA-256을 생략하면 보안 위험이 있습니다. 이 필드를 생략하면 빌드가 비헤르메틱이 됩니다. 개발을 더 쉽게 하기 위해 선택사항이지만 배송 전에 설정해야 합니다. 제공된 경우 저장소 캐시에서 먼저 지정된 해시가 있는 파일을 확인합니다. 캐시에서 파일을 찾지 못한 경우에만 다운로드를 시도합니다. 다운로드가 완료되면 파일이 캐시에 추가됩니다. |
type
|
string;
default is ''다운로드한 파일의 보관 파일 유형입니다. 기본적으로 보관 파일 유형은 URL의 파일 확장자에서 결정됩니다. 파일에 확장자가 없는 경우 여기에 'zip', 'jar', 'war', 'aar', 'nupkg', 'whl', 'tar', 'tar.gz', 'tgz', 'tar.xz', 'txz', '.tar.zst', '.tzst', 'tar.bz2', '.tbz', '.ar' 또는 '.deb'을 명시적으로 지정할 수 있습니다. |
strip_prefix
|
string;
default is ''추출된 파일에서 삭제할 디렉터리 접두사입니다. 많은 보관 파일에는 보관 파일의 모든 파일이 포함된 최상위 디렉터리가 포함되어 있습니다. build_file에서 이 접두사를 반복해서 지정할 필요가 없으며 이 필드를 사용하여 추출된 파일에서 접두사를 삭제할 수 있습니다.
호환성을 위해 이 매개변수는 지원 중단된 이름 |
allow_fail
|
bool;
기본값은 False입니다. 설정된 경우 다운로드 실패에 대한 오류를 발생시키지 않고 반환 값에 오류를 표시합니다. |
canonical_id
|
string;
default is ''If set, restrict cache hits to those cases where the file was added to the cache with the same canonical id. 기본적으로 캐싱은 체크섬( sha256 또는 integrity)을 사용합니다.
|
auth
|
dict;
default is {}일부 URL의 인증 정보를 지정하는 선택적 사전입니다. |
headers
|
dict;
default is {}An optional dict specifying http headers for all URLs. |
integrity
|
string;
default is ''다운로드된 파일의 예상 체크섬입니다(하위 리소스 무결성 형식). 다운로드한 파일의 체크섬과 일치해야 합니다. 원격 파일이 변경될 수 있으므로 체크섬을 생략하면 보안 위험이 발생합니다. 이 필드를 생략하면 빌드가 비헤르메틱이 됩니다. 개발을 더 쉽게 하기 위해 선택사항이지만 배송 전에 설정해야 합니다. 제공된 경우 저장소 캐시에서 먼저 지정된 체크섬이 있는 파일을 확인합니다. 캐시에서 파일을 찾지 못한 경우에만 다운로드를 시도합니다. 다운로드가 완료되면 파일이 캐시에 추가됩니다. |
rename_files
|
dict;
default is {}추출 중에 이름을 바꿀 파일을 지정하는 선택적 사전입니다. 키와 이름이 정확히 일치하는 보관 파일 항목은 디렉터리 접두사 조정 전에 값으로 이름이 변경됩니다. 이는 유니코드가 아닌 파일 이름이 포함된 보관 파일이나 대소문자를 구분하지 않는 파일 시스템에서 동일한 경로로 추출되는 파일이 있는 보관 파일을 추출하는 데 사용할 수 있습니다. |
execute
exec_result repository_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")
timeout에 의해 제한됩니다 (초, 기본값 600초). 이 메서드는 명령어의 출력이 포함된 exec_result 구조를 반환합니다. environment 맵을 사용하여 프로세스에 전달할 일부 환경 변수를 재정의할 수 있습니다.
매개변수
| 매개변수 | 설명 |
|---|---|
arguments
|
sequence;
required 인수 목록입니다. 첫 번째 요소는 실행할 프로그램의 경로여야 합니다. |
timeout
|
int;
default is 600명령의 최대 지속 시간(초)(기본값은 600초) |
environment
|
dict;
default is {}일부 환경 변수가 프로세스에 전달되도록 강제 설정합니다. 환경 변수를 삭제하려면 값을 None로 설정하세요.
|
quiet
|
bool;
default is Truestdout 및 stderr을 터미널에 출력해야 하는 경우 |
working_directory
|
string;
default is ""명령어 실행을 위한 작업 디렉터리입니다. 저장소 루트를 기준으로 하는 상대 경로 또는 절대 경로일 수 있습니다. 기본값은 저장소 루트입니다. |
추출
None repository_ctx.extract(archive, output='', strip_prefix='', *, rename_files={}, watch_archive='auto')매개변수
| 매개변수 | 설명 |
|---|---|
archive
|
string 또는 Label 또는 path;
required 압축 해제될 보관 파일의 경로입니다(저장소 디렉터리 기준). |
output
|
문자열 또는 라벨 또는 경로. 기본값은 ''입니다. 보관 파일이 압축 해제될 디렉터리의 경로입니다(저장소 디렉터리 기준). |
strip_prefix
|
string;
default is ''추출된 파일에서 삭제할 디렉터리 접두사입니다. 많은 보관 파일에는 보관 파일의 모든 파일이 포함된 최상위 디렉터리가 포함되어 있습니다. build_file에서 이 접두사를 반복해서 지정할 필요가 없는 대신 이 필드를 사용하여 추출된 파일에서 접두사를 삭제할 수 있습니다.
호환성을 위해 이 매개변수는 지원 중단된 이름 |
rename_files
|
dict;
default is {}추출 중에 이름을 바꿀 파일을 지정하는 선택적 사전입니다. 키와 이름이 정확히 일치하는 보관 파일 항목은 디렉터리 접두사 조정 전에 값으로 이름이 변경됩니다. 이는 유니코드가 아닌 파일 이름이 포함된 보관 파일이나 대소문자를 구분하지 않는 파일 시스템에서 동일한 경로로 추출되는 파일이 있는 보관 파일을 추출하는 데 사용할 수 있습니다. |
watch_archive
|
string;
default is 'auto'whether to watch the archive file. 'yes', 'no' 또는 'auto' 문자열일 수 있습니다. 'yes'를 전달하는 것은 watch() 메서드를 즉시 호출하는 것과 같습니다. 'no'를 전달하면 파일을 감시하려고 시도하지 않습니다. 'auto'를 전달하면 감시하는 것이 합법적인 경우에만 파일을 감시하려고 시도합니다. 자세한 내용은 watch() 문서를 참고하세요.
|
파일
None repository_ctx.file(path, content='', executable=True, legacy_utf8=False)매개변수
| 매개변수 | 설명 |
|---|---|
path
|
string 또는 Label 또는 path;
required 저장소 디렉터리를 기준으로 생성할 파일의 경로입니다. |
content
|
string;
default is ''생성할 파일의 콘텐츠입니다. 기본적으로 비어 있습니다. |
executable
|
bool;
default is True생성된 파일에 실행 파일 플래그를 설정합니다. 기본값은 true입니다. |
legacy_utf8
|
bool;
default is FalseNo-op. This parameter is deprecated and will be removed in a future version of Bazel. |
getenv
string repository_ctx.getenv(name, default=None)
name의 값을 문자열로 반환합니다(있는 경우). 없는 경우 default를 반환합니다. 증분 빌드 시 name로 이름이 지정된 변수의 값이 변경되면 이 저장소가 다시 가져와집니다.
매개변수
| 매개변수 | 설명 |
|---|---|
name
|
string;
required 원하는 환경 변수의 이름입니다. |
default
|
string 또는 None;
기본값은 Nonename을 찾을 수 없는 경우 반환할 기본값입니다.
|
None을 반환할 수 있습니다.
이름
string repository_ctx.name
original_name를 사용하여 이 저장소 규칙이 인스턴스화될 때 name로 원래 지정된 이름을 가져옵니다.
original_name
string repository_ctx.original_name
name 속성으로 지정된 이름입니다. 이 이름은 외부 저장소 간에 고유하지 않아도 됩니다. 대신 name를 사용하여 외부 저장소의 표준 이름을 가져오세요.
os
repository_os repository_ctx.os
patch
None repository_ctx.patch(patch_file, strip=0, *, watch_patch='auto')매개변수
| 매개변수 | 설명 |
|---|---|
patch_file
|
string; 또는 Label; 또는 path;
필수 적용할 패치 파일입니다. 라벨, 상대 경로 또는 절대 경로일 수 있습니다. 상대 경로인 경우 저장소 디렉터리로 확인됩니다. |
strip
|
int;
default is 0파일 이름에서 지정된 수의 선행 구성요소를 삭제합니다. |
watch_patch
|
string;
default is 'auto'패치 파일을 감시할지 여부입니다. 'yes', 'no' 또는 'auto' 문자열일 수 있습니다. 'yes'를 전달하는 것은 watch() 메서드를 즉시 호출하는 것과 같습니다. 'no'를 전달하면 파일을 감시하려고 시도하지 않습니다. 'auto'를 전달하면 감시하는 것이 합법적인 경우에만 파일을 감시하려고 시도합니다. 자세한 내용은 watch() 문서를 참고하세요.
|
경로
path repository_ctx.path(path)
repository_ctx인 경우 상대 경로는 저장소 디렉터리를 기준으로 결정됩니다. module_ctx인 경우 상대 경로는 이 모듈 확장 프로그램의 임시 작업 디렉터리를 기준으로 확인됩니다. 경로가 라벨인 경우 해당 파일의 경로로 확인됩니다. 원격 저장소와 모듈 확장 프로그램은 분석 단계에서 실행되므로 타겟 결과에 의존할 수 없습니다 (라벨은 생성되지 않은 파일을 가리켜야 함). 경로가 경로인 경우 해당 경로를 그대로 반환합니다.
매개변수
| 매개변수 | 설명 |
|---|---|
path
|
문자열, 라벨 또는 경로. 경로를 만들 string, Label 또는 path이 필요합니다. |
읽기
string repository_ctx.read(path, *, watch='auto')
매개변수
| 매개변수 | 설명 |
|---|---|
path
|
문자열 또는 라벨 또는 경로;
필수 읽어올 파일의 경로입니다. |
watch
|
string;
default is 'auto'파일을 감시할지 여부입니다. 'yes', 'no' 또는 'auto' 문자열일 수 있습니다. 'yes'를 전달하는 것은 watch() 메서드를 즉시 호출하는 것과 같습니다. 'no'를 전달하면 파일을 감시하려고 시도하지 않습니다. 'auto'를 전달하면 감시하는 것이 합법적인 경우에만 파일을 감시하려고 시도합니다. 자세한 내용은 watch() 문서를 참고하세요.
|
이름 바꾸기
None repository_ctx.rename(src, dst)src에서 dst로 바꿉니다. 상위 디렉터리는 필요에 따라 생성됩니다. 대상 경로가 이미 있는 경우 실패합니다. 두 경로 모두 저장소 내에 있어야 합니다.
매개변수
| 매개변수 | 설명 |
|---|---|
src
|
문자열 또는 라벨 또는 경로;
필수 저장소 디렉터리를 기준으로 이름을 바꿀 기존 파일 또는 디렉터리의 경로입니다. |
dst
|
string 또는 Label 또는 path;
required 파일 또는 디렉터리의 새 이름입니다(저장소 디렉터리 기준). |
repo_metadata
repo_metadata repository_ctx.repo_metadata(*, reproducible=False, attrs_for_reproducibility={})
매개변수
| 매개변수 | 설명 |
|---|---|
reproducible
|
bool;
default is False이 저장소를 재현 가능하게 다시 가져올 수 있다고 명시합니다. 즉, 정확히 동일한 입력 속성, 저장소 규칙 정의, 감시 파일, 환경 변수 등으로 다시 가져오면 정확히 동일한 출력이 생성됩니다. 이 속성은 인터넷 정보, 워크스페이스 루트 경로, 임의의 실행 파일 실행 출력 등 추적되지 않는 다른 조건이 변경되더라도 유지되어야 합니다. True로 설정하면 가져온 저장소 콘텐츠가 워크스페이스 간에 캐시될 수 있습니다. 이를 True로 설정해도 저장소 콘텐츠 캐시에 캐시된다는 보장은 없습니다. 예를 들어 로컬 저장소 규칙은 캐시되지 않습니다. |
attrs_for_reproducibility
|
dict;
default is {}reproducible이 False인 경우 이를 지정하여 재현 가능하도록 변경할 원래 저장소 규칙의 속성을 Bazel에 알릴 수 있습니다.
|
report_progress
None repository_ctx.report_progress(status='')매개변수
| 매개변수 | 설명 |
|---|---|
status
|
string;
default is ''string describing the current status of the fetch progress.
|
심볼릭 링크
None repository_ctx.symlink(target, link_name)매개변수
| 매개변수 | 설명 |
|---|---|
target
|
string; 또는 Label; 또는 path;
필수 심볼릭 링크가 가리켜야 하는 경로입니다. |
link_name
|
string 또는 Label 또는 path;
필수 생성할 심볼릭 링크의 경로입니다. |
템플릿
None repository_ctx.template(path, template, substitutions={}, executable=True, *, watch_template='auto')template를 사용하여 새 파일을 생성합니다. template에서 substitutions의 키가 발생할 때마다 해당 값으로 대체됩니다. 결과는 path에 기록됩니다. 선택적 executable 인수 (기본값은 true)를 설정하여 실행 파일 비트를 사용 설정하거나 사용 중지할 수 있습니다.
매개변수
| 매개변수 | 설명 |
|---|---|
path
|
string 또는 Label 또는 path;
required 저장소 디렉터리를 기준으로 생성할 파일의 경로입니다. |
template
|
string 또는 Label 또는 path;
required 템플릿 파일의 경로입니다. |
substitutions
|
dict;
default is {}템플릿을 확장할 때 적용할 대체입니다. |
executable
|
bool;
default is True생성된 파일에 실행 파일 플래그를 설정합니다. 기본값은 true입니다. |
watch_template
|
string;
default is 'auto'템플릿 파일을 감시할지 여부입니다. 'yes', 'no' 또는 'auto' 문자열일 수 있습니다. 'yes'를 전달하는 것은 watch() 메서드를 즉시 호출하는 것과 같습니다. 'no'를 전달하면 파일을 감시하려고 시도하지 않습니다. 'auto'를 전달하면 감시하는 것이 합법적인 경우에만 파일을 감시하려고 시도합니다. 자세한 내용은 watch() 문서를 참고하세요.
|
시계
None repository_ctx.watch(path)'변경사항'에는 파일 콘텐츠의 변경사항 (경로가 파일인 경우), 경로가 파일이었지만 이제 디렉터리인 경우 또는 그 반대의 경우, 경로가 존재하기 시작하거나 존재하지 않게 된 경우가 포함됩니다. 특히 경로가 디렉터리인 경우 디렉터리 아래의 파일 변경사항은 포함되지 않습니다. 이 경우 path.readdir()을 대신 사용하세요.
현재 가져오는 저장소 내부 또는 현재 모듈 확장 프로그램의 작업 디렉터리 내부의 경로를 확인하려고 하면 오류가 발생합니다. 현재 Bazel 작업공간 외부의 경로를 감시하려는 모듈 확장 프로그램도 오류를 발생시킵니다.
매개변수
| 매개변수 | 설명 |
|---|---|
path
|
문자열 또는 라벨 또는 경로;
필수 감시할 파일의 경로입니다. |
watch_tree
None repository_ctx.watch_tree(path)현재 가져오는 저장소 내의 경로를 감시하려고 하면 오류가 발생합니다.
매개변수
| 매개변수 | 설명 |
|---|---|
path
|
string 또는 Label 또는 path;
required 감시할 디렉터리 트리의 경로입니다. |
어떤
path repository_ctx.which(program)
path를 반환하거나 경로에 해당 프로그램이 없는 경우 None을 반환합니다.
매개변수
| 매개변수 | 설명 |
|---|---|
program
|
string;
required 경로에서 찾을 프로그램입니다. |
None을 반환할 수 있습니다.
workspace_root
path repository_ctx.workspace_root