Distribuire un'app di Fabric su Fabric

Distribuisci un'app Fabric su Fabric effettuando l'accesso, eseguendo il flusso di distribuzione della CLI e verificando che cosa npx rayfin up configura per la tua app. Questo articolo illustra il concetto di cosa accade durante la distribuzione.

Prerequisiti

  • Progetto app Fabric con un file di configurazione rayfin/rayfin.yml. Se non si ha ancora un progetto, vedere Creare il primo progetto app Fabric.
  • Un account Microsoft Entra ID con accesso a un'area di lavoro Fabric.

Distribuire la tua applicazione

Eseguire il comando seguente dalla radice del progetto:

npx rayfin up

Se non si è connessi, l'interfaccia della riga di comando avvia automaticamente un flusso di accesso interattivo.

Cosa fa la distribuzione

Il rayfin up comando esegue questi passaggi nell'ordine seguente:

  1. Crea un elemento app Fabric nell'area di lavoro Fabric oppure riutilizza quello esistente nelle distribuzioni successive.
  2. Recupera la chiave pubblicabile dal servizio remoto.
  3. Sincronizza le impostazioni di runtime dal tuo rayfin.yml al servizio remoto, incluse la configurazione di autenticazione e i flag del servizio.
  4. Applica lo schema di database generato dai decoratori del modello di dati TypeScript.
  5. Compila e distribuisce contenuto statico se staticHosting è abilitato in rayfin.yml: esegue il comando di compilazione, crea un pacchetto della cartella di output in un file ZIP e lo carica.
  6. Salva in modo persistente i dettagli di distribuzione nei file rayfin.yml e .env.fabric-* per le distribuzioni successive.

Dopo la distribuzione, la CLI visualizza:

  • URL di hosting in cui è attiva l'app
  • Collegamento al portale Fabric per gestire la distribuzione
  • ID di distribuzione come riferimento

Configurare l'autenticazione

Nelle applicazioni distribuite è supportata solo l'autenticazione mediata da Fabric (Entra SSO). L'autenticazione tramite posta elettronica e password è disponibile durante lo sviluppo locale, ma non funziona dopo la distribuzione in Fabric.

Assicurati che rayfin.yml abbia l'autenticazione Fabric abilitata prima di eseguire rayfin up:

services:
  auth:
    enabled: true
    fabric:
      enabled: true

Anteprima della distribuzione senza modifiche

Usare --dry-run per visualizzare le operazioni eseguite dall'interfaccia della riga di comando senza creare o modificare risorse:

npx rayfin up --dry-run

Applicare le modifiche al database

Dopo l'aggiornamento dei modelli di dati, eseguire il push delle modifiche dello schema nel database remoto senza ridistribuire lo stack completo:

npx rayfin up db apply

Se la modifica dello schema comporta operazioni potenzialmente distruttive (eliminazione di colonne, ridenominazione delle tabelle), l'interfaccia della riga di comando avvisa e rifiuta di procedere. Usare --force per eseguire l'override del controllo di sicurezza:

npx rayfin up db apply --force

Caution

L'uso --force di può causare la perdita di dati. Esaminare attentamente le operazioni elencate e confermare di accettare le conseguenze prima di procedere.

Ridistribuire il contenuto statico

Quando è stato modificato solo il codice front-end, ridistribuire il contenuto statico in modo indipendente per un ciclo di iterazione più veloce:

npx rayfin up staticapp deploy

Questo comando esegue il componente configurato buildCommand, crea un pacchetto con l'output e lo carica nel servizio remoto.

Per ignorare il passaggio di compilazione e distribuire l'output esistente:

npx rayfin up staticapp deploy --skip-build

Controllare lo stato della distribuzione

Visualizzare lo stato corrente della distribuzione Fabric:

npx rayfin up status

Aggiungere --json per l'output leggibile dal computer:

npx rayfin up status --json

Aggiornare le distribuzioni esistenti

Dopo la prima distribuzione, rayfin.yml archivia i dettagli della distribuzione (rayfinItemId, fabricWorkspaceIde l'endpoint dell'elemento). L'esecuzione npx rayfin up aggiorna di nuovo la stessa distribuzione anziché crearne una nuova.

Per gli aggiornamenti mirati, usa i sottocomandi:

Comando Cosa aggiorna
npx rayfin up Tutto: impostazioni, database e contenuto statico.
npx rayfin up db apply Solo schema del database.
npx rayfin up staticapp deploy Solo contenuto statico.

Risolvere i problemi relativi alla distribuzione

La distribuzione non riesce con errore 401 o 403

La sessione potrebbe essere scaduta. Eseguire npx rayfin login per ripetere l'autenticazione, quindi riprovare npx rayfin up.

Il database genera report sulle modifiche distruttive

L'interfaccia della riga di comando di Rayfin blocca le modifiche dello schema che potrebbero causare la perdita di dati. Rivedere le operazioni elencate e utilizzare npx rayfin up db apply --force solo dopo aver confermato di accettare la perdita di dati.

La distribuzione statica supera il limite di dimensione

L'archivio compresso non deve superare i 100 MB. Ottimizza l'output della compilazione escludendo i file source map e le risorse di sviluppo di grandi dimensioni, oppure sposta i file binari nell'archiviazione di Fabric Apps.

Gestire l'app nel portale di Fabric

Dopo la distribuzione, è possibile gestire l'app Fabric direttamente nel portale Fabric.

Visualizzare le proprietà degli elementi

Aprire l'app Fabric nel portale di Fabric per visualizzare:

  • URL dell'app : URL pubblico in cui è ospitato il contenuto statico.
  • URL back-end dell'app : URL di base per tutti i servizi back-end.

Gestire i servizi figlio

Seleziona l'app Fabric per visualizzare i servizi correlati:

  • Sql Database : apre l'editor di query SQL Fabric. È possibile eseguire query di lettura sui dati. Le modifiche apportate allo schema direttamente nel portale di Fabric vengono sovrascritte nella successiva distribuzione di rayfin up.
  • Autenticazione : consente di visualizzare e gestire gli utenti autenticati nella tabella Users del database SQL figlio.

Autorizzazioni dell'app

Per tutti i collaboratori dell'app Fabric, per distribuire un'app Fabric, devono disporre almeno dell'autorizzazione Edit sull'elemento.