Die Bereitstellung schlägt fehl mit „Fehler beim Erstellen des Projekts: Der Build-Hook ist mit Status-Code 1 fehlgeschlagen“
In diesem Artikel werden die Ursachen und Lösungen für das Problem mit der Adobe Commerce-Cloud-Infrastruktur behandelt, bei dem die Build-Phase des Bereitstellungsprozesses fehlschlägt und die Fehlermeldung wie folgt zusammengefasst wird: Fehler beim Erstellen des Projekts: Der Build-Hook ist mit Status-Code 1 fehlgeschlagen.
Beschreibung description
Umgebung
Adobe Commerce auf Cloud-Infrastruktur, alle Versionen
Problem/Symptome
- Die Bereitstellung schlägt während der Build-Phase fehl.
- Fehlerprotokoll endet mit: Fehler beim Erstellen des Projekts: Der Build-Hook ist mit Status-Code 1 fehlgeschlagen. Build abgebrochen.
- Die Bereitstellung wird manuell oder durch eine Zusammenführung, Push-Benachrichtigung oder Synchronisierung ausgelöst.
Schritte zur Reproduktion:
Führen Sie den Trigger der Bereitstellung manuell aus oder indem Sie eine Zusammenführung, einen Push oder eine Synchronisierung Ihrer Umgebung durchführen.
Erwartetes Ergebnis:
Bereitstellung wurde erfolgreich abgeschlossen.
Tatsächliches Ergebnis:
- Die Erstellungsphase schlägt fehl und der gesamte Bereitstellungsprozess bleibt stecken.
- Im Bereitstellungsfehlerprotokoll endet die Fehlermeldung mit: Fehler beim Erstellen des Projekts: Der Build-Hook ist mit Status-Code 1 fehlgeschlagen. Build abgebrochen.
Ursache
Der Fehler ist eine allgemeine Fehlermeldung. Die eigentliche Ursache wird weiter oben im Protokoll angezeigt. Häufige Ursachen sind:
- Kein verfügbarer Speicherplatz
- Falsche Konfiguration der ECE-Tools
- Der Patch, den Sie anwenden möchten, ist nicht mit Ihrer Adobe Commerce-Version kompatibel oder steht in Konflikt mit anderen angewendeten Patches oder Ihren Anpassungen.
- Probleme mit benutzerdefinierten Code-Modulen verhindern eine erfolgreiche Erstellung.
Auflösung resolution
- Stellen Sie sicher, dass ausreichend Speicherplatz vorhanden ist. Informationen zum Überprüfen des verfügbaren Speicherplatzes finden Sie im Artikel Überprüfen des Festplattenspeichers in der Cloud-Umgebung mithilfe von CLI . Sie können die Protokollordner bereinigen und/oder den Festplattenspeicher erhöhen.
- Stellen Sie sicher, dass ECE-Tools korrekt konfiguriert sind.
- Überprüfen Sie, ob das Problem durch das Patch verursacht wird. Lösen Sie den Konflikt oder wenden Sie sich an den Adobe Commerce-Support. Einzelheiten siehe unten.
- Überprüfen Sie, ob das Problem durch die benutzerdefinierte Erweiterung verursacht wird. Lösen Sie den Konflikt oder wenden Sie sich an die Entwickler der Erweiterung, um die Lösung zu erhalten.
Die folgenden Absätze enthalten einige weitere Details.
Protokolle bereinigen und/oder Speicherplatz vergrößern
Verzeichnisse, die für die Bereinigung berücksichtigt werden sollen:
var/log
var/report
var/debug/
var
Weitere Informationen zum Erhöhen des Festplattenspeichers in der Starterplanarchitektur für Adobe Commerce in Cloud-Infrastrukturen finden Sie unter Erhöhen des Festplattenspeichers für die Integrationsumgebung in Cloud. Die gleichen Anweisungen können für die Erhöhung des Speicherplatzes von Adobe Commerce in der Cloud Infrastructure Pro Plan Architecture Integration Umgebung verwendet werden. Für Pro Produktion/Staging müssen Sie ein Ticket beim Adobe Commerce Support einreichen und mehr Speicherplatz anfordern. Sie wird jedoch von Platform überwacht. In der Regel müssen Sie sich jedoch nicht mit dieser Aufgabe in der Staging-/Produktionsumgebung der Pro-Architektur befassen, da Adobe Commerce diese Parameter für Sie überwacht und Sie benachrichtigt und/oder vertragsgemäß Maßnahmen ergreift.
Stellen Sie sicher, dass ECE-Tools korrekt konfiguriert sind
-
Stellen Sie sicher, dass Build-Hooks ordnungsgemäß in der
magento.app.yaml
-Datei definiert sind. Wenn Sie Adobe Commerce 2.2.x verwenden, sollten Builderhooks wie folgt definiert werden:code language-none # We run build hooks before your application has been packaged. build: | php ./vendor/bin/ece-tools build # We run deploy hook after your application has been deployed and started. deploy: | php ./vendor/bin/ece-tools deploy
Verwenden Sie den Upgrade auf ECE-Tools-Artikel als Referenz.
-
Stellen Sie sicher, dass das Paket „ECE-tools“ in der Datei „composer.lock“ vorhanden ist, indem Sie den folgenden Befehl ausführen:
code language-none grep '"name": "magento/ece-tools"' composer.lock
Wenn sie angegeben werden, würde die Antwort wie im folgenden Beispiel aussehen:
code language-none "name": "magento/ece-tools", "version": "2002.0.20",
Siehe den Artikel Upgrade auf ECE-) als Referenz.
Verursacht der Patch das Problem?
Wenn es der angewendete Patch ist, der verhindert, dass die Umgebung erfolgreich erstellt wird, wird im Bereitstellungsprotokoll etwas Ähnliches angezeigt:
%patch_name%.composer.patch
[ 2019-02-19 18:12:59] CRITICAL:
....
[ 2019-02-19 18:12:59] CRITICAL: Command git apply --check --reverse /app/m2-hotfixes/%patch_name%.composer.patch returned code 1
...
W:
W: Command git apply --check --reverse /app/m2-hotfixes/%patch_name%.composer.patch returned code 1
W:
W:
W: build
...
E: Error building project: The build hook failed with status code 1. Aborted build.
Diese Fehlermeldungen bedeuten, dass der Patch, den Sie anwenden möchten, entweder für eine andere Adobe Commerce-Version erstellt wurde oder mit Ihren Anpassungen oder zuvor angewendeten Patches in Konflikt steht. Versuchen Sie, den Konflikt zu lösen, oder wenden Sie sich an den Adobe Commerce-Support.
Verursacht die Erweiterung das Problem?
Wenn es die benutzerdefinierte Erweiterung ist, die den erfolgreichen Build der Umgebung verhindert, werden der/die im Bereitstellungsprotokoll erwähnte(n) benutzerdefinierte(n) Modulname(n) sowie der durch dieses Modul verursachte spezifische Konflikt angezeigt. Lösen Sie den Konflikt oder wenden Sie sich an die Entwickler der Erweiterung, um die Lösung zu erhalten.
Sicherstellen, dass Änderungen angewendet werden
Übertragen und übertragen Sie Ihre Änderungen. Dadurch wird die Bereitstellung automatisch Trigger.