Del via


Kildekontrol- og udrulningspipelines i API til GraphQL (prøveversion)

Få mere at vide om, hvordan Git-integrations- og udrulningspipelines fungerer sammen med API til GraphQL i Microsoft Fabric. Denne artikel hjælper dig med at forstå, hvordan du konfigurerer en forbindelse til dit lager, administrerer din API til GraphQL og udruller dem på tværs af forskellige miljøer.

Hvem bruger versionskontrol og udrulning

Git-integration og implementeringspipelines er essentielle for:

  • Dataingeniører , der håndterer Fabric GraphQL API-konfigurationer gennem versionskontrol og CI/CD-workflows
  • Fabric workspace-administratorer koordinerer implementeringer på tværs af udviklings-, test- og produktions-Fabric-workspaces
  • DevOps-teams implementerer deployment-pipelines for Fabric API'er på tværs af flere miljøer og kapaciteter
  • Platformteams , der kræver governance, tracking og rollback-funktioner til ændringer i Fabric API

Brug versionsstyrings- og deployment-pipelines, når du skal administrere GraphQL API'er som en del af en struktureret udviklingslivscyklus med flere miljøer.

Seddel

API til GraphQL-kildestyring og -installation er i øjeblikket en prøveversion.

Forudsætninger

Oversigt

Fabric tilbyder effektive værktøjer til CI/CD (kontinuerlig integration og kontinuerlig udrulning) og administration af udviklingslivscyklus via to hovedkomponenter: Git-integration (CI) og udrulningspipelines (CD). Arbejdsområder fungerer som centrale komponenter til både Git-synkroniserings- og udrulningsfaser.

Git-integration (CI): Synkroniserer arbejdsområdeelementer (for eksempel kode, konfigurationer, API'er) med versionskontrolrepositorier, hvilket muliggør versionskontrol og ændringssporing via Git.

Deployment pipelines (CD): Muliggør oprettelse af faser (for eksempel Udvikling, Test, Produktion) med sammenkoblede arbejdsområder. Elementer, der understøttes i hver fase, replikeres automatisk til efterfølgende faser, og ændringer i et arbejdsområde udløser udrulning i en udgivelsespipeline. Du kan konfigurere pipelinen for at sikre, at ændringer testes og udrulles effektivt på tværs af miljøer.

Fabric understøtter forskellige CI/CD-arbejdsprocesser, der er skræddersyet til almindelige scenarier. For mere information, se CI/CD workflow-muligheder i Fabric.

Seddel

Kun metadata kopieres under udrulning; Og data bliver ikke kopieret.

Elementer fra arbejdsområdet gemmes i det tilknyttede Git-lager som Infrastruktur som kode (IaC). Kodeændringer i lageret kan udløse udrulningen i pipelines. Denne metode giver dig mulighed for automatisk at replikere kodeændringer på tværs af faser til test- og produktionsudgivelsesformål.

Godkendelsesmetoder for datakilde

Når du opretter dit API til GraphQL, vælger du, hvordan klienterne autentificerer og får adgang til dine datakilder. Dette valg har betydelige konsekvenser for deployment-pipelines og autobinding-adfærd. Forståelse af disse autentificeringsmetoder er essentiel for planlægning af din CI/CD-arbejdsgang. For mere information om autobinding og implementeringsprocessen, se Forstå udrulningsprocessen.

Der er to forbindelsesmuligheder, når du forbinder datakilder til din API for GraphQL: Single sign-on (SSO) og gemte legitimationsoplysninger.

Skærmbillede af muligheder for GraphQL-forbindelse til datakilder.

Enkeltlogon (SSO)

Med SSO bruger API-klienter deres egne legitimationsoplysninger til at få adgang til datakilder. Den autentificerede API-bruger skal have rettigheder til både API'et og den underliggende datakilde.

Brug SSO når:

  • Eksponering af Fabric-datakilder (lakehouses, warehouses, SQL-analyseendepunkter)
  • Du vil have, at brugerne skal tilgå data baseret på deres individuelle tilladelser
  • Du har brug for, at sikkerheds- eller andre dataadgangspolitikker på rækkeniveau anvendes pr. bruger

Tilladelseskrav:

  • API-brugere har brug for Execute-tilladelser på GraphQL API'en (Run Queries and Mutations)
  • API-brugere har brug for læse- eller skrivetilladelser på datakilden
  • Alternativt kan brugere tilføjes som workspace-medlemmer med bidragyderrolle , hvor både API og datakilde er placeret

Autobinding-adfærd i deployment-pipelines: Når du deployer et API ved hjælp af SSO fra kildearbejdsområdet (for eksempel Dev) til målarbejdsområdet (for eksempel Test):

  • Datakilden og GraphQL API'et er begge deployeret til målarbejdsområdet
  • API'et i målarbejdsområdet binder automatisk til den lokale datakildekopi i målarbejdsområdet
  • Hvert miljø (Dev, Test, Production) bruger sin egen datakildeinstans

Seddel

Der er specifikke begrænsninger ved brug af SSO med SQL Analytics Endpoints. Se Nuværende begrænsninger for detaljer.

Gemte legitimationsoplysninger

Med gemte legitimationsoplysninger autentificerer en enkelt delt legitimation mellem API'et og datakilderne. API-brugere behøver kun adgang til selve API'et, ikke de underliggende datakilder.

Brug gemte legitimationsoplysninger når:

  • Eksponering af Azure-datakilder (Azure SQL Database, eksterne databaser)
  • Du ønsker forenklet tilladelsesstyring (brugere behøver kun API-adgang)
  • Alle API-brugere bør tilgå de samme data med de samme tilladelser
  • Du har brug for ensartede legitimationsoplysninger på tværs af alle API-anmodninger

Tilladelseskrav:

  • API-brugere behøver kun Execute-tilladelser på GraphQL API'et (Run Queries and Mutations)
  • Den gemte legitimation skal have passende tilladelser på datakilden
  • Udviklere, der implementerer API'en, skal have adgang til den gemte legitimation

Autobinding-adfærd i deployment-pipelines: Når du deployer et API ved at bruge gemte legitimationsoplysninger fra kildearbejdsområdet (Dev) til målarbejdsområdet (Test):

  • Datakilden deployeres til målarbejdsområdet
  • API'en i målarbejdsområdet forbliver forbundet til datakilden i kildearbejdsområdet (Dev)
  • Autobinding sker ikke – det deployerede API fortsætter med at bruge den gemte legitimation og peger på den oprindelige datakilde
  • Du skal manuelt omkonfigurere forbindelser eller oprette nye gemte legitimationsoplysninger i hvert målmiljø

Important

Når du vælger en autentificeringsmetode til dit API, gælder den for alle datakilder, der tilføjes til det API. Du kan ikke blande SSO og gemte legitimationsoplysninger i samme API.

Tværgående arbejdsområdeforbindelser

Hvis dit API i kildearbejdsområdet (Dev) forbinder til en datakilde i et andet arbejdsområde, forbliver det implementerede API i målarbejdsområdet (Test) forbundet til den eksterne datakilde uanset autentificeringsmetoden. Autobinding virker kun, når både API'en og datakilden er i samme kildearbejdsområde.

Følgende diagram illustrerer disse udrulningsscenarier:

Skærmbillede af pipeline til forskellige datakildeforbindelser og scenarier.

For mere information om opsætning af disse autentificeringsmetoder, når du opretter dit API, se Connect to a data source.

API til GraphQL Git-integration

Fabric API for GraphQL understøtter Git-integration, hvilket gør det muligt for dig at administrere dine GraphQL API'er som kode i dit versionskontrolsystem. Denne integration giver versionshistorik, samarbejde gennem branchs og pull requests, mulighed for at tilbagerulle ændringer og en komplet auditspor af API-ændringer. Ved at behandle din GraphQL API-konfiguration som Infrastructure as Code (IaC) kan du anvende softwareudviklingspraksis på dit dataadgangslag.

Git-integration er essentiel for:

  • Versionskontrol: Følg alle ændringer i dit GraphQL-skema, datakildeforbindelser og relationer over tid
  • Samarbejde: Arbejd med teammedlemmer ved hjælp af branches, pull requests og kodegennemgange
  • Rollback-funktion: Gå tilbage til tidligere API-konfigurationer, når der opstår problemer
  • Miljøfremme: Brug Git som sandhedskilde til at implementere API'er på tværs af miljøer

Forbind dit arbejdsområde til Git

For at aktivere Git-integration for dine GraphQL API'er:

  1. Åbn arbejdsområde-indstillinger for det arbejdsområde, der indeholder dit API til GraphQL
  2. Konfigurer Git-forbindelsen til dit repository (Azure DevOps, GitHub eller en anden Git-udbyder)
  3. Når de er forbundet, vises alle arbejdsområder, inklusive API'er for GraphQL, i kildekodepanelet

For detaljerede opsætningsinstruktioner, se Kom i gang med Git-integration.

Skærmbillede af status for arbejdsområde og kildekontrol.

Commit og synkroniser dine GraphQL API'er

Efter at have forbundet til Git kan du committe dit API for GraphQL-konfigurationer til repositoriet. Hver commit skaber et øjebliksbillede af din API-definition, herunder:

  • GraphQL-skemadefinitioner
  • Datakildeforbindelser og autentificeringsindstillinger
  • Relationskonfigurationer
  • Forespørgsels- og mutationsdefinitioner

Når de er committet, vises dine GraphQL API'er i dit Git-repository med et struktureret mappehierarki. Fra dette punkt kan du udnytte standard Git-workflows som at oprette pull requests, administrere branchs og samarbejde med dit team gennem kodegennemgange. For mere information om at arbejde med grene, se Administrer grene.

GraphQL API-repræsentation i Git

Hvert API for GraphQL-element gemmes i Git med en veldefineret mappestruktur, der repræsenterer alle aspekter af din API-konfiguration:

Skærmbillede af repræsentation af filstruktur i Git til GraphQL.

API-definitionsfilerne indeholder alle metadata, der er nødvendige for at genskabe dit GraphQL API i ethvert Fabric-arbejdsområde. Dette inkluderer skemadefinitioner, datakildekortlægninger og konfigurationsindstillinger. Når du synkroniserer fra Git tilbage til et Fabric-arbejdsområde, bruger systemet disse definitionsfiler til at gendanne dit API præcis, som det var, da det blev committet:

Skærmbillede af API til GraphQL-definitioner, der er gemt i Git.

Arbejde med API-definitionsfiler:

GraphQL API-definitionsformatet følger Fabrics Infrastructure as Code (IaC)-standarder. Du kan se og redigere disse filer direkte i dit Git-repository, men de fleste ændringer bør foretages via Fabric-portalen for at sikre skemaets gyldighed. Definitionsfilerne er særligt nyttige til:

  • Kodegennemgange: Teammedlemmer kan gennemgå API-ændringer i pull requests
  • Dokumentation: Filerne fungerer som dokumentation for din API-struktur
  • Automatisering: CI/CD-pipelines kan læse disse filer for at forstå API-konfigurationer
  • Katastrofegendannelse: Komplette API-definitioner bevares i versionskontrol

For detaljeret information om GraphQL API-definitionsformat, syntaks og eksempler, se dokumentationen for Fabric control plane API'er:

API til GraphQL i udrulningspipeline

Deployment pipelines gør det muligt for dig at promovere dit API til GraphQL-konfigurationer på tværs af miljøer (typisk udvikling, test og produktion). Når du deployerer et API til GraphQL gennem en pipeline, kopieres kun API-metadata—inklusive skemadefinitioner, datakildeforbindelser og relationskonfigurationer. De faktiske data forbliver i de tilknyttede datakilder og kopieres ikke under udrulningen.

Vigtige overvejelser om udrulning:

Før du implementerer, skal du forstå, hvordan autentificeringsmetoder og arbejdsområdeorganisering påvirker din implementering:

  • API'er, der bruger Single Sign-On (SSO), kan automatisk binde til lokale datakilder i det pågældende arbejdsområde (når datakilden også blev deployeret fra samme kildearbejdsområde)
  • API'er, der bruger gemte legitimationsoplysninger , binder ikke automatisk og forbliver forbundet til kildearbejdsområdets datakilde
  • Datakilder på tværs af arbejdsområder autobinder aldrig, uanset autentificeringsmetode

For en omfattende forståelse af implementeringsprocessen, se Forstå implementeringsprocessen.

Udrul dit API til GraphQL

For at udrulle dit API til GraphQL ved hjælp af deployment-pipelines:

  1. Opret en ny udrulningspipeline, eller åbn en eksisterende. For detaljerede instruktioner, se Kom i gang med deployment-pipelines.

  2. Tildel arbejdsområder til pipeline-stadierne (Udvikling, Test, Produktion) baseret på din implementeringsstrategi. Hver bane bør have et dedikeret arbejdsområde.

  3. Gennemgå og sammenlign genstande mellem stadier. Pipelinen viser, hvilke API'er for GraphQL der er ændret, angivet ved antal elementer i de fremhævede områder. Denne sammenligning hjælper dig med at forstå, hvad der vil blive påvirket af implementeringen.

    Skærmbillede af pipeline, der illustrerer elementers status i hver udviklingsfase.

  4. Vælg API'erne for GraphQL og eventuelle relaterede elementer (såsom forbundne datakilder), som du vil implementere. Vælg derefter Deploy for at flytte dem til næste fase.

    Skærmbillede af pipeline, der viser de valgte elementer, der skal installeres.

  5. Gennemgå udrulningsbekræftelsesdialogen, som viser alle elementer, der er ved at blive udsendt. Vælg Deploy for at fortsætte.

    Skærmbillede af pipeline, der viser en bekræftelsesmeddelelse om udrulning.

Aktuelle begrænsninger

Når man deployerer API'er til GraphQL gennem deployment-pipelines, har autobinding følgende begrænsninger:

  • Underordnede elementer: Autobinding virker ikke, når API'et forbinder til et SQL Analytics Endpoint, der er et barn af en forældre-datakilde (såsom en Lakehouse). Det deployerede API forbliver forbundet til kildearbejdsområdets endepunkt.

  • Gemte legitimationsoplysninger: API'er, der bruger autentificeringsmetoden Gemte oplysninger, understøtter ikke autobinding. API'et forbliver forbundet til kildearbejdspladsens datakilde efter udrulning.

For detaljeret information om autentificeringsmetoder og deres autobindingsadfærd, se Data source authentication methods.