implementation ao criar uma extensão de módulo.
Membros
- download
- download_and_extract
- execute
- extension_metadata
- file
- is_dev_dependency
- modules
- os
- path
- ler
- report_progress
- root_module_has_non_dev_dependency
- que
download
struct module_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, *, integrity='')
success, uma flag que é true se o download for concluído, e, se for bem-sucedido, um hash do arquivo com os campos sha256 e integrity.
Parâmetros
| Parâmetro | Descrição |
|---|---|
url
|
string ou iterável de strings;
obrigatório Lista de URLs espelhados que referenciam o mesmo arquivo. |
output
|
string; ou Label; ou path;
o padrão é ''caminho para o arquivo de saída, relativo ao diretório do repositório. |
sha256
|
O padrão é '', o hash SHA-256 esperado do arquivo baixado. Ele precisa corresponder ao hash SHA-256 do arquivo baixado. Omitir o SHA-256 é um risco de segurança, já que os arquivos remotos podem mudar. Na melhor das hipóteses, omitir esse campo vai tornar seu build não hermético. É opcional para facilitar o desenvolvimento, mas precisa ser definido antes do envio. |
executable
|
O padrão é FalseDefina a flag executável no arquivo criado. O padrão é "false". |
allow_fail
|
O padrão é False. Se definido, indica o erro no valor de retorno em vez de gerar um erro para downloads com falha. |
canonical_id
|
O padrão é ''. Se definido, restringe os acertos de cache aos casos em que o arquivo foi adicionado ao cache com o mesmo ID canônico. |
auth
|
O padrão é {}Um dicionário opcional que especifica informações de autenticação para alguns dos URLs. |
integrity
|
O padrão é ''Soma de verificação esperada do arquivo baixado, no formato de integridade de subrecursos. Ele precisa corresponder ao checksum do arquivo baixado. Omitir o checksum é um risco de segurança, já que os arquivos remotos podem mudar. Na melhor das hipóteses, omitir esse campo vai tornar seu build não hermético. É opcional para facilitar o desenvolvimento, mas precisa ser definido antes do envio. |
download_and_extract
struct module_ctx.download_and_extract(url, output='', sha256='', type='', stripPrefix='', allow_fail=False, canonical_id='', auth={}, *, integrity='', rename_files={})
success, uma flag que é true se o download for concluído com êxito e, se for bem-sucedido, um hash do arquivo com os campos sha256 e integrity.
Parâmetros
| Parâmetro | Descrição |
|---|---|
url
|
string ou iterável de strings;
obrigatório Lista de URLs espelhados que referenciam o mesmo arquivo. |
output
|
string; ou Label; ou path;
o padrão é ''caminho para o diretório em que o arquivo será descompactado, relativo ao diretório do repositório. |
sha256
|
O padrão é '', o hash SHA-256 esperado do arquivo baixado. Ele precisa corresponder ao hash SHA-256 do arquivo baixado. Omitir o SHA-256 é um risco de segurança, já que os arquivos remotos podem mudar. Na melhor das hipóteses, omitir esse campo vai tornar seu build não hermético. É opcional para facilitar o desenvolvimento, mas precisa ser definido antes do envio. Se fornecido, o cache do repositório será verificado primeiro em busca de um arquivo com o hash especificado. O download só será tentado se o arquivo não for encontrado no cache. Depois de um download bem-sucedido, o arquivo será adicionado ao cache. |
type
|
O padrão é '', o tipo de arquivo do arquivo baixado. Por padrão, o tipo de arquivo é determinado pela extensão do arquivo do URL. Se o arquivo não tiver uma extensão, especifique "zip", "jar", "war", "aar", "tar", "tar.gz", "tgz", "tar.xz", "txz", ".tar.zst", ".tzst", "tar.bz2", ".tbz", ".ar" ou ".deb". |
stripPrefix
|
O padrão é '', um prefixo de diretório a ser removido dos arquivos extraídos. Muitos arquivos contêm um diretório de nível superior com todos os arquivos do arquivo. Em vez de precisar especificar esse prefixo várias vezes no build_file, esse campo pode ser usado para removê-lo dos arquivos extraídos.
|
allow_fail
|
O padrão é False. Se definido, indica o erro no valor de retorno em vez de gerar um erro para downloads com falha. |
canonical_id
|
O padrão é ''. Se definido, restringe os acertos de cache aos casos em que o arquivo foi adicionado ao cache com o mesmo ID canônico. |
auth
|
O padrão é {}Um dicionário opcional que especifica informações de autenticação para alguns dos URLs. |
integrity
|
O padrão é ''Soma de verificação esperada do arquivo baixado, no formato de integridade de subrecursos. Ele precisa corresponder ao checksum do arquivo baixado. Omitir o checksum é um risco de segurança, já que os arquivos remotos podem mudar. Na melhor das hipóteses, omitir esse campo vai tornar seu build não hermético. É opcional para facilitar o desenvolvimento, mas precisa ser definido antes do envio. |
rename_files
|
O padrão é {}Um dicionário opcional que especifica os arquivos a serem renomeados durante a extração. As entradas de arquivo com nomes que correspondem exatamente a uma chave serão renomeadas para o valor, antes de qualquer ajuste de prefixo de diretório. Isso pode ser usado para extrair arquivos que contêm nomes de arquivos não Unicode ou que têm arquivos que seriam extraídos para o mesmo caminho em sistemas de arquivos sem diferenciação de maiúsculas e minúsculas. |
execute
exec_result module_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")
timeout (em segundos, padrão de 600 segundos). Esse método retorna uma estrutura exec_result que contém a saída do comando. O mapa environment pode ser usado para substituir algumas variáveis de ambiente que serão transmitidas ao processo.
Parâmetros
| Parâmetro | Descrição |
|---|---|
arguments
|
obrigatório Lista de argumentos. O primeiro elemento precisa ser o caminho para o programa a ser executado. |
timeout
|
O padrão é 600duração máxima do comando em segundos (o padrão é 600 segundos). |
environment
|
O padrão é {}. Força a definição de algumas variáveis de ambiente para serem transmitidas ao processo. |
quiet
|
O padrão é TrueSe stdout e stderr devem ser impressos no terminal. |
working_directory
|
O padrão é ""Diretório de trabalho para execução de comandos. Pode ser relativo à raiz do repositório ou absoluto. |
extension_metadata
extension_metadata module_ctx.extension_metadata(root_module_direct_deps=None, root_module_direct_dev_deps=None)
Parâmetros
| Parâmetro | Descrição |
|---|---|
root_module_direct_deps
|
sequência de strings; ou string; ou None;
o padrão é NoneOs nomes dos repositórios que a extensão considera dependências diretas do módulo raiz. Se o módulo raiz importar outros repositórios ou não importar todos eles usando use_repo, o Bazel vai mostrar um aviso e um comando de correção quando a extensão for avaliada.Se um dos campos Exatamente um de |
root_module_direct_dev_deps
|
sequência de strings; ou string; ou None;
o padrão é NoneOs nomes dos repositórios que a extensão considera como dependências de desenvolvimento diretas do módulo raiz. Se o módulo raiz importar outros repositórios ou não importar todos eles usando use_repo em um proxy de extensão criado com use_extension(..., dev_dependency = True), o Bazel vai imprimir um aviso e um comando de correção quando a extensão for avaliada.Se um dos campos Exatamente um de |
arquivo
None module_ctx.file(path, content='', executable=True, legacy_utf8=True)Parâmetros
| Parâmetro | Descrição |
|---|---|
path
|
string; ou Label; ou path;
required caminho do arquivo a ser criado, relativo ao diretório do repositório. |
content
|
O padrão é ''o conteúdo do arquivo a ser criado, vazio por padrão. |
executable
|
O padrão é TrueDefine a flag executável no arquivo criado, "true" por padrão. |
legacy_utf8
|
O padrão é Truecodifica o conteúdo do arquivo para UTF-8, o padrão é "true". Versões futuras vão mudar o padrão e remover esse parâmetro. |
is_dev_dependency
bool module_ctx.is_dev_dependency(tag)
devDependency = True.
Parâmetros
| Parâmetro | Descrição |
|---|---|
tag
|
bazel_module_tag;
required A tag obtida de bazel_module.tags. |
modules
list module_ctx.modules
os
repository_os module_ctx.os
caminho
path module_ctx.path(path)
Parâmetros
| Parâmetro | Descrição |
|---|---|
path
|
string; ou Label; ou path;
required string, rótulo ou caminho de onde criar um caminho |
ler
string module_ctx.read(path)
Parâmetros
| Parâmetro | Descrição |
|---|---|
path
|
string; ou Label; ou path;
required caminho do arquivo a ser lido. |
report_progress
None module_ctx.report_progress(status='')Parâmetros
| Parâmetro | Descrição |
|---|---|
status
|
string;
o padrão é ''string que descreve o status atual do progresso da busca |
root_module_has_non_dev_dependency
bool module_ctx.root_module_has_non_dev_dependency
qual
path module_ctx.which(program)
Parâmetros
| Parâmetro | Descrição |
|---|---|
program
|
required Programa a ser encontrado no caminho. |
None.