AEM Cloud Manager: Der Versionskonflikt des ui.content-Pakets blockiert die Bereitstellung in niedrigeren Umgebungen
In diesem Artikel wird erläutert, wie statische Paketversionen ui.content Paketbereitstellung in niedrigeren Umgebungen in Adobe Experience Manager Cloud Manager-Pipelines verhindern.
Beschreibung description
Umgebung
Adobe Experience Manager (AEM) Cloud Manager (alle Versionen)
Problem/Symptome
Bei der Bereitstellung über Cloud Manager-Pipelines in niedrigeren Umgebungen (z. B. Dev, E2E2 oder PLRT) kann das ui.content-Paket nicht hochgeladen werden, wenn bereits ein Paket mit derselben Version vorhanden ist. Die Bereitstellungsprotokolle zeigen keine Fehler an, aber das Paket wird nicht neu installiert oder aktualisiert. In Produktions-Pipelines wird dasselbe Paket erfolgreich hochgeladen, da für jeden Build eine eindeutige Version mit Zeitstempel generiert wird.
Beispielprotokollauszug aus der Produktion:
Set project version to 5.0.0.2025_0524_1104410_0008467799 from 5.0.0
Executing command mvn --batch-mode org.codehaus.mojo:versions-maven-plugin:2.6:set -DnewVersion=5.0.0.2025_0524_1104410_0008467799 ...
Beispielprotokollauszug aus niedrigeren Umgebungen:
Executing command mvn --batch-mode org.apache.maven.plugins:maven-dependency-plugin:3.1.2:resolve-plugins
- Das Problem ist beim Erstellen in niedrigeren Umgebungen reproduzierbar.
- Die Projektversion ist aufgrund von Anforderungen an die Abhängigkeitsverwaltung unveränderlich (z. B.:
5.0.0). - Es werden keine Fehler angezeigt, aber das Paket wird nicht aktualisiert, wenn die Version unverändert ist.
Weitere Informationen finden Sie unter Umgang mit Projektversionen in Cloud Manager und SNAPSHOT Verwendung in produktionsfremden Pipelines.
Ursache
Cloud Manager überspringt die Paketinstallation in niedrigeren Umgebungen, wenn die Paketversion unverändert ist und bereits vorhanden ist. Produktions-Pipelines vermeiden dies, indem sie für jeden Build eindeutige Versionen mit Zeitstempel generieren, während niedrigere Umgebungen entweder SNAPSHOT Versionen oder manuelle Versionsinkremente erfordern, um eine Neuinstallation zu erzwingen.
Lösung resolution
Gehen Sie wie folgt vor, um das Problem zu beheben:
-
Verstehen der Versionsverwaltung von Cloud Manager
- In Produktions-Pipelines generiert Cloud Manager automatisch für jeden Build eine eindeutige Version mit Zeitstempel, sodass Pakete neu installiert werden können, auch wenn eine frühere Version vorhanden ist.
- In niedrigeren Umgebungen erhöht Cloud Manager Versionen nicht automatisch und erwartet, dass die Projektversion eine
-SNAPSHOTfür Entwickler-Builds ist.
-
Option 1: Verwenden Sie
-SNAPSHOTfür Umgebungen in niedrigeren Ebenen- Aktualisieren Sie für Verzweigungen, die nur in niedrigeren Umgebungen verwendet werden, die
pom.xmlProjektversion, um-SNAPSHOTeinzuschließen (zum Beispiel:<version>5.0.0-SNAPSHOT</version>). - Stellen Sie sicher, dass alle Module (z. B.
ui.apps,ui.content) dieseSNAPSHOTVersion übernehmen. - Dadurch kann Cloud Manager diese als veränderliche Artefakte behandeln und erneut installieren, auch wenn die Version unverändert ist.
- Aktualisieren Sie für Verzweigungen, die nur in niedrigeren Umgebungen verwendet werden, die
-
Option 2: Erhöhen Sie die Version für jede Bereitstellung manuell
- Wenn eine statische Version erforderlich ist (aufgrund der Abhängigkeitsverwaltung oder anderer Richtlinien), erhöhen Sie die Projektversion in
pom.xmlfür jede Bereitstellung in niedrigeren Umgebungen manuell. - Dadurch wird sichergestellt, dass Cloud Manager das Paket als neue Version erkennt und installiert.
- Wenn eine statische Version erforderlich ist (aufgrund der Abhängigkeitsverwaltung oder anderer Richtlinien), erhöhen Sie die Projektversion in
-
Überprüfen und Testen
- Nachdem Sie die Versionsänderung vorgenommen haben, führen Sie einen Trigger für eine neue Pipeline-Bereitstellung aus, um zu bestätigen, dass das
ui.contentPaket erwartungsgemäß hochgeladen und installiert wurde.
- Nachdem Sie die Versionsänderung vorgenommen haben, führen Sie einen Trigger für eine neue Pipeline-Bereitstellung aus, um zu bestätigen, dass das