template_ctx

Um objeto de contexto transmitido para a função de expansão do modelo de ação.

Membros

args

Args template_ctx.args()

Retorna um objeto Args que pode ser usado para criar linhas de comando com eficiência de memória.

declare_file

File template_ctx.declare_file(filename, *, directory)

Declara que a implementação cria um arquivo com o nome especificado no diretório indicado.

Além de declarar um arquivo, você precisa criar uma ação que o emita. Para criar essa ação, é necessário transmitir o objeto File retornado à função de construção da ação.

Parâmetros

Parâmetro Descrição
filename string; required
O caminho relativo do arquivo no diretório.
directory Arquivo; required
O diretório em que o arquivo deve ser criado.

run

None template_ctx.run(*, outputs, inputs=[], executable, tools=None, arguments=[], progress_message=None)

Cria uma ação que executa um executável.

Parâmetros

Parâmetro Descrição
outputs sequence de Files; required
Lista dos arquivos de saída da ação.
inputs sequência de Files ou depset; o padrão é []
Lista ou depset dos arquivos de entrada da ação.
executable File; ou string; ou FilesToRunProvider; required
O arquivo executável a ser chamado pela ação.
tools sequence; ou depset; ou None; o padrão é None
Lista ou depset de todas as ferramentas necessárias para a ação. As ferramentas são entradas executáveis que podem ter seus próprios runfiles, que são disponibilizados automaticamente para a ação.

Quando uma lista é fornecida, ela pode ser uma coleção heterogênea de:

  • Files
  • FilesToRunProvider instâncias
  • depsets de Files
Os Files de ctx.executable e os FilesToRunProviders que estão diretamente na lista terão os runfiles adicionados automaticamente. Todas as ferramentas são adicionadas implicitamente como entradas.

arguments sequence; o padrão é []
Argumentos de linha de comando da ação. Precisa ser uma lista de strings ou objetos actions.args().
progress_message string ou None; o padrão é None
Mensagem de progresso a ser mostrada ao usuário durante a build.