Commerce-Version aktualisieren
Sie können die Adobe Commerce-Code-Basis auf eine neuere Version aktualisieren. Bevor Sie Ihr Projekt aktualisieren, lesen Sie Systemanforderungen im Installationshandbuch, um die neuesten Anforderungen an die Softwareversion zu ermitteln.
Abhängig von Ihrer Projektkonfiguration können Ihre Upgrade-Aufgaben Folgendes umfassen:
- Aktualisieren Sie die
.magento/services.yaml
mit neuen Versionen für MariaDB (MySQL), OpenSearch, RabbitMQ und Redis, um die Kompatibilität mit neuen Adobe Commerce-Versionen zu gewährleisten. - Aktualisieren Sie die
.magento.app.yaml
Datei mit neuen Einstellungen für Erweiterungspunkte und Umgebungsvariablen. - Aktualisieren Sie Erweiterungen von Drittanbietern auf die neueste unterstützte Version.
-
Bei Pro-Projekten müssen Sie ein Adobe Commerce-Support-Ticket einreichen um Services nur in
Staging
undProduction
zu installieren oder zu aktualisieren. -
Geben Sie an, welche Service-Änderungen erforderlich sind, schließen Sie Ihre aktualisierten
.magento.app.yaml
- undservices.yaml
-Dateien ein und geben Sie die PHP-Version im Ticket an. Informationen zu Self-Service-Änderungen an PHP-Versionen, Erweiterungen oder Umgebungseinstellungen finden Sie unter PHP-Einstellungen unter Anwendungskonfiguration. -
Bei Änderungen an einer Live-Produktionsumgebung nur Pro ist eine Vorankündigung von mindestens 48 Stunden erforderlich. Dadurch hat das Cloud-Infrastruktur-Team genügend Zeit, Ressourcen zu mobilisieren und ein sicheres Upgrade durchzuführen. Die Kündigungsfrist beginnt, wenn das Infrastruktur-Team die Anfrage bestätigt und das Upgrade plant, mit Ausnahme der Wochenenden. Damit beispielsweise Service-Upgrades an einem Montag abgeschlossen werden, muss bis Mittwoch eine Bestätigung des geplanten Upgrades empfangen werden. In Spitzenzeiten kann die Verarbeitung Ihrer Anfrage länger dauern.
Konfigurationsdateien
Vor dem Upgrade der Anwendung müssen Sie Ihre Projektkonfigurationsdateien aktualisieren, um Änderungen an den Standardkonfigurationseinstellungen für Adobe Commerce in der Cloud-Infrastruktur oder der Anwendung zu berücksichtigen. Die neuesten Standardeinstellungen finden Sie im Magento-Cloud-GitHub-Repository.
composer.json
Überprüfen Sie vor einem Upgrade immer, ob die Abhängigkeiten in der composer.json
mit der Adobe Commerce-Version kompatibel sind.
So aktualisieren Sie die composer.json
für Adobe Commerce Version 2.4.4 und höher**:
-
Fügen Sie dem
allow-plugins
Abschnitt die folgendenconfig
hinzu:code language-json "config": { "allow-plugins": { "dealerdirect/phpcodesniffer-composer-installer": true, "laminas/laminas-dependency-plugin": true, "magento/*": true } },
-
Fügen Sie dem Abschnitt
require
das folgende Plug-in hinzu:code language-json "require": { "magento/composer-root-update-plugin": "^2.0.3" },
-
Fügen Sie dem Abschnitt
extra:component_paths
die folgende Komponente hinzu:code language-json "extra": { "component_paths": { "tinymce/tinymce": "lib/web/tiny_mce_5" }, },
-
Speichern Sie die Datei. Übernehmen oder übertragen Sie noch keine Änderungen an Ihre Verzweigung.
-
Fahren Sie mit dem Upgrade-Prozess fort.
Projekt-Backup
Es wird empfohlen, vor einem Upgrade eine Sicherungskopie des Projekts zu erstellen. Führen Sie die folgenden Schritte aus, um Ihre Integrations-, Staging- und Produktionsumgebungen zu sichern.
So sichern Sie die Datenbank und den Code Ihrer Integrationsumgebung:
-
Erstellen Sie eine lokale Sicherung der Remote-Datenbank.
code language-bash magento-cloud db:dump
note note NOTE Der Befehl magento-cloud db:dump
führt den Befehl mysqldump mit dem Flag--single-transaction
aus, mit dem Sie Ihre Datenbank sichern können, ohne die Tabellen zu sperren. -
Sichern Sie Code und Medien.
code language-bash php bin/magento setup:backup --code [--media]
Optional können Sie
[--media]
auslassen, wenn sich bereits eine große Anzahl von statischen Dateien in der Versionsverwaltung befinden.
So sichern Sie die Datenbank Ihrer Staging- oder Produktionsumgebung vor der Bereitstellung:
-
Verwenden Sie SSH, um sich bei der Remote-Umgebung anzumelden.
-
Erstellen Sie einen Datenbank-Dump. Um einen Zielordner für den DB-Dump auszuwählen, verwenden Sie die Option
--dump-directory
.code language-bash vendor/bin/ece-tools db-dump
Der Dump-Vorgang erstellt eine
dump-<timestamp>.sql.gz
Archivdatei in Ihrem Remote-Projektverzeichnis. Siehe Datenbank sichern.
Anwendungs-Upgrade
Lesen Sie die Service-Versionen, um die neuesten Anforderungen an die Softwareversion zu erfüllen, bevor Sie Ihr Programm aktualisieren.
So aktualisieren Sie die Anwendungsversion:
-
Wechseln Sie auf Ihrer lokalen Workstation in Ihr Projektverzeichnis.
-
Legen Sie die Versionsbeschränkung für die Ziel-Upgrade-Version fest. Dieser Schritt ist nur erforderlich, wenn sich die Zielversion außerhalb der bestehenden Einschränkung befindet.
code language-bash composer require-commerce "magento/magento-cloud-metapackage":">=CURRENT_VERSION <NEXT_VERSION" --no-update
note note NOTE Sie müssen die Versionsbeschränkungssyntax verwenden, um das ece-tools
Paket erfolgreich zu aktualisieren. Die Versionsbeschränkung finden Sie in dercomposer.json
-Datei für die Version der Anwendungsvorlage die Sie für das Upgrade verwenden. -
Aktualisieren Sie Ihre
composer.json
mit der Commerce-Kernaktualisierungsversion.code language-bash composer require-commerce magento/product-enterprise-edition 2.4.8 --no-update
-
Wenn Sie B2B verwenden, aktualisieren Sie Ihre
composer.json
mit der unterstützten Version für Commerce.code language-bash composer require-commerce magento/extension-b2b 1.5.2 --no-update
-
Projektabhängigkeiten aktualisieren.
code language-bash composer update
-
Überprüfen Sie die aktuell angewendeten Patches:
-
Wenn im
m2-hotfixes
-Verzeichnis Patches installiert sind, Sie ein Adobe Commerce-Support-Ticket, und prüfen Sie gemeinsam mit dem Adobe Commerce-Support, welche Patches weiterhin auf die neue Version angewendet werden können. Entfernen Sie die nicht zutreffenden Patches aus demm2-hotfixes
. -
Wenn [Quality Patches] in der
.magento.env.yaml
-Datei angewendet wurden, überprüfen Sie, ob diese weiterhin auf die neue Version angewendet werden können. Entfernen Sie die nicht zutreffenden Patches aus demQUALITY_PATCHES
Abschnitt der.magento.env.yaml
.
Methode 1: Überprüfen Sie die entsprechenden Versionen in den Versionshinweisen zu Qualitäts-Patches
Methode 2: Anzeigen verfügbarer Patches und Status
Methode 3: Suchen nach Patches
-
-
Code-Änderungen hinzufügen, übertragen und per Push übertragen.
code language-bash git add -A
code language-bash git commit -m "Upgrade"
code language-bash git push origin <branch-name>
git add -A
ist erforderlich, um alle geänderten Dateien zur Versionsverwaltung hinzuzufügen, da Composer Basispakete marshallt. Sowohlcomposer install
als auchcomposer update
marshallen Dateien aus dem Basispaket (magento/magento2-base
undmagento/magento2-ee-base
) in den Paketstamm.Die Dateien, die Composer marshallt, gehören zur neuen Version von Adobe Commerce, um die veraltete Version derselben Dateien zu überschreiben. Derzeit ist das Marshalling in Adobe Commerce deaktiviert, sodass Sie die marshallten Dateien zur Quellcodeverwaltung hinzufügen müssen.
-
Warten Sie, bis die Bereitstellung abgeschlossen ist.
-
Überprüfen Sie das Upgrade in Ihrer Integrations-, Staging- oder Produktionsumgebung, indem Sie sich mit SSH anmelden und die Version überprüfen.
code language-bash php bin/magento --version
Erweiterungen aktualisieren
Überprüfen Sie Ihre Erweiterungs- und Modulseiten von Drittanbietern auf Marketplace oder anderen Unternehmens-Sites und überprüfen Sie, ob Adobe Commerce und Adobe Commerce in der Cloud-Infrastruktur unterstützt werden. Wenn Sie Erweiterungen und Module von Drittanbietern aktualisieren müssen, empfiehlt Adobe, eine neue Integrationsverzweigung zu verwenden, bei der die Erweiterungen deaktiviert sind.
So überprüfen und aktualisieren Sie Ihre Erweiterungen:
-
Erstellen Sie eine Verzweigung auf Ihrer lokalen Workstation.
-
Deaktivieren Sie Ihre Erweiterungen nach Bedarf.
-
Laden Sie, sofern verfügbar, Erweiterungs-Upgrades herunter.
-
Installieren Sie das Upgrade, wie in der Dokumentation des Drittanbieters beschrieben.
-
Aktivieren und Testen der Erweiterung.
-
Fügen Sie die Code-Änderungen hinzu, übertragen Sie sie und übertragen Sie sie auf die Fernbedienung.
-
Push-Benachrichtigung und Testen in der Integrationsumgebung.
-
Pushen Sie in die Staging-Umgebung, um sie in einer Vorproduktionsumgebung zu testen.
Adobe empfiehlt dringend, die Produktionsumgebung () aktualisieren, einschließlich der aktualisierten Erweiterungen in Ihrem Site-Launch-Prozess.
Fehlerbehebung bei Upgrades
Wenn das Upgrade fehlgeschlagen ist, erhalten Sie eine Fehlermeldung im Browser, die Sie darauf hinweist, dass Sie nicht auf Ihre Storefront oder das Admin-Panel zugreifen können:
There has been an error processing your request
Exception printing is disabled by default for security reasons.
Error log record number: <error-number>
So beheben Sie den Fehler:
-
Wechseln Sie auf Ihrer lokalen Workstation in Ihr Projektverzeichnis.
-
Verwenden Sie SSH, um sich bei der Remote-Umgebung anzumelden.
code language-bash magento-cloud ssh
-
Öffnen Sie die
./app/var/report/<error number>
. -
Überprüfen Sie dieund ermitteln Sie die Ursache des Problems.
-
Code-Änderungen hinzufügen, übertragen und per Push übertragen.
code language-bash git add -A && git commit -m "Fixed deployment failure" && git push origin <branch-name>