Como obrigar os usuários a instalar o SP1 do VS 2010 para conectar ao TFS

Acesso negadoO Service Pack 1 do Visual Studio 2010, bem como o do Team Foundation Server 2010, trouxeram enormes melhorias de funcionalidade e estabilidade. Por isso, é natural esperar que seus todos os seus desenvolvedores tenham atualizado seu computador com o SP1, certo?

A questão é – tem algum jeito de evitar que os desenvolvedores conectem-se ao TFS se eles não tiverem instalado o Service Pack 1?

Graças a essa dica do Neno Loje, traduzida abaixo, agora dá para configurar o TFS 2010 de forma a rejeitar conexões de computadores que não tenham o VS 2010 SP1 instalado.

Solução

É fácil, você só precisa adicionar dois valores ao Registry do TFS (e reiniciar o TFS após a alteração):

  • Chave: /Configuration/Application/DisabledUserAgents/TFS10SP1
    Valor: “Team Foundation (*.exe, 10.0.<40219.1)”
  • Chave: /Configuration/Application/DisabledUserAgents/TFS10SP1/Message
    Valor: “Lamento, mas você precisa instalar o Visual Studio 2010 Service Pack 1.”
Como fazer

Use a ferramenta tfsreg.exe e execute os dois comandos abaixo:


tfsreg.exe /server:http://<meu-tfs>:8080/tfs /path:/Configuration/Application/DisabledUserAgents/TFS10SP1 /value:"Team Foundation (*.exe, 10.0.<40219.1)"

tfsreg.exe /server:http://<meu-tfs>:8080/tfs /path:/Configuration/Application/DisabledUserAgents/TFS10SP1/Message /value:"Lamento, mas você precisa instalar o Visual Studio 2010 Service Pack 1."

Importante: Ajuste o URL em azul, acima, para o endereço correto do seu TFS.

Dessa forma, desenvolvedores com computadores desatualizados receberão a mensagem abaixo ao tentar conectar ao TFS:

image
299

 

Referência: http://msmvps.com/blogs/vstsblog/archive/2011/09/07/restrict-tfs-to-only-allow-connections-from-clients-with-vs-sp1.aspx

Como reiniciar o TFS 2010 a partir da linha de comando

Para reiniciar o TFS 2010, a maneira recomendada é reciclar o pool de aplicações do Team Foundation Server. Para fazer isso a partir da linha de comando, execute o comando abaixo (tudo na mesma linha):

%windir%system32inetsrvappcmd recycle apppool
/apppool.name:"Microsoft Team Foundation Server Application Pool"

Naturalmente, é preciso ter permissões de administrador no servidor para poder executar esse comando.

Desabilitando temporariamente o envio de emails do TFS 2010

Caso você precise desabilitar, por qualquer motivo, o envio dos emails gerados a partir dos Alertas do TFS 2010, pode tirar proveito de um comando não-documentado:

TfsConfig configureMail /Enabled:false

Quando quiser retomar o envio de emails, basta reabilitar o serviço executando novamente o comando acima usando o valor true.