Domanda

La nostra applicazione utilizza una combinazione di piattaforme ASP.NET e Flex.

Sono in grado di utilizzare con successo il servizio di build per creare e distribuire il sito Web .NET. Che funziona bene. Tuttavia, abbiamo anche i nostri file ActionScript in TFS e ho creato un file batch per compilare correttamente il codice ActionScript dalla riga di comando.

Voglio creare due definizioni di compilazione separate per la compilazione ASP.NET e Flex. Flex, ovviamente, non ha un file SLN - è possibile creare un file di definizione build da zero per supportare il Flex compilare file batch senza un file di soluzione? I compiti sono abbastanza semplici da creare (vedi sotto), ma non ho mai costruito uno script di build della squadra personalizzata senza utilizzare la procedura guidata Crea - e la procedura guidata Create si aspetta di fornire un file di soluzione, che non ho <. / p>

Il mio script di build sarebbe molto straight-forward:

  1. Scarica l'ultima versione dei file ActionScript
  2. Eseguire il file batch di compilazione ActionScript
  3. Copiare i file ActionScript nella cartella deploy
È stato utile?

Soluzione

Assolutamente. TFSBuild.proj è un file MSBuild che chiama la soluzione a costruire in TFS. È possibile modificare che per costruire quello che vuoi utilizzando MSBuild, che è la lingua che .vbproj ei file Csproj sono scritti in. C'è una ricchezza di compiti che MSBuild consente di utilizzare ...

Altri suggerimenti

No non è necessario un file di soluzione per ottenere una build fatto usando TFSBuild. Un file di progetto molto semplice potrebbe essere la seguente (per gentile concessione 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>

Si prega di indagare su questo pagina da Aarons blog. Gli obiettivi di default in un file TFSBuild.proj è in realtà definite in un file obiettivi "comuni" e importati nel projfile da questa istruzione:

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

Se l'importazione viene rimosso è necessario solo il bersaglio EndToEndIteration per ottenere TFSBuild correre ....

Tutti i migliori / Niels

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top