Limpar dados antigos em Azure DevOps Server

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Ao longo do tempo, Azure DevOps Server instâncias podem criar volumes muito grandes de dados, incluindo arquivos, builds, itens de trabalho e assim por diante. Durante o tempo de vida de um projeto, esses dados são valiosos como um histórico dos vários artefatos envolvidos na produção de software. Eventualmente, os custos envolvidos na manutenção de dados mais antigos - que incluem impactos no desempenho e aumento do tempo gasto em atualizações, além do aumento dos requisitos de espaço em disco - podem exceder os benefícios.

Este artigo fornece diretrizes para limpar uma variedade de diferentes tipos de dados, principalmente de bancos de dados de coleção de Azure DevOps Server.

Observe que o tamanho de arquivos de dados SQL não diminuirá após a limpeza, pois SQL Server reservará o espaço para uso futuro.

Importante

Em todos os casos a seguir, depois que os dados forem limpos, eles não poderão ser recuperados , exceto restaurando um backup de banco de dados. Tenha cuidado para apenas limpo dados de que você tem certeza de que não precisa mais.

Pré-requisitos

Para executar esses procedimentos, você precisa ser um usuário altamente permissivo, normalmente um membro de um grupo de Administradores de Projeto ou Coleção de Projetos.

Projetos

Se você tiver projetos inteiros que não são mais necessários, excluí-los poderá ter um grande impacto, pois isso removerá todo o conteúdo do projeto em todas as áreas de recursos. Há duas maneiras de excluir um projeto:

  1. Usando o portal da Web.

  2. Usando a ferramenta TfsDeleteProject incluída nas instalações do Visual Studio.

Por padrão, os dois métodos executarão o mesmo conjunto de ações.

Arquivos

Normalmente, o conteúdo do arquivo consome a maior parte do espaço em bancos de dados de coleção Azure DevOps Server, portanto, a limpeza de arquivos desnecessários pode ter um impacto significativo no volume de dados. Há muitos tipos diferentes de arquivos armazenados em bancos de dados de coleção Azure DevOps Server, incluindo arquivos Controle de Versão do Team Foundation, arquivos Git, anexos de item de trabalho, anexos de caso de teste, saídas de build e assim por diante. A maioria, mas não todos, dão suporte à limpeza.

Observe que o conteúdo do arquivo geralmente não é limpo imediatamente após a exclusão, mas sim por um trabalho em segundo plano executado periodicamente (normalmente uma vez por dia).

Controle de Versão do Team Foundation conteúdo

Quando branches, pastas e arquivos do TFVC (Controle de Versão do Team Foundation) são excluídos, eles são excluídos apenas logicamente – seu conteúdo ainda está disponível no histórico. Branches, pastas ou arquivos individuais do TFVC podem ser excluídos fisicamente usando o comando destroy em tf.exe.

Testar anexos

Os anexos de teste criados durante as execuções de teste podem ser limpos usando o Limpador de Anexos de Teste, que está incluído no Azure DevOps Server Power Tools.

Outra opção para limpar dados de teste é definir a política de retenção de teste para um projeto. Para saber mais, confira Controlar quanto tempo manter os resultados do teste.

Builds XAML

Quando compilações em Azure DevOps Server são excluídas, um subconjunto das informações produzidas é preservado para evitar a perda de dados de relatório na próxima vez que o warehouse for recriado. Os dados de build podem ser excluídos fisicamente usando o comando destroy no tfsbuild.exe.

Além disso, você pode definir políticas de retenção para seus pipelines de build e lançamento. Para saber mais, confira Políticas de build e liberação de retenção.