Zelfstudie: Ontwikkel- en prod-omgevingen beheren met de Rayfin CLI

In deze zelfstudie stelt u een levenscyclus van twee werkruimten in voor een Fabric-app met behulp van alleen de Rayfin CLI. U implementeert functiewijzigingen in een ontwikkelwerkruimte, valideert deze en promoveert hetzelfde project vervolgens naar een productiewerkruimte. Deze werkstroom maakt gebruik van handmatige promotiestappen, zodat u de controle houdt over wanneer en hoe wijzigingen productie bereiken.

In deze handleiding leer je hoe je:

  • Maak een dev en een prod Fabric werkruimte voor hetzelfde project.
  • Functiewijzigingen implementeren in de ontwikkelwerkruimte.
  • Schakelen tussen implementaties met behulp van de Rayfin CLI.
  • Het gevalideerde project promoveren naar de prod-werkruimte.

Prerequisites

  • Een Fabric-account
  • Node.js lokaal geïnstalleerd.
  • De Rayfin CLI beschikbaar via npx rayfin. Zie de Rayfin CLI-referentie voor meer informatie.

Overzicht van de implementatiestroom

  1. Start op uw lokale computer en maak een Fabric-app.
  2. Bouw functies voor de app.
  3. Test lokaal en implementeer vervolgens naar de ontwikkelwerkruimte met behulp van npx rayfin up -workspace <dev-workspace>.
  4. Wanneer de codewijzigingen goed zijn getest, implementeert u deze rechtstreeks opnieuw in de productiewerkruimte met behulp van npx rayfin up switch -workspace <prod-workspace>. switch hiermee kunt u schakelen tussen omgevingen naar implementatieomgevingen.

Schermopname van de implementatiestroom voor ontwikkelings- en productieomgevingen.

Stap 1: Ontwikkel- en prod-werkruimten maken in Fabric

Maak de twee werkruimten handmatig in de Fabric portal:

  1. Maak in de Fabric-portal een werkruimte met de naam my-app-dev. Noteer de werkruimte-id.
  2. Maak een tweede werkruimte met de naam my-app-prod. Noteer de werkruimte-id.

Stap 2: Aanmelden bij Fabric

Meld u aan met uw Entra ID-account, zodat de CLI naar uw tenant kan implementeren:

npx rayfin login

Om een specifieke tenant op te geven, geeft u --tenant door:

npx rayfin login --tenant <tenant id>

Controleer het aangemelde account op elk gewenst moment:

npx rayfin login status

Stap 3: Het project lokaal maken

Een nieuwe Fabric-app maken op basis van een sjabloon. Voer deze opdracht eenmaal uit voor het project:

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

Als u Rayfin aan een bestaand project toevoegt, voert u in plaats daarvan npx rayfin init uit.

Stap 4: Implementeren in de ontwikkelwerkruimte

Implementeer de app vanuit de hoofdmap van uw project naar my-app-dev:

npx rayfin up --workspace my-app-dev

De CLI maakt een Fabric app-item in de ontwikkelwerkruimte, past uw databaseschema toe en uploadt statische inhoud als statische hosting is ingeschakeld. De uitrol wordt geregistreerd in rayfin/.env, en de dev-workspace wordt de actieve uitrol voor daaropvolgende aanroepen van npx rayfin up.

Als u een voorbeeld van de implementatie wilt bekijken zonder wijzigingen toe te passen, voert u het volgende uit:

npx rayfin up --dry-run --verbose

Stap 5: Ontwikkel en itereer in de ontwikkelwerkruimte

Gebruik de dev-werkruimte als doel tijdens het bouwen van functies:

  1. Voer de front-end dev-server lokaal uit:

    npm run dev
    
  2. Bewerk uw code, gegevensmodel of rayfin/rayfin.yml.

  3. Pas zo nodig alleen wijzigingen in het schema toe:

    npx rayfin up db apply
    
  4. Implementeer de volledige app opnieuw om te ontwikkelen:

    npx rayfin up
    

Herhaal deze lus totdat de functie gereed is voor promotie.

Stap 6: Het project promoveren naar de prod-werkruimte

Wanneer u klaar bent om vrij te geven, implementeert u hetzelfde project in mijn app-prod:

npx rayfin up --workspace my-app-prod

De CLI maakt een afzonderlijk Fabric app-item in de prod-werkruimte en registreert een tweede implementatie. Prod wordt de nieuwe actieve implementatie en rayfin/.env wordt herschreven om ernaar te verwijzen.

Stap 7: Schakelen tussen dev- en prod-implementaties

Gebruik npx rayfin up switch om tussen de twee geregistreerde implementaties te schakelen zonder werkruimte-ID’s opnieuw te hoeven typen.

Vermeld de implementaties die zijn vastgelegd voor het project:

npx rayfin up list

Kies een implementatie om naartoe over te schakelen:

npx rayfin up switch --list

Ga terug naar dev om het functiewerk voort te zetten:

npx rayfin up switch my-app-dev

Overschakelen naar prod voor een hotfix of validatie:

npx rayfin up switch my-app-prod

Na het overschakelen zijn gewone opdrachten npx rayfin up gericht op de werkruimte die zojuist actief is geworden.

Stap 8: De prod-implementatie valideren

Nadat de implementatie naar prod is geïmplementeerd, controleert u of de implementatie in orde is:

npx rayfin up status

Open de hosting-URL die wordt afgedrukt door de CLI en controleer of de app werkt zoals verwacht. Als u een probleem vindt:

  1. Ga terug naar dev:

    npx rayfin up switch my-app-dev
    
  2. Reproduceer en los het probleem op in de ontwikkelwerkruimte.

  3. Rol opnieuw uit naar dev, valideer, schakel daarna over naar prod en voer npx rayfin up uit om de fix vrij te geven.

  • Bewaar uw broncode in versiebeheer. Behandelen rayfin/.env als een lokale aanwijzer naar de actieve implementatie, niet als de bron van waarheid.
  • Gebruik een functievertakking voor werk dat wordt uitgevoerd en voeg deze samen met uw hoofdvertakking pas nadat de dev-implementatie is gevalideerd.
  • Reserveer npx rayfin up --force voor gevallen waarin de CLI dit expliciet aanbeveelt. Vermijd het regelmatig uitvoeren tegen prod.
  • Gebruik --dry-run deze voordat er een prod-implementatie wordt geïmplementeerd om een voorbeeld te bekijken van de acties die de CLI uitvoert.
  • Bevestig de authenticatie-instellingen in rayfin.yml voordat u naar prod promoot. Alleen door Fabric bemiddelde authenticatie (Entra SSO) wordt ondersteund voor geïmplementeerde apps. Zie Een Fabric-app implementeren in Fabric voor meer informatie.