Klonen bzw. Kopieren von Power Automate Flows innerhalb von Solutions

apptech - deep dive - Kopieren von Power Automate Flows innerhalb von Solutions

komplexe Flows in Lösungen klonen

Für die Power Platform ist die Lösung bzw. Solution das Mittel der Wahl, um professionelles Application Lifecyle Management (ALM) zu betreiben. Das gilt auch für die Flows. Leider erlaubt die Oberfläche zwar ein "Save As" von existierenden Flows, aber es ist aktuell nicht möglich die Flows wieder zu einer existierenden Lösung hinzuzufügen. Wir demonstrieren das Kopieren von Power Automate Flows innerhalb von Solutions.

Für einfache Flows ist die Nutzung des Preview Feature Copy/Paste von Actions die einfachste Möglichkeit, das Problem zu umgehen. Bei komplexeren Flows taugt das Vorgehen nicht wirklich und das Ganze wird schon ärgerlicher.

Zum Glück gibt es einen Workaround via Postman. Der Workaround ist hier beschrieben: Copy/Duplicate a Flow in a Solution. Leider ist die Beschreibung nicht so detailliert, so dass hier erforderliche Screenshots ergänzt wurden, um diesen absolut hilfreichen Workaround auch für Citizen Developer nutzbar zu machen.

1. Anlegen eines Clone Destination Flows

In der existierenden Lösung wird ein neuer Flow erstellt, der das Ziel der Klon- bzw. Kopieraktion wird. Hier wurde ein manueller Trigger mit einer einfachen Compose Aktion gewählt. Der Inhalt spielt hier keine Rolle, da er am Ende über den Postman Call überschrieben wird.

2. Speichern des Clone Destination Flows - Ermittlung URI und Bearer Token

Um die URI und den Bearer Token für den Postman Aufruf zu erhalten, werden die Entwickler Tools geöffnet (F12) und danach der Destination Flow gespeichert.

CloneFlow32

Es könnten mehrere Requests getraced werden, so dass geprüft werden muss, welcher Request den PATCH auslöst. Die Request Method gibt darüber Aufschluss. Weiter unten findet man unter Authentication den Bearer Token. Die Request URL und den Bearer Token sollte man kopieren und zwischenspeichern.

ACHTUNG: Versehentlich kopierte Leerzeichen und Zeilenumbrüche löschen!

CloneFlow331
CloneFlow34

2. Speichern des Quell Flows - Ermittlung Request Body

Um den Request Boday für den Postman Aufruf zu erhalten, werden die Entwickler Tools geöffnet (F12) und danach der Quell Flow gespeichert.

CloneFlow41

Wie beim ersten mal könnten mehrere Requests getraced werden, so dass geprüft werden muss, welcher Request den PATCH auslöst. Die Request Method gibt darüber Aufschluss. Weiter unten findet man unter Request Payload den benötigten Body. Auch der Body sollte kopiert und zwischenspeichert werden.

CloneFlow51

3. Zusammenbau des Postman Requests

Im Postman erstellt man nun einen neuen Request.

CloneFlow6

Danach muss die Authorization auf "Bearer Token" gesetzt und der vorher gespeicherte Wert des Bearer Token eingefügt werden.

CloneFlow7
CloneFlow8

Jetzt müssen noch die folgende Daten eingetragen werden:

  1. Request URL des Clone Flows
  2. Bodyformat auf RAW setzen
  3. Format auf JSON
  4. Request Body des Quell Flows
  5. Displayname ersetzen
CloneFlow9

Dann muss in Postman per Send Button der Request losgesendet werden. Im Erfolgsfall erhält man den Status 200 zurück und im Clone Flow ist folgendes zu sehen 🙂

CloneFlow10

Fazit

Der Workaround spart wertvolle Arbeitszeit. Ist das Prinzip erst einmal verinnerlicht, sollte das Kopieren bzw. Klonen von Postman Flows sehr zügig gehen.

WordPress Cookie Plugin von Real Cookie Banner