fabric cli

La evolución de Microsoft Fabric hacia escenarios más técnicos y profesionales ha traído consigo una demanda creciente de herramientas que permitan ir más allá de la interfaz visual. En este contexto nace Fabric CLI, una herramienta de línea de comandos diseñada para interactuar con la plataforma directamente desde el terminal.

Este lanzamiento no es casualidad; encaja perfectamente con la estrategia de Microsoft de potenciar la automatización, la integración con Git y los flujos de CI/CD (DataOps).

¿Qué es Fabric CLI?

Fabric CLI es una interfaz de línea de comandos (basada en el comando fab) que permite explorar, gestionar y automatizar recursos de Microsoft Fabric.

Lo que hace única a esta herramienta es su experiencia inspirada en un sistema de archivos. En lugar de navegar por menús complejos, puedes moverte por tus workspaces y artefactos como si fueran carpetas de tu ordenador, utilizando comandos familiares para cualquier administrador o desarrollador.

Está construida sobre las APIs públicas de Microsoft Fabric y OneLake, lo que garantiza una integración robusta y nativa con el ecosistema.

¿Por qué aparece ahora?

El ecosistema de Fabric ha madurado. La llegada de formatos como PBIP (Power BI Project), el nuevo formato de informes PBIR y la integración nativa con repositorios Git han cambiado las reglas del juego.

Ya no basta con «hacer clic» en el portal; los equipos de datos modernos necesitan:

  1. Automatizar despliegues entre entornos (Dev/Test/Prod).
  2. Gobernar recursos de forma masiva.
  3. Integrar tareas de Fabric en pipelines de Azure DevOps o GitHub Actions.

Principales capacidades

  • Navegación intuitiva: Permite usar comandos estilo Unix/Windows para explorar la jerarquía de Fabric.
  • Modo interactivo: Incluye autocompletado de comandos y parámetros, lo que facilita enormemente la curva de aprendizaje.
  • Multiplataforma: Funciona exactamente igual en Windows, macOS y Linux.
  • Preparado para Scripts: Se integra perfectamente con Bash, PowerShell o Python para ejecutar tareas programadas.

Instalación y Requisitos Previos

Antes de proceder con la instalación, es fundamental asegurarse de que el entorno local cumple con los requisitos técnicos de Microsoft.

1. Requisitos del sistema

  • Versión de Python: Debes tener instalada una de las siguientes versiones: 3.10, 3.11 o 3.12.
  • Configuración del PATH: Es imprescindible que Python esté añadido a la variable de entorno PATH.

Tip de comprobación: Abre tu terminal y escribe python --version. Si el sistema te devuelve la versión correcta, estás listo. Si el comando no se reconoce, debes revisar la instalación de Python y marcar la casilla «Add Python to PATH» o agregarlo manualmente desde las variables del sistema.

2. Proceso de instalación

Una vez verificado el punto anterior, la instalación se realiza de forma sencilla a través del gestor de paquetes de Python:

pip install ms-fabric-cli

Si ya lo tienes instalado y quieres actualizarlo a la última versión disponible:

pip install --upgrade ms-fabric-cli

Microsoft ha confirmado que en el futuro se publicarán binarios independientes para facilitar la instalación sin depender de Python, pero actualmente este es el método oficial y recomendado.

Entendiendo la jerarquía: Fabric como un sistema de ficheros

Una de las mayores potencias de Fabric CLI es su modelo jerárquico. Para CLI, tu organización no es una base de datos, sino una estructura de directorios. Esta es la jerarquía que utiliza para organizar los recursos:

  • Tenant (Root): Es el nivel superior, equivalente al directorio raíz (/) de un sistema Linux o Windows. Todos los recursos de Fabric cuelgan de aquí.
  • Workspaces: Se comportan como directorios de usuario. Puedes entrar en ellos con un comando cd.
  • Folders e Items: Dentro de cada Workspace, los elementos (como Lakehouses, Notebooks o Reports) se visualizan como objetos dentro de carpetas.
  • OneLake Items: Incluso los archivos físicos dentro de un Lakehouse (como archivos .csv o tablas Delta) son accesibles siguiendo esta ruta de carpetas.

Ejemplos de rutas en la CLI:

Para moverte o referenciar un objeto, usarás rutas similares a estas:

  • /workspace1.Workspace/item1.Lakehouse (Ruta a un Lakehouse).
  • /workspace1.Workspace/folderA.Folder/item2.Notebook (Ruta a un Notebook dentro de una carpeta).

Tipos de elementos y recursos gestionables

La jerarquía de Fabric CLI no se limita a los objetos visibles en el portal web (como informes o notebooks), sino que extiende su control a elementos de infraestructura y entornos virtuales:

  • Capacidades (Capacities): Permite listar y referenciar las capacidades de cómputo contratadas, tratándolas como un recurso más en la ruta principal (ej: /.capacities/MiCapacidad.Capacity).
  • Elementos Virtuales: Gestión de recursos que no son «ficheros» per se, pero que son vitales para el entorno, como los Spark Pools (.sparkpools/pool1.SparkPool).
  • Contenedores de Ítems Virtuales: Espacios lógicos para organizar estos recursos de infraestructura de forma separada a los datos.
  • OneLake Items: Acceso directo a los archivos subyacentes dentro de un Lakehouse (archivos .csv, tablas Delta, etc.).

Autenticación: Del desarrollador al Pipeline

Una de las grandes ventajas de Fabric CLI es su flexibilidad para identificarse, adaptándose a diferentes escenarios:

MétodoUso Ideal
InteractivoUso diario desde tu terminal local (abre el navegador).
Service PrincipalAutomatización en pipelines de CI/CD mediante secreto o certificado.
Managed IdentityEjecución segura desde recursos de Azure (como VMs o Functions).
Tokens federadosEscenarios avanzados de identidad en la nube.

Primeros pasos: Comandos básicos

Una vez instalado, puedes empezar a explorar tu entorno de Fabric. Aquí tienes algunos comandos para romper el hielo:

# Iniciar sesión de forma interactiva
fab login

# Listar todos los workspaces a los que tienes acceso
fab ls

# Entrar en un workspace específico
fab cd "Nombre_de_tu_Workspace"

# Listar los ítems (Lakehouses, Notebooks, Reports) dentro del workspace
fab ls "/Nombre_de_tu_Workspace/"

Casos de uso reales: ¿Cuándo pasar del portal web a Fabric CLI?

A medida que los proyectos de datos crecen, la interfaz gráfica de Fabric puede convertirse en un cuello de botella. Aquí es donde Fabric CLI brilla, permitiendo escalar operaciones que manualmente serían ineficientes o propensas a errores.

1. Automatización de entornos a gran escala (Provisionamiento)

Imagina que trabajas en una organización que necesita crear entornos de análisis aislados para 15 departamentos diferentes.

  • El reto: Crear manualmente 15 workspaces, configurar sus capacidades, asignar permisos y crear la estructura de carpetas básica te llevaría horas.
  • La solución CLI: Con un simple script en PowerShell o Bash, puedes iterar sobre una lista de nombres y ejecutar fab workspace create de forma masiva. Lo que antes era una mañana de trabajo se reduce a segundos y con la garantía de que todos los entornos son idénticos.

2. Implementación de DataOps y ALM (Application Lifecycle Management)

El ciclo de vida de los datos hoy exige el mismo rigor que el desarrollo de software. Fabric CLI es la pieza que permite «cerrar el círculo» en tus pipelines de Azure DevOps o GitHub Actions:

  • Despliegues automatizados: Puedes programar la promoción de artefactos (Notebooks, Lakehouses, informes PBIR) desde el entorno de Desarrollo al de Producción automáticamente tras una aprobación en Git.
  • Validación de cambios: Antes de dar por bueno un despliegue, la CLI puede verificar que los elementos existen y están correctamente configurados en el workspace de destino.

3. Auditoría e Inventariado rápido (Governance)

Para un administrador de Fabric, obtener una foto rápida del estado del inquilino desde el portal web es tedioso.

  • Exploración ágil: Gracias a la navegación tipo sistema de archivos, puedes ejecutar comandos como fab ls -r para listar de forma recursiva todos los ítems de un workspace y exportar ese resultado a un archivo de texto o JSON para auditoría.
  • Control de capacidades: Puedes monitorizar rápidamente qué capacidades están siendo utilizadas y por qué recursos, facilitando el control de costes y la optimización de recursos sin navegar por múltiples menús de configuración.

4. Gestión de artefactos «ocultos» o de infraestructura

Hay elementos que no siempre son fáciles de gestionar visualmente de forma masiva.

  • Spark Pools y configuraciones de cómputo: La CLI permite gestionar los entornos de ejecución (Spark Pools) de forma programática. Si necesitas actualizar la configuración de librerías o el tamaño de los nodos en múltiples entornos a la vez, la CLI es tu única opción eficiente.
  • Acceso directo a OneLake: Al tratar OneLake como un sistema de ficheros, puedes usar la CLI para verificar la existencia de archivos de datos específicos o tablas Delta sin necesidad de abrir un Notebook o el explorador de un Lakehouse.

5. Reducción de la «Fatiga de Clics»

En entornos con cientos de recursos, la interfaz web puede volverse lenta debido a la carga de elementos gráficos. Un desarrollador experimentado que conoce las rutas de sus recursos puede moverse entre workspaces y carpetas mediante fab cd mucho más rápido de lo que cualquier navegador puede renderizar la página.

Conclusión

Fabric CLI no viene a sustituir al portal web de Microsoft Fabric, sino a dotar de «superpoderes» a los perfiles más técnicos. Es una señal clara de que la plataforma está lista para el nivel empresarial, donde la trazabilidad y la automatización no son opcionales, sino una necesidad.

Si trabajas en proyectos de Fabric de escala media o grande, es el momento de instalar la CLI y empezar a integrarla en tu flujo de trabajo.

Deja una respuesta