Pergunta

O aplicativo usa uma combinação de plataformas ASP.NET e Flex.

Eu sou capaz de usar com sucesso o serviço de compilação para construir e implantar o site .NET. Esta coima funciona. No entanto, também temos nossos arquivos do ActionScript no TFS e eu criei um arquivo de lote para com êxito compilar o ActionScript a partir da linha de comando.

Eu quero criar duas definições de compilação separadas para a compilação ASP.NET e Flex. Flex, obviamente, não tem um arquivo SLN - posso criar um arquivo de definições de construção a partir do zero para apoiar o arquivo de lote de compilação Flex sem um arquivo de solução? As tarefas são bastante simples para criar (veja abaixo), mas eu nunca construiu um script de construção personalizado da equipe sem usar o assistente Criar - eo Criar espera assistente você para fornecer um arquivo de solução, que eu não tenho <. / p>

O meu script de construção seria muito simples e direta:

  1. Obter a versão mais recente dos arquivos do ActionScript
  2. Execute o arquivo ActionScript compilação lote
  3. Copie o ActionScript arquivos para o deploy pasta
Foi útil?

Solução

Absolutamente. TFSBuild.proj é um arquivo MSBuild que as chamadas sua compilação solução no TFS. Você pode modificar isso para construir o que quiser usando MSBuild, que é a língua que .vbproj e csproj arquivos são escritos em. Há uma riqueza de tarefas que MSBuild permite que você use ...

Outras dicas

Não, você não precisa de um arquivo de solução no sentido de obter uma compilação feita usando TFSBuild. Um arquivo de projeto muito simples poderia ser assim (cortesia Aaron Hallberg):

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
  <Target Name="EndToEndIteration">
    <Exec Command="SomeScript.cmd" />
  </Target>
</Project>

Por favor, investigar esta página de Aarons blog. Os alvos padrão em um arquivo TFSBuild.PROJ é realmente definido em um arquivo de alvos "comuns" e importados para a projfile por esta instrução:

  <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v8.0\TeamBuild\Microsoft.TeamFoundation.Build.targets" />

Se a importação for removido você só precisa do alvo EndToEndIteration para obter TFSBuild correndo ....

Todo o melhor / Niels

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top