Kategorien
misc

SPFX App Deployment Fehler: „Deployment failed. Correlation ID: {GUID}“

TL;DR: Wenn ihr ein App Package in einen App Catalog deployed, der erst vor kurzem (wenigen Minuten) erstellt wurde, kann der Fehler „Deployment failed. Correlation ID: …“ auftreten. Die Lösung für dieses Problem ist, dass man nach der Erstellung des Katalogs einfach länger wartet mit dem Upload des Pakets, bis nach ca. 15-30 Minuten auch alle Hintergrundarbeiten abgeschlossen wurden. Probiert man es später erneut, sollte sich das Paket ohne Probleme deployen lassen.

Oder etwas ausführlicher…
Letztens wollte ich auf einer „SharePoint Online“-Umgebung ein Script Editor WebPart einfügen, dies da ich mich auf einer Modern Page befand und ein Bild hat mit einer Verlinkung zu einer Unterwebseite. Was, warum genau? Okay, lasst mich etwas ausschweifen…

Microsoft scheint Unterwebseiten als externe Seiten zu interpetieren und die Links von den Bildern werden dadurch in neuen Tabs geöffnet, nicht innerhalb des Tabs in dem geklickt wurde (siehe: https://sharepoint.uservoice.com/forums/329214-sites-and-collaboration/suggestions/17978740-stop-opening-links-in-new-tab-in-modern-pages).
<Ironie>Das ist natürlich wahnsinnig toll für einen Benutzer, wenn er auf einer Intranetseite auf die Bilder klickt, die ihn zu den Abteilungsseiten führen und dann jedesmal ein neuer Tab geöffnet wird.</Ironie>.
Leider gibt es bei diesem Bild-WebPart keine Möglichkeit zu sagen, ob der Link in einem neuen Tab geöffnet werden soll oder nicht, folglich sind wir hier grundsätzlich Microsoft ausgeliefert.

Mittels dem ‚target‚ attribut kann man bei einem HTML-Link (‚a‘) ja festlegen, ob der Link im selben Browser-Tab geöffnet werden soll (target="_self) oder in einem neuen Tab (target="_blank").
Also, warum nicht einfach ein Script Editor WebPart auf der Seite platzieren, um diese Links einfach manuell umzubiegen, so dass sie nicht mehr in einem neuen Tab geöffnet werden?

Das geht leider nicht so einfach. Denn auf Modern Pages gibt es das Script Editor WebPart gar nicht mehr und Microsoft möchte es auch nicht wieder einführen. Alles soll neu ja möglichst safe sein.

Zum Glück gibt es aber die Community, welche uns als Ersatz zum Beispiel den Modern Script Editor bereitstellt: https://github.com/SharePoint/sp-dev-fx-webparts/tree/master/samples/react-script-editor – eine 90% gute Anleitung zur Installation, welche wesentlich ausführlicher als die Readme ist, findet sich hier: https://medium.com/niftit-sharepoint-blog/add-the-script-editor-webpart-back-to-sharepoint-modern-experience-688a7b7208e4.
Warum nur 90% gut? Weil für die restlichen 10% noch etwas fehlte, dass diesen Blog-Eintrag hier veranlasste.

Für das Deployment eines App Packages braucht man man einen App Catalog. Da in der Umgebung noch nie eine solche App benötigt wurde, gab es noch keinen App Catalog, folglich musste ich zuerst einen Einrichten.
Ich folgte also der verlinkten Anleitung (https://docs.microsoft.com/en-us/sharepoint/use-app-catalog) dazu (welche eigentlich diejenige ist, welcher noch eine Information fehlt) und erstellte zuerst einen Katalog.
Dann lud ich das erstellte Paket der App hoch, um die App zu deployen und wurde mit folgender Fehlermeldung konfrontiert:

App Package Deployment Failed

Zuerst dachte ich schon, es sei ein grösseres Problem. Grösser wie dieser lange Blogeintrag. Aber zum Glück stellte sich heraus, dass die Lösung ganz einfach war.
Diese Fehlermeldung kann auftreten, wenn man nach der Erstellung eines App Catalogs direkt ein App Package hochlädt. Die Lösung ist, einfach länger zu warten (ca. 15-30 Minuten) und erst dann das Paket hochzuladen.
Ich habe also die Datei gelöscht und dann wieder hochgeladen (es waren schon ca. 30 Minuten seit der Erstellung des Katalogs vergangen). Und siehe da, die Datei konnte nun ohne Fehler deployed werden:

Deployment App Package

Vermutlich wird im Hintergrund nach der Erstellung der Site für den Katalog noch nicht alles komplett eingerichtet sein und erst einige Minuten später ist der Katalog wirklich bereit für die Pakete. Als Benutzer/Admin sieht man das leider nicht, aber wenn man es nun weiss, dann kann man sich entsprechend darauf einstellen.

Von Patric

Currently working as a software developer (C#, Java, Python, SQL, ...whatever).

When I'm not at work, I spent my time with my wife and kids.

In my free time I like to do various things like photography, sport, listening to music, programming, watching movies or shows, reading a good book or going out with friends.

Kommentar verfassen