implementation ao criar uma regra de repositório.
Membros
- attr
- delete
- download
- download_and_extract
- execute
- extract
- file
- name
- os
- patch
- path
- ler
- report_progress
- symlink
- modelo
- que
- workspace_root
attr
struct repository_ctx.attr
excluir
bool repository_ctx.delete(path)
Parâmetros
| Parâmetro | Descrição |
|---|---|
path
|
string ou path;
required Caminho do arquivo a ser excluído, relativo ao diretório do repositório ou absoluto. Pode ser um caminho ou uma string. |
download
struct repository_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 repository_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 repository_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. |
extrair
None repository_ctx.extract(archive, output='', stripPrefix='', *, rename_files={})Parâmetros
| Parâmetro | Descrição |
|---|---|
archive
|
string, Label ou path;
required caminho para o arquivo que será descompactado, relativo ao diretório do repositório. |
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. |
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.
|
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. |
arquivo
None repository_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. |
nome
string repository_ctx.name
os
repository_os repository_ctx.os
patch
None repository_ctx.patch(patch_file, strip=0)Parâmetros
| Parâmetro | Descrição |
|---|---|
patch_file
|
string; ou Label; ou path;
required O arquivo de patch a ser aplicado. Pode ser um rótulo, um caminho relativo ou um caminho absoluto. Se for um caminho relativo, ele será resolvido para o diretório do repositório. |
strip
|
O padrão é 0remova o número especificado de componentes iniciais dos nomes de arquivos. |
caminho
path repository_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 repository_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 repository_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 |
link simbólico
None repository_ctx.symlink(target, link_name)Parâmetros
| Parâmetro | Descrição |
|---|---|
target
|
string; ou Label; ou path;
required O caminho que o link simbólico deve apontar. |
link_name
|
string; ou Label; ou path;
required O caminho do link simbólico a ser criado, relativo ao diretório do repositório. |
modelo
None repository_ctx.template(path, template, substitutions={}, executable=True)template. Todas as ocorrências em template de uma chave de substitutions serão substituídas pelo valor correspondente. O resultado é gravado em path. Um argumentoexecutable opcional (padrão é "true") pode ser definido para ativar ou desativar o bit executável.
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. |
template
|
string; ou Label; ou path;
required caminho para o arquivo de modelo. |
substitutions
|
O padrão é {}substituições a serem feitas ao expandir o modelo. |
executable
|
O padrão é TrueDefine a flag executável no arquivo criado, "true" por padrão. |
qual
path repository_ctx.which(program)
Parâmetros
| Parâmetro | Descrição |
|---|---|
program
|
required Programa a ser encontrado no caminho. |
None.
workspace_root
path repository_ctx.workspace_root