[gelöst] Manuell installierte Module auf Composer umstellen
am 04.07.2023 - 14:52 Uhr in
Hallo zusammen, ich habe eine Drupal-Seite in Version 9.4.x mit diversen Modulen, die bislang manuell ohne Composer gepflegt wurde. Das soll sich jetzt ändern.
Drupal-Core-Update klappte problemlos mit composer update "drupal/core-*" --with-all-dependencies
. Wie sollte man idealerweise mit externen Modulen vorgehen, ohne die zu deinstallieren? Es gibt Module, wie z. B. Flag oder Webform, die Benutzerdaten enthalten und nicht einfach deinstalliert werden können. Folgendes habe ich versucht: Ein Modul in der aktuellen Minor-Version z. B. über composer require 'drupal/admin_toolbar:^3.3.0'
installieren, wenn aktuell "Admin Toolbar in 3.3.0" installiert ist, damit es im /modules/contrib-Verzeichnis landet. Dann das alte Modulverzeichnis unter /modules gelöscht und versucht über update.php es zu registrieren und Cache neu aufzubauen. Das update.php-Skript merkte, dass es sich um neue Version handelt, fand aber die notwendigen Klassen nicht und konnte nicht vollständig ausgeführt werde. Wenn ich das Modul aus /modules/contrib direkt nach /modules verschiebe, funktioniert alles. drush pml
zeigt die neue Version an, die über Composer heruntergeladen wurde, unabhängig davon, wo das Modul liegt. Was mache ich falsch und was habt Ihr für Empfehlungen?
Vielen Dank.
- Anmelden oder Registrieren um Kommentare zu schreiben
Wie sieht Deine Installation
am 04.07.2023 - 18:17 Uhr
Wie sieht Deine Installation aus? Arbeitest Du bereits mit zwei Verzeichnisebenen, eine für Drupal (web) und eine für vendor und die beiden composer-Files (composer.json und composer.lock)?
Wenn ja dann auf der Kommandozeile (über ssh):
Jetzt sollte sich die Seite aufrufen lassen
Wenn nein dann auf der Kommandozeile (über ssh):
Jetzt sollte sich die Seite aufrufen lassen
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Hallo Werner, vielen Dank für
am 05.07.2023 - 07:04 Uhr
Hallo Werner, vielen Dank für die ausführliche Anleitung. Ist alles verständlich und nachvollziehbar - werde heute ausprobieren und berichten. Im Projekt habe ich derzeit keine zwei Verzeichnisebenen.
Aktuell habe ich die Version 9.4.9. Meine Idee ist, über
composer create-project drupal/recommended-project
exakt die gleiche Version zu installieren und dann übercomposer require
die Module in exakten Versionen. Anschließend die Verschiebungen und Drush-Befehle durchführen. Damit hätte ich den aktuellen Stand. Und dann Core und Module über Composer updaten. Spricht etwas dagegen so vorzugehen oder gibt es bessere Alternativen? Mit der Angabe der exakten Versionen möchte ich mögliche Datenbankupdates während der Umstellung vermeiden. Nach der Umstellung würde ich die exakten Versionen aus composer.json entfernen und Updates durchführen.Kann man so machen. Ich hatte
am 05.07.2023 - 14:59 Uhr
Kann man so machen.
Ich hatte Dir noch eine mail geschrieben, wie sieht es damit aus?
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Ich wollte antworten, finden
am 05.07.2023 - 15:11 Uhr
Ich wollte antworten, finden aber auf der Seite den Bereich mit den Mails nicht. Danke für Dein Angebot, vielleicht ein anderes Mal. Habe heute zudem Spätschicht :-). Ich denke, dass es direkt klappt. Bin gerade am umsetzen.
Die Umstellung hat wunderbar
am 07.07.2023 - 19:11 Uhr
Die Umstellung hat wunderbar geklappt, vielen herzlichen Dank :-).