2013-08-02 12 views
7

Ich evaluiere eine Änderung im Entwicklungsprozess in Richtung Vagrant, aber ich entwickle häufig voneinander abhängige, noch nicht freigegebene Knotenmodule, die miteinander verdrahtet sind npm link. Da Vagrant nicht alle Quelldateien auf dem Gastcomputer freigegeben hat, reichen die Symlinks npm link nicht mehr aus, um diese Module synchron miteinander zu entwickeln. Zum einen scheint es keine Möglichkeit zu geben npm linkharte Links zu schaffen. Für zwei, nicht maßstabs die Symlink Destinationen auf der ganzen Linie a la folgendes teilenVerwenden von Vagrant mit npm-verknüpften Abhängigkeiten

config.vm.synced_folder "/usr/local/share/npm/lib/node_modules", "/usr/lib/node_modules" 

nun die Frage. Ist eines der oben genannten inkorrekt (z. B. npm-Unterstützung für harte Verbindungen existiert, und ich habe es verpasst)? Welche Prozesse haben Menschen genutzt, um miteinander zusammenhängende, private Node-Module zu entwickeln, die über Vagrant getestet werden?

EDIT: Letztendlich hoffe ich auf eine Lösung, die auf beiden Mac & Windows funktioniert. Außerdem möchte ich nicht näher darauf eingehen, wie hart ein Knotenmodul funktionieren würde. Ich versuche nur, Vagrant zu nutzen, um diesen nicht ungewöhnlichen Workflow zu verbessern.

+0

Warum sagen Sie, dass die Verwendung eines synchronisierten Ordners nicht skaliert wird? Weil der Host-Knoten-Modul-Pfad nicht relativ ist? –

+0

Jeff - Es wird nicht skaliert, da für jeden 'synchronisierten_Ordner' eine neue Voreinstellung erforderlich ist. – Schoonology

Antwort

1

Idee: Verwenden Sie anstelle der Verwendung der VM-Synchronisierungsfunktion einen Freigabedienst in der VM, um die Dateien vom Hostbetriebssystem aus zugänglich zu machen.

Wenn Ihre VM beispielsweise Linux ausführt und das Host-Betriebssystem Windows ist, können Sie Samba starten und es für die Freigabe der entsprechenden Verzeichnisse konfigurieren. Dann muss das Host-Betriebssystem die Samba-Freigabe zuordnen.

Wenn das Host-Betriebssystem ein Mac ist, können Sie beispielsweise ein Verzeichnis wie macfuse über SSH auf der VM bereitstellen.

Viel Glück!

Verwandte Themen