Construindo projeto Java com TFS
Pergunta
Uma parte muito pequena de nossa base de código é algum código Java legado.Estou tentando adicionar uma nova compilação que invocaria o ant para construir este projeto.
O primeiro problema é que o TFS não permite criar uma compilação que não construa uma solução .Net.Resolvi isso copiando um arquivo de compilação anterior e adicionando uma tarefa EndToEndIteration que é o ponto de entrada para a compilação.
O problema é que nenhuma das variáveis de construção usuais é preenchida - $(BuildDirectory), $(SolutionRoot) - todas em branco.Isso significa basicamente que não posso invocar minha tarefa formiga sem codificar os caminhos (o que definitivamente não posso fazer).
Alguma ideia?
Solução 4
Obrigado por todas as respostas.
No final, recorri à inclusão de uma solução vazia ao lado do arquivo de construção.Dessa forma todas as variáveis são preenchidas e simplesmente incluí uma que fazia tudo que eu queria.
Outras dicas
Você pode querer dar uma olhada Extensões de compilação do Teamprise que permite construir tarefas Ant ou Maven a partir do TFS.
- Se você ainda não tem uma, crie uma tarefa que irá armazenar e recuperar variáveis de ambiente, você definitivamente vai precisar delas para fazer qualquer coisa relacionada a java (acredito que haja uma no Pacote de extensão MSBuild)
- Crie uma tarefa personalizada para encapsular o Ant ou use a tarefa Script do Tarefas da comunidade MSBuild coleção
- Execute-o um milhão de vezes e corrija os problemas conforme você avança, geralmente é mais fácil e rápido fazer isso na linha de comando, então faça amizade com msbuild.exe dentro do terminal
Você deve ser capaz de transmitir qualquer informação que desejar entre variáveis de ambiente, tornando possível tudo o que você deseja.Não vou recomendar caminhos de codificação para você, mas você precisa colocar a configuração em algum lugar e tudo depende do que você deseja alterar e de como deseja que as coisas sejam organizadas.Se você realmente precisar, você pode enviar toda a configuração para um banco de dados e reduzi-la com uma das tarefas SQL nos links acima, mas lembre-se de que você está adicionando uma quantidade considerável de complexidade que pode ser desnecessária.
Pergunte a si mesmo:
- com que frequência esse valor provavelmente mudará?
- qual é o conjunto completo de tarefas que precisariam ser realizadas se isso mudar?
Escreva as respostas em algum lugar e certifique-se de que todos na equipe entendam.Quando se trata de construir sistemas na minha opinião “menos é mais”.Encontre a maneira mais simples de fazer isso, e faça isso até que isso se torne inaceitável e só então adicione complexidade...O TFS já é bastante complicado.
Acho que você está usando a ferramenta errada para o trabalho aqui - o TFS nunca será uma boa solução para construir qualquer outro aplicativo que não seja .NET.Eu acho que é melhor usar apenas o ant de forma independente.