Musimy zintegrować testera Karmy z TeamCity i do tego chciałbym dać inżynierom sys mały skrypt (PowerShell lub cokolwiek), który:
wybierz pożądany numer wersji z pliku konfiguracyjnego (chyba mogę go wstawić jako komentarz bezpośrednio w
karma.conf.js
)sprawdź, czy zdefiniowana wersja karma runnera jest zainstalowana w globalnym repozytorium npm
jeśli nie, lub zainstalowana wersja jest starsza niż pożądana: wybierz i zainstaluj odpowiednią wersję
Uruchom:
karma start .\Scripts-Tests\karma.conf.js --reporters teamcity --single-run
Tak więc moje prawdziwe pytanie brzmi: „jak można sprawdzić skrypt, jeśli zainstalowana jest żądana wersja pakietu?”. Czy należy to sprawdzić, czy bezpiecznie jest po prostu zadzwonić npm -g install
za każdym razem?
Nie chcę zawsze sprawdzać i instalować najnowszej dostępnej wersji, ponieważ inne wartości konfiguracji mogą być niezgodne
npm update
szczególnie jeślinpm update -g
... nie robi tego większość groszku! Zobacz: github.com/npm/npm/issues/6247 i gist.github.com/othiym23/4ac31155da23962afd0e