Lernprogramm: Verwalten von Entwicklungs- und Prod-Umgebungen mit der Rayfin CLI

In diesem Lernprogramm richten Sie einen Lebenszyklus von zwei Arbeitsbereichen für eine Fabric-App ein, indem Sie nur die Rayfin CLI verwenden. Sie stellen Feature-Änderungen in einem Entwicklungsarbeitsbereich bereit, validieren sie und stufen anschließend dasselbe Projekt in einen Produktionsarbeitsbereich hoch. Dieser Workflow verwendet manuelle Heraufstufungsschritte, sodass Sie die Kontrolle darüber behalten, wann und wie Änderungen an der Produktion vorgenommen werden.

In diesem Tutorial erfahren Sie, wie:

  • Erstellen Sie für dasselbe Projekt einen Entwicklungs- und einen Produktions-Fabric-Arbeitsbereich.
  • Stellen Sie Änderungen an Features im Dev-Arbeitsbereich bereit.
  • Wechseln Sie mit der Rayfin CLI zwischen Bereitstellungen.
  • Bewerben Sie das validierte Projekt in den Prod-Arbeitsbereich.

Voraussetzungen

  • Ein Fabric Konto
  • Node.js lokal installiert.
  • Die Rayfin CLI ist über npx rayfin verfügbar. Ausführliche Informationen finden Sie in der Rayfin CLI-Referenz.

Übersicht über den Bereitstellungsablauf

  1. Starten Sie auf Ihrem lokalen Computer, und erstellen Sie eine Fabric App.
  2. Erstellen Sie Features für die App.
  3. Testen Sie lokal und stellen Sie dann mit npx rayfin up -workspace <dev-workspace> im Entwicklungsarbeitsbereich bereit.
  4. Wenn die Codeänderungen gut getestet sind, stellen Sie sie mithilfe von npx rayfin up switch -workspace <prod-workspace> direkt erneut im Arbeitsbereich „Produktion“ bereit. switch ermöglicht es Ihnen, zwischen Umgebungen und Bereitstellungsumgebungen zu wechseln.

Screenshot, der den Bereitstellungsablauf für Entwicklungs- und Produktionsumgebungen zeigt.

Schritt 1: Erstellen von Entwicklungs- und Prod-Arbeitsbereichen in Fabric

Erstellen Sie die beiden Arbeitsbereiche manuell im portal Fabric:

  1. Erstellen Sie im Fabric-Portal einen Arbeitsbereich mit dem Namen my-app-dev. Notieren Sie die Arbeitsbereichs-ID.
  2. Erstellen Sie einen zweiten Arbeitsbereich mit dem Namen "my-app-prod". Notieren Sie die Arbeitsbereichs-ID.

Schritt 2: Anmelden bei Fabric

Melden Sie sich mit Ihrem Entra ID Konto an, damit die CLI für Ihren Mandanten bereitstellen kann:

npx rayfin login

Um auf einen bestimmten Mandanten zu abzielen, übergeben Sie Folgendes --tenant:

npx rayfin login --tenant <tenant id>

Überprüfen Sie das angemeldete Konto jederzeit:

npx rayfin login status

Schritt 3: Lokales Erstellen des Projekts

Erstellen Sie ein Gerüst für eine neue Fabric-App aus einer Vorlage. Führen Sie diesen Befehl einmal für das Projekt aus:

npm create @microsoft/rayfin@latest my-app --workspace my-app-dev
cd my-app

Wenn Sie Rayfin zu einem vorhandenen Projekt hinzufügen, führen Sie stattdessen npx rayfin init aus.

Schritt 4: Bereitstellen im Entwicklungsarbeitsbereich

Stellen Sie die App aus dem Projektstamm in my-app-dev bereit:

npx rayfin up --workspace my-app-dev

Die CLI erstellt ein Fabric App-Element im Entwicklungsarbeitsbereich, wendet Ihr Datenbankschema an und lädt statische Inhalte hoch, wenn das statische Hosting aktiviert ist. Die Bereitstellung wird in rayfin/.env aufgezeichnet, und der Entwicklungsarbeitsbereich wird die aktive Bereitstellung für nachfolgende npx rayfin up-Aufrufe.

Um eine Vorschau der Bereitstellung anzuzeigen, ohne Änderungen anzuwenden, führen Sie Folgendes aus:

npx rayfin up --dry-run --verbose

Schritt 5: Entwickeln und Iterieren im Entwicklungsarbeitsbereich

Verwenden Sie den Dev-Arbeitsbereich als Ziel, während Sie Features erstellen:

  1. Führen Sie den Frontend-Entwicklungsserver lokal aus:

    npm run dev
    
  2. Bearbeiten Sie Ihren Code, Ihr Datenmodell oder rayfin/rayfin.yml.

  3. Wenden Sie bei Bedarf nur Schemaänderungen an:

    npx rayfin up db apply
    
  4. Erneutes Bereitstellen der vollständigen App für Entwickler:

    npx rayfin up
    

Wiederholen Sie diesen Vorgang, bis das Feature für die Freigabe bereit ist.

Schritt 6: Stufen Sie das Projekt in den Produktiv-Arbeitsbereich hoch.

Wenn Sie bereit für die Veröffentlichung sind, stellen Sie dasselbe Projekt in my-app-prod bereit:

npx rayfin up --workspace my-app-prod

Die CLI erstellt ein separates Fabric App-Element im Prod-Arbeitsbereich und zeichnet eine zweite Bereitstellung auf. Prod wird zur neuen aktiven Bereitstellung, und rayfin/.env wird so umgeschrieben, dass es darauf verweist.

Schritt 7: Wechseln zwischen Entwicklungs- und Prod-Bereitstellungen

Verwenden Sie npx rayfin up switch, um zwischen den beiden erfassten Bereitstellungen zu wechseln, ohne die Arbeitsbereichs-IDs erneut eingeben zu müssen.

Für das Projekt erfasste Bereitstellungen auflisten:

npx rayfin up list

Wählen Sie eine Bereitstellung aus, zu der Sie wechseln möchten:

npx rayfin up switch --list

Wechseln Sie zurück zu dev, um die Arbeit am Feature weiterzuführen:

npx rayfin up switch my-app-dev

Wechseln Sie zu Prod für einen Hotfix oder eine Überprüfung:

npx rayfin up switch my-app-prod

Nach dem Wechseln zielen einfache npx rayfin up Befehle auf den neu aktiven Arbeitsbereich ab.

Schritt 8: Überprüfen der Prod-Bereitstellung

Stellen Sie nach der Bereitstellung für prod sicher, dass die Bereitstellung fehlerfrei ist:

npx rayfin up status

Öffnen Sie die von der CLI gedruckte Hosting-URL, und überprüfen Sie, ob sich die App wie erwartet verhält. Wenn Sie ein Problem finden:

  1. Wechseln Sie zurück zu dev:

    npx rayfin up switch my-app-dev
    
  2. Reproduzieren sie das Problem mit dem Entwicklerarbeitsbereich, und beheben Sie es.

  3. Stellen Sie erneut in dev bereit, validieren Sie, wechseln Sie dann zu prod und führen Sie npx rayfin up aus, um den Fix auszurollen.

  • Behalten Sie den Quellcode in der Versionsverwaltung bei. Behandeln Sie rayfin/.env als lokaler Zeiger auf die aktive Bereitstellung, nicht als Quelle der Wahrheit.
  • Verwenden Sie für Arbeiten in Bearbeitung einen Feature-Branch und mergen Sie ihn erst in Ihren Haupt-Branch, nachdem das Deployment in der Entwicklungsumgebung validiert wurde.
  • Reservieren Sie npx rayfin up --force für Situationen, in denen die CLI dies explizit empfiehlt. Vermeiden Sie, es routinemäßig im Produktivsystem auszuführen.
  • Verwenden Sie --dry-run diese Methode, bevor produkte bereitgestellt werden, um eine Vorschau der Aktionen anzuzeigen, die von der CLI ausgeführt werden.
  • Bestätigen Sie die Authentifizierungseinstellungen in rayfin.yml, bevor Sie das Produkt bewerben. Nur Fabric vermittelte Authentifizierung (Entra SSO) wird für bereitgestellte Apps unterstützt. Weitere Informationen finden Sie unter Bereitstellen einer Fabric-App in Fabric.