Hendelser
31. mars, 23 - 2. apr., 23
Det største stoff-, Power BI- og SQL-læringsarrangementet. 31. mars til 2. april. Bruk koden FABINSIDER til å spare USD 400.
Registrer deg i dagDenne nettleseren støttes ikke lenger.
Oppgrader til Microsoft Edge for å dra nytte av de nyeste funksjonene, sikkerhetsoppdateringene og den nyeste tekniske støtten.
Microsoft Fabric Git-integreringsverktøyet gjør det mulig for team å samarbeide ved hjelp av kildekontroll for å bygge en effektiv og gjenbrukbar utgivelsesprosess for fabric-innholdet.
Med REST-API-er for Microsoft Fabric kan du automatisere Fabric-prosedyrer og -prosesser for å fullføre oppgaver raskere og med færre feil. Denne effektiviteten fører til kostnadsbesparelser og forbedret produktivitet.
Denne artikkelen beskriver hvordan du bruker REST-API-ene for Git-integrering til å automatisere Git-integrering i Microsoft Fabric.
Hvis du vil arbeide med Fabric Git API-er, trenger du:
De samme forutsetningene du trenger for å bruke Git-integrasjon i brukergrensesnittet.
Et Microsoft Entra-token for Fabric-tjenesten. Bruk dette tokenet i autorisasjonshodet for API-kallet. Hvis du vil ha informasjon om hvordan du får et token, kan du se Hurtigstart for Fabric API.
Du kan bruke REST-API-er uten PowerShell, men skriptene i denne artikkelen bruker PowerShell. Hvis du vil kjøre skriptene, må du utføre følgende trinn:
REST-API-ene for Git-integrering kan hjelpe deg med å oppnå kontinuerlig integrering og kontinuerlig levering (CI/CD) av innholdet. Her er noen eksempler på hva som kan gjøres ved hjelp av API-ene:
Se hvilke elementer som har innkommende endringer, og hvilke elementer som har endringer som ennå ikke er forpliktet til Git med Git-status-API-en.
Få tilkoblingsdetaljer for det angitte arbeidsområdet.
Koble til og koble et bestemt arbeidsområde fra Git-repositoriet og grenen som er koblet til det.
Oppdater git-legitimasjonen min for å oppdatere konfigurasjonsdetaljene for Git-legitimasjonen.
Få git-legitimasjonen min for å få konfigurasjonsdetaljene for Git-legitimasjonen.
Initialiser en tilkobling for et arbeidsområde som er koblet til Git.
Utfør endringene som er gjort i arbeidsområdet, til den tilkoblede eksterne grenen.
Oppdater arbeidsområdet med utføringer som er sendt til den tilkoblede grenen.
Bruk følgende PowerShell-skript til å forstå hvordan du utfører flere vanlige automatiseringsprosesser. Hvis du vil vise eller kopiere teksten i et PowerShell-eksempel, bruker du koblingene i denne inndelingen. Du kan også se alle eksemplene i Git-integreringseksemplet for Fabric GitHub.
Denne delen beskriver trinnene som er involvert i å koble til og oppdatere et arbeidsområde med Git.
Hvis du vil ha det fullstendige skriptet, kan du se Koble til og oppdatere fra Git.
Logg på og få tilgangstoken – Logg på Fabric som bruker (ikke tjenestekontohaver). Bruk kommandoen Connect-AzAccount til å logge på. Hvis du vil ha et tilgangstoken, bruker du kommandoen Get-AzAccessToken .
Koden skal se omtrent slik ut:
$global:resourceUrl = "https://api.fabric.microsoft.com"
$global:fabricHeaders = @{}
function SetFabricHeaders() {
#Login to Azure
Connect-AzAccount | Out-Null
# Get authentication
$fabricToken = (Get-AzAccessToken -AsSecureString -ResourceUrl $global:resourceUrl).Token
$global:fabricHeaders = @{
'Content-Type' = "application/json"
'Authorization' = "Bearer {0}" -f $fabricToken
}
}
Kall tilkoblings-API-en for å koble arbeidsområdet til et Git-repositorium og en gren.
# Connect to Git
Write-Host "Connecting the workspace '$workspaceName' to Git."
$connectUrl = "{0}/workspaces/{1}/git/connect" -f $global:baseUrl, $workspace.Id
# AzureDevOps details
$azureDevOpsDetails = @{
gitProviderType = "AzureDevOps"
organizationName = "<ORGANIZATION NAME>"
projectName = "<PROJECT NAME>"
repositoryName = "<REPOSITORY NAME>"
branchName = "<BRANCH NAME>"
directoryName = "<DIRECTORY NAME>"
}
$connectToGitBody = @{
gitProviderDetails =$azureDevOpsDetails
} | ConvertTo-Json
Invoke-RestMethod -Headers $global:fabricHeaders -Uri $connectUrl -Method POST -Body $connectToGitBody
Kall initialiser tilkoblings-API-en for å initialisere tilkoblingen mellom arbeidsområdet og Git-repositoriet/grenen.
# Initialize Connection
Write-Host "Initializing Git connection for workspace '$workspaceName'."
$initializeConnectionUrl = "{0}/workspaces/{1}/git/initializeConnection" -f $global:baseUrl, $workspace.Id
$initializeConnectionResponse = Invoke-RestMethod -Headers $global:fabricHeaders -Uri $initializeConnectionUrl -Method POST -Body "{}"
Basert på svaret fra API-en for Initialiser tilkobling, kan du kalle enten Oppdater fra Git-API-en for å fullføre oppdateringen, eller ikke gjøre noe hvis det ikke kreves noen handling.
Følgende skript oppdaterer og overvåker fremdriften:
if ($initializeConnectionResponse.RequiredAction -eq "UpdateFromGit") {
# Update from Git
Write-Host "Updating the workspace '$workspaceName' from Git."
$updateFromGitUrl = "{0}/workspaces/{1}/git/updateFromGit" -f $global:baseUrl, $workspace.Id
$updateFromGitBody = @{
remoteCommitHash = $initializeConnectionResponse.RemoteCommitHash
workspaceHead = $initializeConnectionResponse.WorkspaceHead
} | ConvertTo-Json
$updateFromGitResponse = Invoke-WebRequest -Headers $global:fabricHeaders -Uri $updateFromGitUrl -Method POST -Body $updateFromGitBody
$operationId = $updateFromGitResponse.Headers['x-ms-operation-id']
$retryAfter = $updateFromGitResponse.Headers['Retry-After']
Write-Host "Long Running Operation ID: '$operationId' has been scheduled for updating the workspace '$workspaceName' from Git with a retry-after time of '$retryAfter' seconds." -ForegroundColor Green
# Poll Long Running Operation
$getOperationState = "{0}/operations/{1}" -f $global:baseUrl, $operationId
do
{
$operationState = Invoke-RestMethod -Headers $global:fabricHeaders -Uri $getOperationState -Method GET
Write-Host "Update from Git operation status: $($operationState.Status)"
if ($operationState.Status -in @("NotStarted", "Running")) {
Start-Sleep -Seconds $retryAfter
}
} while($operationState.Status -in @("NotStarted", "Running"))
}
I denne delen beskriver vi trinnene som er involvert i å oppdatere et arbeidsområde med endringene fra Git. I dette skriptet oppdaterer vi arbeidsområdeelementene med endringer fra Git, men vi lar Git-repositoriet være uendret.
Hvis du vil ha det fullstendige skriptet, kan du se Oppdatere arbeidsområde fra Git.
Denne delen gir en trinnvis beskrivelse av hvordan du programmatisk utfører alle endringer fra arbeidsområdet til Git.
Hvis du vil ha hele skriptet, kan du se Utføre alle endringer i Git.
Denne delen beskriver trinnene som er involvert i å utføre bare spesifikke endringer fra arbeidsområdet til Git.
Hvis du vil ha det fullstendige skriptet, kan du se Utføre valg av endringer i Git.
Hvis du vil se hele skriptet, kan du se Avspørr en langvarig operasjon.
Hendelser
31. mars, 23 - 2. apr., 23
Det største stoff-, Power BI- og SQL-læringsarrangementet. 31. mars til 2. april. Bruk koden FABINSIDER til å spare USD 400.
Registrer deg i dagOpplæring
Modul
Implement continuous integration and continuous delivery (CI/CD) in Microsoft Fabric - Training
Learn the key concepts and strategies for implementing continuous integration and continuous deployment (CI/CD) in Microsoft Fabric.
Sertifisering
Microsoft Certified: Fabric Analytics Engineer Associate - Certifications
Som medarbejder hos Fabric Analytics-tekniker skal du have ekspertise inden for design, oprettelse og udrulning af dataanalyseløsninger i virksomhedsskala.