Tutorial: Gestionar entornos de desarrollo y producción con la CLI de Rayfin

En este tutorial, configurará un ciclo de vida de dos áreas de trabajo para una aplicación de Fabric mediante solo la CLI de Rayfin. Puede implementar cambios de características en un área de trabajo de desarrollo, validarlos y, a continuación, promover el mismo proyecto a un área de trabajo de producción. Este flujo de trabajo usa pasos de promoción manual, por lo que se mantiene el control de cuándo y cómo llegan los cambios a producción.

En este tutorial aprenderá a:

  • Cree un área de trabajo de Fabric de desarrollo y otra de producción para el mismo proyecto.
  • Implemente los cambios de características en el área de trabajo de desarrollo.
  • Cambie entre implementaciones mediante la CLI de Rayfin.
  • Promueva el proyecto validado al área de trabajo prod.

Prerequisites

  • Una cuenta de Fabric
  • Node.js instalado localmente.
  • La CLI de Rayfin disponible a través de npx rayfin. Para más información, consulte la referencia de la CLI de Rayfin.

Información general sobre el flujo de implementación

  1. Comience en su equipo local y cree una aplicación de Fabric.
  2. Compile características para la aplicación.
  3. Pruebe localmente y, a continuación, implemente en el área de trabajo de desarrollo mediante npx rayfin up -workspace <dev-workspace>.
  4. Cuando los cambios en el código se hayan probado correctamente, vuelva a desplegar directamente en el espacio de trabajo de producción mediante npx rayfin up switch -workspace <prod-workspace>. switch permite cambiar de entorno a entornos de implementación.

Captura de pantalla que muestra el flujo de implementación para entornos de desarrollo y producción.

Paso 1: Crear áreas de trabajo de desarrollo y producción en Fabric

Cree las dos áreas de trabajo manualmente en el portal de Fabric:

  1. En el portal de Fabric, cree un área de trabajo denominada my-app-dev. Registre su identificador de área de trabajo.
  2. Cree una segunda área de trabajo denominada my-app-prod. Registre su identificador de área de trabajo.

Paso 2: Iniciar sesión en Fabric

Inicie sesión con su cuenta de Entra ID para que la CLI pueda realizar la implementación en su tenant:

npx rayfin login

Para tener como destino un inquilino específico, pase --tenant:

npx rayfin login --tenant <tenant id>

Compruebe la cuenta de inicio de sesión en cualquier momento:

npx rayfin login status

Paso 3: Crear el proyecto localmente

Crear una nueva aplicación de Fabric a partir de una plantilla. Ejecute este comando una vez para el proyecto:

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

Si va a agregar Rayfin a un proyecto existente, ejecute npx rayfin init en su lugar.

Paso 4: Implementar en el área de trabajo de desarrollo

Desde la raíz del proyecto, implemente la aplicación en my-app-dev:

npx rayfin up --workspace my-app-dev

La CLI crea un elemento de aplicación Fabric en el área de trabajo de desarrollo, aplica el esquema de la base de datos y carga contenido estático si el hospedaje estático está habilitado. El despliegue se registra en rayfin/.env, y el espacio de trabajo de desarrollo se convierte en el despliegue activo para las llamadas posteriores a npx rayfin up.

Para obtener una vista previa de la implementación sin aplicar cambios, ejecute:

npx rayfin up --dry-run --verbose

Paso 5: Desarrollar e iterar a partir del espacio de trabajo de desarrollo

Usa el espacio de trabajo de desarrollo como destino mientras desarrollas funcionalidades:

  1. Ejecute el servidor de desarrollo de front-end localmente:

    npm run dev
    
  2. Edita tu código, modelo de datos o rayfin/rayfin.yml.

  3. Aplique cambios solo de esquema cuando sea necesario:

    npx rayfin up db apply
    
  4. Vuelva a desplegar la aplicación completa en dev:

    npx rayfin up
    

Repita este bucle hasta que la característica esté lista para la promoción.

Paso 6: Promover el proyecto al área de trabajo de prod

Cuando esté listo para su lanzamiento, implemente el mismo proyecto en my-app-prod:

npx rayfin up --workspace my-app-prod

La CLI crea un elemento de aplicación Fabric independiente en el área de trabajo prod y registra una segunda implementación. Prod se convierte en el nuevo despliegue activo y rayfin/.env se reescribe para que apunte a este.

Paso 7: Cambiar entre implementaciones de desarrollo y prod

Usa npx rayfin up switch para cambiar entre los dos despliegues registrados sin tener que volver a escribir los ID del espacio de trabajo.

Enumere las implementaciones registradas para el proyecto:

npx rayfin up list

Elija un despliegue al que cambiar:

npx rayfin up switch --list

Volver a la rama dev para continuar el trabajo en la funcionalidad:

npx rayfin up switch my-app-dev

Cambiar a prod para una corrección urgente o validación:

npx rayfin up switch my-app-prod

Tras cambiar, los comandos simples npx rayfin up se dirigen al espacio de trabajo que acaba de activarse.

Paso 8: Validación de la implementación de prod

Después de desplegar en prod, confirme que el despliegue se ha realizado correctamente:

npx rayfin up status

Abra la dirección URL de hospedaje impresa por la CLI y compruebe que la aplicación se comporta según lo previsto. Si encuentra un problema:

  1. Vuelva a dev:

    npx rayfin up switch my-app-dev
    
  2. Reproduzca y corrija el problema en el entorno de desarrollo.

  3. Vuelva a implementar en desarrollo, valide y cambie a prod y ejecute npx rayfin up para liberar la corrección.

  • Mantenga su código fuente bajo control de versiones. Trate rayfin/.env como un puntero local al despliegue activo, no como la fuente de verdad.
  • Utiliza una rama de funcionalidad para el trabajo en curso y fusiónala con tu rama principal solo una vez validado el despliegue de desarrollo.
  • Reserve npx rayfin up --force para casos en los que la CLI lo recomiende explícitamente. Evite ejecutarlo de forma rutinaria en prod.
  • Use --dry-run antes de cualquier implementación de prod para obtener una vista previa de las acciones que realiza la CLI.
  • Confirme la configuración de autenticación en rayfin.yml antes de promover a producción. Solo se admite la autenticación mediada por Fabric (Entra SSO) para las aplicaciones desplegadas. Para obtener más información, consulte Implementar una aplicación de Fabric en Fabric.