Ich habe ein node.js-Projekt, das von einem Rubin-Edelstein abhängt. Ist es irgendwie möglich, einen Installationsprozess zu erstellen, der die Edelsteinabhängigkeiten auf einfache Weise installiert? Im Idealfall, wenn ich
mache %Vor%Um die npm-Abhängigkeiten zu installieren, wäre es großartig, wenn die erforderlichen Ruby-Edelsteine ebenfalls installiert wären.
Gibt es eine Art Brücke zwischen den beiden? Wenn nicht, hat jemand das untersucht und eine empfohlene Best Practice gefunden oder in diesen Situationen gearbeitet?
Theoretisch bietet npm-scripts die Möglichkeit, Skripts während npm install
auszuführen. Sie könnten zum Beispiel diese Zeilen zu Ihrem package.json
hinzufügen:
Natürlich möchten Sie vielleicht ein komplexeres Skript hinzufügen, das den Fall behandelt, in dem Ruby und / oder Rubygems nicht installiert sind, die Gem-Installation fehlschlägt usw. usw. Das Installieren von Abhängigkeiten kann beliebig komplex werden, weshalb viele Paketentwickler (in einer bestimmten Sprache) oft einfach davon ausgehen, dass die erforderlichen Abhängigkeiten bereits auf dem Zielsystem laufen und laufen. Schließlich gibt die Dokumentation der npm-Skripte Folgendes an:
INSTALL SCRIPTS SIND EIN ANTIPATTERN
und
Die einzige gültige Verwendung von Installations- oder Vorinstallations-Skripts ist die Kompilierung, die in der Zielarchitektur durchgeführt werden muss.
Alles in allem schlage ich vor, dass Sie sich stattdessen darauf konzentrieren, Ihrer Readme-Anleitung die richtigen Installationsanweisungen hinzuzufügen.
Wenn Sie mehrere Edelsteine haben, die Sie benötigen, um ein Ruby-Skript in Ihrer node.js-Anwendung auszuführen, können Sie eine Gemdatei erstellen und dann dieses preinstall / postinstall-Skript zu Ihrer package.json hinzufügen.
%Vor%