Para economizar espaço em disco e evitar problemas de desempenho, você pode limitar os artefatos armazenados em builds e projetos específicos do TeamCity. Existem três maneiras principais de fazer isso:
O TeamCity pode criar automaticamente um arquivo a partir de artefatos de build antes de publicá-los. Para configurar esse comportamento, abra o General Settings de uma configuração de build e especifique artifact paths (padrões separados por nova linha ou vírgula), no seguinte formato:
[+:|-:]source => target_archive.*
, onde:
[+:|-:]source
– é um caminho para os arquivos ou diretórios a serem publicados como artefatos de build (+:
) ou excluídos da publicação (-:
). Recomenda-se usar caminhos para fontes relativos ao diretório de check-out do build, embora os caminhos absolutos também sejam aceitos. target_archive.*
– é um caminho para um arquivo que o TeamCity deve criar para empacotar artefatos, onde .*
é a extensão do arquivo. Os tipos de arquivo suportados são: zip
, 7zip
, jar
, tar
e tar.gz
. Um caminho de destino não pode ser absoluto – especifique-o em relação ao diretório de check-out do build. Por exemplo, para empacotar todos os arquivos e subdiretórios armazenados no diretório directory_name
no arquivo ZIP archive_name
, digite o seguinte no campo Artifact paths:
directory_name => archive_name.zip
Consulte este artigo da documentação para mais detalhes e exemplos sobre como configurar caminhos de artefatos.
Você pode especificar o tamanho máximo permitido de um arquivo de artefatos de build e o número máximo de artefatos por build globalmente no servidor do TeamCity. Para fazer isso, use as configurações correspondentes na seção Build Settings de Administration | Global Settings.
Você pode instruir o TeamCity a excluir automaticamente artefatos antigos e desnecessários de uma configuração de build específica. Para fazer isso, configure as regras de limpeza em Project Settings | Clean-up Rules:
No campo Artifact patterns, insira padrões separados por nova linha de nomes de artefatos para adicionar ou excluir artefatos correspondentes da limpeza. Por exemplo:
+:**/file*.*
– remove artefatos que contêm “file” no nome. -:**/file*.jar
– exclui da limpeza artefatos .jar com “file” no nome.