Iniziare a utilizzare TFS - gestione di librerie dipendenti interne - nuget locale?

4

Approccio

Sto cercando di iniziare a utilizzare TFS 2013. Questo è il mio ordine prioritario per l'implementazione.

  1. Inizia a utilizzarlo per i progetti Git Repo esistenti.
  2. Quindi le build automatiche funzionano dai check in (CI?)
  3. Inizia a utilizzare per gli elementi di lavoro e il backlog ecc., quando più comodo con esso.

È un buon approccio graduale, in modo che non stiamo cercando di costruire Roma in un giorno?

Librerie dipendenti

Dopo aver configurato un repository per la nostra prima soluzione, ho ottenuto il team e il controllo della versione git, ecc. La difficoltà è arrivata quando ho provato a creare una build, ma avevo problemi di libreria dipendenti.

La mia ricerca iniziale suggeriva che la creazione di una condivisione / server Nuget locale fosse un buon modo per affrontarlo. Così ho creato un repository separato in TFS per la libreria condivisa, non ha altre dipendenze, quindi una build di default ha funzionato bene.

Suppongo che l'intenzione sia quella di ottenere la definizione build per creare automaticamente un pacchetto nuget e rilasciarlo nella condivisione nuget appropriata. Quindi quel pacchetto di nuget è ora utilizzato per funzionalità nel primo progetto originale, piuttosto che un riferimento di progetto alla libreria condivisa?

Quindi, quando il primo progetto originale è archiviato e una build innescata, quella build può usare la condivisione nuget locale per la sua dipendenza (in qualche modo!)?

È questo il modo migliore per affrontarlo?

    
posta David C 14.04.2015 - 10:26
fonte

1 risposta

1

se si desidera attenersi solo a Team Foundation Server e Team Build, quindi NuGet è davvero la strada da percorrere. Gli ALM Rangers hanno scritto una guida che spiega come gestire questo scenario.

In effetti l'aggiunta di un piccolo script Powerhell o l'integrazione della generazione di nuget come parte della struttura del tuo progetto MsBuild per creare un pacchetto nuget e poi spingerlo su un server NuGet locale (o semplicemente copiarlo in una condivisione di file) ti consentirà di iniziare .

Puoi utilizzare Visual Studio Team Services, MyGet o ProGet o un'altra implementazione del server NuGet . Una condivisione file con i file nuget può fungere da server nuget. Team Foundation Server 2013 e 2015 non vengono spediti con quella funzionalità nella casella, purtroppo.

Come menzionato da Zonder, altri server di compilazione, come JetBrains TeamCity, includono un sistema di dipendenza incorporato tra le build, ma hanno un prezzo quando si utilizza TFS. Alcune funzionalità di Microsoft Test Management si basano sull'infrastruttura di Team Build. È possibile che TeamCity generi i record di database corretti in TFS, ma per quanto ne so non lo fa per impostazione predefinita.

    
risposta data 12.03.2016 - 17:06
fonte

Leggi altre domande sui tag