Condividi tramite


Personalizzare il modello del processo di compilazione

dd647547(v=vs.120).md Se è necessario che il processo di compilazione esegua più operazioni rispetto al modello predefinito, è possibile personalizzare il modello per seguire le proprie istruzioni di Windows Workflow Foundation (WWF). Le istruzioni possono eseguire codice .NET Framework implementato in oggetti CodeActivity. È possibile eseguire attività compilate in Team Foundation Build (TFBuild), offerte da terze parti o compilate dall'utente (se necessario).

Suggerimento

Se le funzionalità di processo di compilazione personalizzato possono essere codificate in un file batch di Windows o in uno script PowerShell, è possibile caricare lo script ed eseguirlo come parte del processo di compilazione.Questo approccio può essere più veloce e più semplice rispetto a creare un processo di compilazione personalizzato.Vedere Eseguire uno script nel processo di compilazione.

  • Avviare una soluzione di processo di compilazione e creare un modello.

  • Usare un modello personalizzato nella definizione di compilazione

  • Ottenere risposte alle domande comuni

Avviare una soluzione di processo di compilazione e creare un modello.

Prima di implementare le istruzioni, estrarre una copia del modello predefinito da Team Foundation Server e aggiungerla a un progetto di codice di Visual Basic.

Importante

Si lavora a un Icona Gitprogetto team Git?Si prevede di caricare file binari di attività del processo di compilazione?In caso affermativo, l'archiviazione dei file binari (particolarmente nel caso di numerose revisioni a file di grandi dimensioni) può aumentare notevolmente le dimensioni del repository Git.Si consiglia di archiviare i file binari del processo di compilazione personalizzato in un repository separato dal codice in cui si compila l'applicazione.È possibile creare un progetto team diverso per i processi di compilazione oppure è possibile creare un repository aggiuntivo nel progetto team esistente.

  1. Connettersi (tastiera: CTRL+0, C) al progetto team (e, se necessario, al Icona Git repository Git) in cui si intende archiviare l'origine del processo di compilazione.

  2. Creare un nuovo progetto di codice (tastiera: CTRL+MAIUSC+N).

    In particolare, creare una nuova soluzione, ad esempio BuildProcessSource, contenente un nuovo progetto di codice della libreria di attività di flusso di lavoro di Visual Basic, ad esempio Modelli. Aggiungere la soluzione a una nuova directory nel controllo della versione in un percorso appropriato.

    Icona TFVC Esempio: C:\Utenti\NomeUtente\Source\Workspaces\FabrikamTFVC\BuildProcessTemplates\

    Icona Git Esempio Git: C:\Utenti\NomeUtente\Source\Repos\BuildProcesses\

    Creare un progetto di codice per includere il nuovo modello

    Perché è necessario un progetto di codice per modificare il modello?

  3. Nella pagina delle compilazioni (tastiera: CTRL+0, B) creare o modificare una definizione di compilazione.

    Nuova definizione di compilazione o Modifica definizione di compilazione

  4. Scaricare una copia del modello predefinito. Salvare il modello nella stessa cartella che contiene il progetto di codice creato in precedenza in questa procedura.

    Icona TFVC Esempio TFVC: C:\Utenti\NomeUtente\Source\Workspaces\FabrikamTFVC\BuildProcessTemplates\BuildProcessSource\Templates

    Icona Git Esempio Git: C:\Utenti\NomeUtente\Source\Repos\BuildProcesses\BuildProcessSource\Templates

    Collegamento di download nella scheda Processo della definizione di compilazione

    Finestra di dialogo Salva con nome

  5. In Esplora soluzioni (tastiera: CTRL+ALT+L) aggiungere il modello al progetto Modelli.

    Aggiungere al progetto il file del modello di processo di compilazione

    Finestra di dialogo Aggiungi elemento esistente

    Non è necessario alcun file Activity1.xaml, pertanto è possibile eliminarlo se si desidera.

  6. Impostare la proprietà Operazione di compilazione del modello su Contenuto.

    Impostare l'azione di compilazione su Contenuto

  7. Aggiungere i riferimenti seguenti al progetto di codice Modelli:

    Come è possibile aggiungere tali riferimenti al progetto di codice?

    Salvare il progetto di codice.

  8. Implementare il messaggio "Hello World!" in modo da assicurarsi che il modello funzioni dopo averlo archiviato ed eseguito. A tale scopo, trascinare un'attività WriteBuildMessage nel flusso di lavoro e impostarne la proprietà BuildMessageImportance su Microsoft.TeamFoundation.Build.Client.BuildMessageImportance.High.

    Aggiunta attività WriteBuildMessage al modello

  9. Salvare il modello e caricare la nuova soluzione. Archiviare le modifiche in sospeso in Icona TFVC TFVC (tastiera CTRL+0, P) oppure eseguirne il commit (tastiera CTRL+0, G) e il push in Icona Git Git.

    Caricamento delle modifiche mediante TFVC o Git

Usare un modello personalizzato nella definizione di compilazione

Dopo aver caricato un modello di processo di compilazione personalizzato nel progetto team come descritto in precedenza, è possibile usare il modello dalle definizioni di compilazione.

  1. Nella pagina delle compilazioni (tastiera: CTRL+0, B) creare o modificare una definizione di compilazione.

  2. Nella scheda di definizione di compilazione di Processo scegliere Mostra dettagli Mostra dettagli, quindi scegliere Nuovo.

    Definizione di compilazione, scheda Processo, pulsante Nuovo

  3. Dopo aver scelto Nuovo, effettuare le operazioni seguenti.

    • TFVC: digitare o cercare il percorso del modello in Team Foundation Server.

    • Git: digitare o cercare il percorso del modello nel computer di sviluppo.

  4. Dopo aver specificato il percorso del modello, è possibile selezionarlo nell'elenco.

    CustomTemplate selezionato nella definizione di compilazione

  5. Se si crea una nuova definizione di compilazione, selezionare la soluzione in corso di compilazione e specificare la posizione per la definizione di compilazione e tutte le altre opzioni necessarie. Vedere Creare o modificare una definizione di compilazione. Al termine, salvare la definizione di compilazione.

  6. Nella pagina delle compilazioni (tastiera: CTRL+0, B) accodare la compilazione.

    Accodamento di una compilazione dalla pagina delle compilazioni

  7. Dopo il completamento della compilazione, visualizzare i risultati per verificare che il flusso di lavoro personalizzato funzioni nel modo previsto.

    Messaggio "Hello World!" visualizzato nel log di compilazione

Domande e risposte

D: Sono stato bloccato dal sistema perché non dispongo dell'autorizzazione.Come posso ottenerla?

R: Riferimento alle autorizzazioni per Team Foundation Server

D: Perché è necessario un progetto di codice per modificare il modello?

R: È necessario modificare i modelli in un progetto di codice per i motivi indicati di seguito.

  • Possono verificarsi problemi quando si tenta di modificare un modello all'esterno del contesto di un progetto di codice.

  • Possono verificarsi problemi a meno che non si sviluppi l'attività del processo di compilazione nella stessa soluzione dei modelli di processo di compilazione. Se si opera in questo modo, quando è necessario usare una delle attività nel modello di processo, l'attività è disponibile nella casella degli strumenti di Progettazione flusso di lavoro. È necessario tuttavia mantenere il codice sorgente per le attività in un progetto di codice diverso da quello che contiene i modelli di processo di compilazione. Vedere Utilizzare e sviluppare attività del processo di compilazione personalizzate.

D: Come è possibile aggiungere i riferimenti necessari per usare il flusso di lavoro TFBuild?

R: Usare Gestione riferimenti.

Visualizzare i riferimenti del progetto di codice e aprire Gestione riferimenti.

Riferimenti al progetto di codice modello personalizzati

Finestra di dialogo Gestione riferimenti

Spostarsi in C:\Programmi (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ReferenceAssemblies\v2.0, quindi selezionare e aggiungere:

Finestra di dialogo Selezionare i file a cui fare riferimento

Finestra di dialogo Gestione riferimenti

D: È possibile condividere un modello nei progetti team?

R: Sì. È possibile registrare un modello in più progetti team. Questa funzionalità consente di condividere un processo di compilazione tra qualsiasi progetto team nella raccolta di progetti team che contiene il modello.

D: Se si modifica il modello, quali saranno le conseguenze sulle definizioni di compilazione in cui viene usato?

R: Se è necessario modificare un modello, è opportuno pianificare la revisione di tutte le definizioni di compilazione basate sul modello e correggerle dopo aver completato le modifiche apportate al modello. In caso contrario, le definizioni di compilazione potrebbero avere esito negativo o funzionare in modo imprevisto.

D: Cosa accade se si elimina un modello di processo di compilazione?

R: se si decide di eliminare un modello di processo di compilazione, assicurarsi innanzitutto di individuare ed eliminare tutte le definizioni di compilazione basate sul modello. Quando si elimina il modello, le eventuali definizioni di compilazione rimanenti basate sul modello non funzioneranno più.

D: Cosa sta provocando errori nel processo di compilazione personalizzato?

R: Alcune cause comuni di errore.

  • TF215097: si può verificare se all'attività personalizzata manca un attributo obbligatorio oppure se si tenta di modificare il modello nello stesso progetto di codice contenente le attività personalizzate.

  • Errore XC1014 di MSBuild: può essere visualizzato se l'operazione di compilazione del modello non viene impostata su Contenuto.

Se si verifica uno degli errori riportati in precedenza, assicurarsi di non aver saltato uno dei passaggi nelle procedure precedenti.

È inoltre possibile trovare utile questo argomento: Diagnosticare i problemi nella build.

D: Cos'è Windows Workflow Foundation?Come si usa?

R: Windows Workflow Foundation.

D: Come si ottengono i dati delle variabili di ambiente?

R: usare dati di ambiente da un processo di compilazione personalizzato

D: Dove è possibile trovare informazioni sulle attività incorporate?

R: attività di Team Foundation Build

D: Quali operazione devo eseguire se le attività incorporate non soddisfano le mie esigenze?

R: sviluppare la propria attività di processo di compilazione personalizzato.

D: Dove è possibile ottenere modelli, attività di flusso di lavoro e script?

R: Estensioni di compilazione TFS della community

D: Dove è possibile reperire altre informazioni sullo sviluppo di processi di compilazione personalizzati?

R: Risposta curata: personalizzare il processo di Team Foundation Build