Hvad er CI/CD i Microsoft Fabric?

Kontinuerlig integration og kontinuerlig levering (CI/CD) i Microsoft Fabric giver udviklingsteams en standardiseret måde at bygge, gennemgå og frigive indhold hurtigt og pålideligt. I stedet for at bruge manuelle opdateringer integrerer teams ofte ændringer gennem versionskontrol og leverer dem via automatiserede pipelines. Denne tilgang sikrer, at nye funktioner og fejlrettelser hurtigt og sikkert når produktion.

Fabric CI/CD-platformen er bygget på Fabric REST API'erne og samler versionskontrol, levering, konfiguration og udviklerværktøjer i en enkelt, integreret oplevelse. Resten af denne artikel gennemgår platformen lag for lag.

Fabric CI/CD-platformen ved et overblik

Fabric CI/CD-platformen spænder over flere kernefunktioner, alle bygget på Fabric REST API-fundamentet:

  • Git-integration - Synkroniser et arbejdsområde med et Git-repository i Azure DevOps eller GitHub med service principal-understøttelse.
  • Implementeringspipelines - Fremmer indhold på tværs af udviklings-, test- og produktionsfaser med konfigurationsregler og indholdssammenligning.
  • Fabric REST API'er - Grundlagslaget for item CRUD, item definitions, kapacitet, arbejdsområde, adgang og joboperationer.
  • Variabelbibliotek - Konfiguration som kode med værdisæt pr. trin for CI/CD, administreret via API'en eller UI'en.
  • Fabric CLI - Et open source, scriptbart, filsystem-lignende kommandolinjeværktøj, der er klar til GitHub Actions og Azure DevOps.
  • Terraform og fabric-cicd - Infrastruktur som kode til miljøer, hvor fabric-cicd er det mest udbredte implementeringsværktøj.

Diagram over Fabric CI/CD-platformkomponenterne: Git-integration, deployment pipelines, Fabric REST API'er, variabelbibliotek, Fabric CLI og Terraform med fabric-cicd.

Referencearkitektur

Den følgende virksomhedsreferencearkitektur viser, hvordan disse lag passer sammen. Udviklerværktøjer bygger på Fabric REST API-fundamentlaget. Indholdet flyder gennem Fabric-integrations- og leveringslaget med variabelbiblioteket, Git-integration og deployment-pipelines. Versionskontrol og CI-automatisering kører i GitHub eller Azure DevOps med en CI/CD-runner. De understøttende Azure- og Fabric-lejerressourcer inkluderer Dev-, Test- og Produktionskapaciteter, Azure Key Vault, et privat netværk, lejerindstillinger, forbindelser, domæner samt forældre- og branch-arbejdsområder oprettet gennem branch-out.

Enterprise reference arkitektur-diagram, der viser udviklerstyringsværktøjer over Fabric REST API foundation-laget, Fabric-integrations- og leveringslaget med variabelbibliotek, Git-integration og deployment-pipelines, versionskontrol og CI-automatisering med GitHub, Azure DevOps og en CI/CD-runner, samt Azure og Fabric tenant resource plan med Dev, Test og Produktionskapaciteter, Azure Key Vault, et privat netværk samt forældre- og branch-arbejdsområder.

Fabric REST API'er: fundamentet

Alle Fabric CI/CD-funktioner bygger på Fabric REST API'erne, som giver programmatisk adgang til kerneoperationer: oprettelse af elementer, læsning, opdatering og sletning, varedefinitioner, kapacitet, arbejdsområde og adgangsstyring samt jobplanlægning. Alle højere niveau-oplevelser, fra Git-integration til deployment-pipelines, bruger disse API'er, så alt, hvad du laver i portalen, kan du også automatisere.

Integration og levering af Fabric

Dette lag flytter indholdet pålideligt fra udvikling til produktion gennem tre komplementære funktioner.

Bemærk

Nogle af elementerne til CI/CD er en prøveversion. Se listen over understøttede elementer for Git-integrations- og deploymentspipeline-funktionerne .

Git-integration

Rutediagram, der viser forbindelsen mellem den eksterne Git-forgrening og det direkte arbejdsområde.

Ved at bruge Fabric's Git-integration kan flere udviklere ofte og pålideligt foretage inkrementelle opdateringer af arbejdsområdet. Ved at anvende Git-fordele og bedste praksis samarbejder udviklerne og sikrer, at indholdsændringer hurtigt og pålideligt når arbejdsområdet. Når indholdet er klar, kan leveringsprocessen derefter levere det til deployment-pipelines til test og distribution.

Udrulningspipelines

Illustration, der viser dataflowet i en udrulningspipeline fra data til app.

Fabric's deploymentspipelinesautomatiserer leveringen af modificeret indhold til miljøer som test og produktion. Teams producerer opdateringer i korte cyklusser med høj hastighed, hyppighed og pålidelighed. Du kan frigive indhold når som helst med en simpel, gentagelig implementeringsproces.

For den mest effektive CI/CD-oplevelse i Fabric, forbind dit udviklerarbejdsområde til Git og deploy fra det forbundne arbejdsområde ved at bruge deployment-pipelines.

Variabelt bibliotek

Ved at bruge variabelbiblioteker kan du:

  • Definer og administrer brugerdefinerede variabler på en samlet måde for alle arbejdsområdeelementer.
  • Brug variablerne forskellige steder i produktet: i artikeldefinitioner som forespørgsler, som referencer til andre elementer som et lakehouse-ID og mere.
  • Genanvend variabler på tværs af Fabric-arbejdsbelastninger og varer. For eksempel kan flere elementer i arbejdsområdet referere til den samme variabel.
  • Justér værdier baseret på release-pipeline-stadiet for CI/CD.

Versionskontrol og CI-automatisering

Fabric Git-integration forbinder et arbejdsområde med et Git-repository i enten GitHub eller Azure DevOps. Din kontinuerlige integrationsautomatisering, såsom validering af en pull request eller opdatering af et integrationsarbejdsområde fra Git, kører i enhver CI/CD-runner: GitHub Actions, Azure Pipelines eller en selvhostet runner. Service principal-support gør det muligt for disse automatiserede flows at autentificere uden en indlogget bruger via Azure DevOps-udbyderen.

Udviklerværktøjer og infrastruktur som kode

Udviklere driver platformen gennem scriptbare værktøjer, der bygger på Fabric REST API'erne.

Stof CLI

Fabric CLI (fab) er et open source, scriptbart kommandolinjeværktøj med en filsystem-lignende grænseflade over Fabric. Det fungerer godt i GitHub Actions og Azure DevOps til at automatisere Git-synkronisering, udrulning og varehåndtering.

Terraform og fabric-cicd

For infrastruktur som kode bruges Terraform-udbyderen for Fabric til at levere Fabric-miljøer såsom arbejdsområder og kapaciteter. Brug fabric-cicd, et Python-bibliotek, til at deploye item-definitioner fra et kildekontrolleret repository. fabric-cicd er det mest udbredte implementeringsværktøj til Fabric CI/CD.