Em um dos clientes da Lambda3 que estou trabalhando, passei por um grande problema na semana passada: a máquina que fazia o papel de Build Service da minha infraestrutura do TFS resolveu não ligar mais. Com isso toda a minha estrutura de Build e Deploy parou de funcionar. 🙁

No cenário desse meu cliente, já tínhamos aproximadamente 150 Build Definitions atendendo os mais diversos cenários de compilação de diferentes linguagens e plataformas (.NET, Java, etc).

No meio desse caos, o cliente nos ligou desesperado para uma rápida solução. Eu inicialmente o orientei à disponibilização de uma nova máquina para que pudéssemos executar a instalação do Build Service, recolocando esse servidor na infraestrutura do TFS. O cliente rapidamente solicitou esse novo servidor e executamos a instalação sem nenhum problema (configurando Build Service, Build Controller e Build Agents).

Mas ai um outro problema surgiu: todas as 150 Build Definitions estavam apontando para um Build Controller que já não existia mais e portanto todas essas Builds ainda estavam indisponíveis.

O que fazer diante dessa situação? Abrir cada Build Definition e reconfigurar o Build Controller? Sim, essa era uma solução válida mais muito demorada. Ai pensei!!! Será que não existe nenhum plug-in para alteração de Build Controller em lote? Resposta: sim, existe 🙂

Community TFS Build Manager

O plug-in Community TFS Build Manager nos permite entre outras coisas gerenciar todas as Build Definition existentes, permitindo inclusive a alteração em lote do Build Controller.

Após a instalação do plug-in, será incluído o menu “Community TFS Build Manager” na opção Build no Team Explorer conforme demonstrado abaixo:

Community TFS Build Manager

Após a escolha da opção acima, será apresentada uma tela para configuração das Build Definitions. Na combobox, será necessário a escolha da opção “Build Definitions”.

Build Definitions

Após a seleção acima, serão listados todas as Build Defintions pertencentes ao Team Project selecionado. Agora basta escolher as Build Definitions que terão o Build Controller alterado (no nosso caso todas as Build Definitions) e escolher a opção Change >> Build Controller.

Alteração de Build Controller em lote

Com todos esses passos conseguimos voltar o ambiente do Build Service. 🙂

Vale a pena então como lição de casa explorar as outras funcionalidades oferecidas pelo “Community TFS Bulild Manager”. Com certeza alguma outra funcionalidade oferecida irá te ajudar no dia a dia na administração do seu TFS. 😉

Espero que tenham gostado de mais essa dica. :)

Abraços e até o próximo post.

Vinicius Moura.

Vinicius Moura

Consultor ALM na empresa Lambda3. Formado em Tecnologia da Informação pela Universidade Presbiteriana Mackenzie. Pós graduado em Gestão de Tecnologia da Informação pela FIAP. Certificação Microsoft 70-512 Visual Studio Team Foundation Server 2010, Administration