Verwenden Sie drush make, um nur Module zu laden?

8

Ich habe eine Entwicklungsseite mit vielen Modulen. Ich habe eine andere Entwicklungssite auf einem anderen Server, die ich mit denselben Modulen füllen möchte. Ich kann sie komprimieren und die Datei verschieben oder rsync verwenden, aber ich wollte sehen, ob drush-make es schneller machen würde.

Ich kann nur Module ohne Kern erstellen, indem ich "drush make --no-core makefile.make" im Modulverzeichnis verwende, aber dadurch wird die Verzeichnishierarchie sites / all / modules erstellt.

Wie können Sie drush make verwenden, um nur die Module im Modulverzeichnis ohne diese Struktur zu erstellen?

Jeff
quelle

Antworten:

8

Wenn Sie ausführen drush make --contrib-destination=sites/mysite, werden Module in sites / mysite / modules platziert. rsync wird schneller sein als Drush make. ( Bearbeiten: Dieser Geschwindigkeitsvergleich setzt ungefähr gleiche Übertragungsgeschwindigkeiten zwischen den Endpunkten voraus. Ich kann sehen, wie make möglicherweise schneller ist, wenn Sie eine schnelle Verbindung vom Ziel haben, aber eine langsame Verbindung zwischen der Quelle und dem Ziel.)

Wenn Sie ein Makefile für eine vorhandene Site erstellen möchten, können Sie drush generate-makefileein gesamtes Installationsprofil mit drush generate-profile verwenden oder erstellen .

greg_1_anderson
quelle
Das hat nicht funktioniert. Als Test habe ich ein Verzeichnis, test_drush, im Site-Stammverzeichnis erstellt und das Makefile darin abgelegt. Der Befehl 'drush make --no-core --contrib-destination = all / modules makefile.make' erstellt weiterhin diese Hierarchie in diesem Verzeichnis. Wenn die Hierarchie test_drush / all / modules bereits vorhanden ist, endet sie so, egal wie ich es versuche: test_drush / all / modules / modules / module_xyz, auch wenn ich dies starten muss: test_drush / all und kein Modul-Sub -Verzeichnis. Ich denke, rsync wäre von meinem PC aus sehr langsam, da meine Upload-Geschwindigkeit schlecht ist. Rsync ist schnell wie eine Dateisynchronisierung, wenn die Dateien bereits vorhanden sind.
Jeff
1
Ich bin mir nicht sicher, warum Sie versuchen, Ihre Module auf test_drush / all / modules zu setzen. Wenn Sie sites / mysite angeben, lautet das Ziel sites / all / modules. Es wird daher erwartet, dass --contrib-destination = all / modules Ihnen all / modules / modules liefert. Haben Sie versucht --contrib-destination = all?
Greg_1_anderson
Ich habe nur die Ergebnisse von drush make getestet, weil ich die Dateistruktur nicht vermasseln wollte, wenn sie fehlschlug. Ich stolperte und benutzte rsync. Vielleicht würde das, was Sie vorgeschlagen haben, funktionieren - ich werde es später noch einmal versuchen. Vielen Dank!
Jeff
Es ist eine gute Idee, drush make auf einer leeren Site auszuführen, insbesondere beim Testen. dann können Sie das Ganze nach dem Test einfach wegblasen. Es wäre auch ein besserer Test, wenn Sie die Module an ihrem endgültigen Bestimmungsort installieren würden (z. B. Standorte / alle / Module).
Greg_1_anderson