Mit der MOMENTAUFNAHME in der privaten NPM wie in Maven

Ich habe ein sehr einfaches setup:

Lib A                                             Lib B
publish 1.0.0-SNAPSHOT  ->  Private Registry  ->  npm install

Beachten Sie, dass A und B auf unterschiedlichen Rechnern (denke jenkins-cluster!).

Während zwei releases der Versionen am Ende mit "-SNAPSHOT" und sind aktualisiert auf jedem build (). Natürlich hing Bibliotheken (B,...) sollte immer die neueste version aus der registry.
Problem ist, dass NPM nicht refetch die gleiche version.

Lib A                                           Lib B
small change, rebuild:
publish 1.0.0-SNAPSHOT  ->  Private Registry  !!  npm install -f
                                                  npm cache clean
                                              !!  npm install -f
                                                  rm -rf node_modules
                                              ->  npm install

Idee: Deaktivieren Sie den cache für NPM Global

Das wäre okay, weil wir eine lokale npm-proxy:
"~/.npmrc":

force=true
cache-min=0
cache-max=0

Aber dies bedeutet nicht Arbeit! Nur das entfernen der node_modules-Verzeichnis funktioniert. Dies ist keine brauchbare Lösung, weil die Entwickler, sollten Sie nicht verwenden müssen "rm -rf node_modules && npm install".

Mit maven dieses setup funktioniert, weil wir die ""- U" option. Diese Kräfte maven, um zu überprüfen, ob ein aktualisierter SNAPSHOT-version ist verfügbar. NPM versteht nicht das Konzept der SNAPSHOT aber wenigstens Fragen sollte die Registrierung jedes mal.

npm version 2.12.0

Private Registrierung: Sonatype Nexus™ 2.10.0-02

  • Hast du eine Lösung finden? Ich bin gespannt, das Konzept der snapshots mit npm auf Sontatype Nexus.
  • Grundsätzlich ist es nicht vorgesehen, dass die snapshot-version ist, wie es ist, wenn Sie mit Maven. Wenn Sie brauchen, um die Arbeit mit den "neuesten" version zum Beispiel bei starker Entwicklung 😉 dann können Sie mit npm link finden Sie link.
InformationsquelleAutor Tristan | 2015-07-01
Schreibe einen Kommentar