Chiamiamo Gulp dal nostro file csproj
come stiamo usando Visual Studio 2013 per questo progetto:Run npm installare solo quando necessario e/o parzialmente
<Target Name="AfterBuild">
<Exec Command="gulp" />
</Target>
Tuttavia, dal momento che stiamo ancora di crafting questo nuovo progetto, estendiamo spesso lo gulpfile.js
per includere nuovi pacchetti. Lo sviluppatore farà, ad es. npm install gulp-util --save-dev
e scrivi una nuova attività, e tutto va bene.
Lo sviluppatore controlla quindi i valori gulpfile.js
e packages.json
nel nostro VCS. Attualmente:
- Teamcity ha un passo di build aggiuntivo
npm install
; - Ogni sviluppatore deve eseguire manualmente
npm install
;
Dovendo ricordare qualcosa che deve essere fatto manualmente non è un ottimo posto in cui trovarsi. A un certo punto abbiamo avuto questo nella nostra csproj
di file all'interno del Task
...
<Exec command="npm install" />
... poco prima del gulp
exec, quindi gli sviluppatori non potevano "dimenticare" di fare questo passaggio manuale. Tuttavia, questo può richiedere uno o più secondi su ciascuna (ri) build, il che è fastidioso.
C'è un modo migliore per risolvere questo? Come gestisci gli aggiornamenti su in progetti in cui grandi team (ish) sviluppano utilizzando Visual Studio?
Che ne dite di chiamare 'npm install' su' AfterRebuild' invece di 'AfterBuild'? – KMoraz
L'avevo preso in considerazione, ma ciò crea un'esperienza di sviluppo oscura. Per esempio. una conseguenza è che dopo un nuovo checkout di questo progetto, un semplice 'Build' non * causa * l'installazione di npm e quindi fallisce. Ma ancora una soluzione da prendere in considerazione se nessuna vera soluzione si presenta ... – Jeroen