Automatizza le implementazioni con un piano di distribuzione (anteprima)

Un piano di distribuzione estende una richiesta API esistente. Non sostituisce il flusso standard dell'API. Aggiungi un piano per impostare l'ordine degli articoli. Un piano può anche eseguire azioni prima o dopo il dispiegamento di un oggetto. La richiesta originale imposta comunque la fonte, il target e gli elementi selezionati.

Important

Questa funzionalità si trova in Anteprima.

Scegli un flusso di lavoro di automazione

Inizia con la guida all'automazione per la tua attività. Poi aggiungi l'input del piano di dispiegamento da questo articolo.

API che accetta un piano di distribuzione Linee guida esistenti per l'automazione
Aggiornamento da Git Automatizzare l'integrazione di Git usando le API
Contenuto della fase di distribuzione Automatizza la tua pipeline di distribuzione con le API Fabric
Definizioni degli elementi per l'importazione in blocco Fabric CI/CD con API per definizioni di oggetti di importazione in blocco

Senza un piano di deployment, ogni API funziona come prima.

Queste sono le API che accettano l'input deploymentPlan . Il tuo flusso di lavoro può anche chiamare altre API per preparare l'operazione o verificarne il stato. Continua a utilizzare quelle API di supporto come descritto nella guida di automazione esistente.

Prerequisiti

Prima di aggiungere un piano:

  • Crea il piano di distribuzione. Assicurati che l'operazione possa risolvere il problema.
  • Prendi un token di accesso Microsoft Entra. Usalo per l'API Fabric.
  • Assicurati che chi chiami abbia i ruoli richiesti dall'operazione originale.
  • Assicurati che il token includa l'ambito dell'operazione originale e Item.Execute.All.
  • Aggiungi beta=true all'URL dell'operazione.

Il token deve includere questi telescopi:

Operation Ambito operativo originale Ambito aggiuntivo quando viene fornito un piano
Aggiornare da Git Workspace.GitUpdate.All Item.Execute.All
Distribuire il contenuto della fase Pipeline.Deploy oppure DeploymentPipeline.Deploy.All Item.Execute.All
Definizioni di Elementi per l'Importazione in Blocco Item.ReadWrite.All Item.Execute.All

Il chiamante ha anche bisogno dei ruoli elencati nel riferimento API originale. Lo stesso riferimento elenca i tipi di identità supportati dall'API. Un principale di servizio o un'identità gestita funziona solo se ogni elemento nell'operazione lo supporta.

Aggiungi il piano di dispiegamento a una richiesta

Per ogni API supportata:

  1. Aggiungi beta=true all'URL della richiesta.
  2. Aggiungi un deploymentPlan oggetto all'interno dell'oggetto esistente options .
  3. Mantieni il resto della richiesta invariato.

Usa la proprietà minuscola referenceType . Il valore fa distinzione tra maiuscole e minuscole.

Aggiorna un workspace da Git

Usa l'ID logico del piano. Il piano può provenire dallo spazio di lavoro o dai contenuti Git in arrivo. Per un piano memorizzato in Git, trova l'ID logico nel suo .platform file.

Per una sincronizzazione iniziale basata su API, chiama prima Initialize Connection . Se la risposta richiede un aggiornamento, aggiungi il piano alla seguente richiesta Update From Git. Initialize Connection non accetta un piano di deployment.

POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/git/updateFromGit?beta=true

Aggiungi il seguente oggetto alla richiesta Update From Git:

{
  "options": {
    "deploymentPlan": {
      "logicalId": "00000000-0000-0000-0000-000000000000",
      "referenceType": "ByLogicalId"
    }
  }
}

Mantieni workspaceHead, remoteCommitHash, la risoluzione dei conflitti e le altre opzioni. Compila la richiesta completa utilizzando la guida di automazione Git. La guida mostra anche come interrogare lo stato dell'operazione. Vedi aggiornamento da Git.

Distribuzione dei contenuti tra le fasi della pipeline

Fai riferimento al piano di distribuzione tramite il relativo ID elemento.

POST https://api.fabric.microsoft.com/v1/deploymentPipelines/{deploymentPipelineId}/deploy?beta=true

Aggiungi il seguente oggetto alla richiesta di contenuto della fase di distribuzione:

{
  "options": {
    "deploymentPlan": {
      "itemId": "00000000-0000-0000-0000-000000000000",
      "referenceType": "ByItemId"
    }
  }
}

Mantieni la fase sorgente, la fase target, gli elementi selezionati, la nota di distribuzione e altre opzioni. Compila la richiesta completa utilizzando la guida alla pipeline di distribuzione. La guida mostra anche come verificare lo stato dell'operazione. Vedi Automatizza la tua pipeline di distribuzione con API Fabric.

Importare le definizioni degli elementi

Usa l'ID logico del piano. Trovalo nel file del piano .platform.

POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/bulkImportDefinitions?beta=true

Aggiungi il piano di distribuzione alle opzioni di richiesta di importazione in massa:

{
  "options": {
    "allowPairingByName": false,
    "deploymentPlan": {
      "logicalId": "00000000-0000-0000-0000-000000000000",
      "referenceType": "ByLogicalId"
    }
  }
}

Tieni tutte le parti per definizione degli oggetti e le opzioni di importazione. Compila la richiesta completa usando il tutorial Bulk Import. Il tutorial mostra anche come interrogare lo stato dell'operazione. Vedi Fabric CI/CD con API di definizioni di oggetti per importazione in massa.

Scopri le modifiche al piano

Il piano cambia solo l'ordine e le azioni. Non cambia gli oggetti selezionati.

Input di richiesta Che cosa controlla
Richiesta API originale Sorgente, target, elementi selezionati e impostazioni specifiche per l'operazione
Piano di distribuzione Ordine esplicito degli elementi e azioni prima o dopo la distribuzione
Linea di Fabric Dipendenze che Fabric rileva tra elementi selezionati

Gli elementi selezionati al di fuori di un gruppo di distribuzione utilizzano il comportamento standard dell'operazione.

Per capire come funzionano insieme l'ambito della richiesta, le relazioni del piano, la linea di Fabric e le azioni, vedi Come funziona un piano di deployment.

Convalidare la richiesta

Prima di eseguire l'automazione, verifica che:

  • L'URL contiene beta=true.
  • Il token include Item.Execute.All e l'ambito dell'operazione originale.
  • L'oggetto deploymentPlan è all'interno options, non alla radice della richiesta.
  • referenceType Utilizza il valore documentato e il casing.
  • L'ID dell'oggetto o l'ID logico non sono vuoti o deformati.
  • L'operazione può risolvere il piano nello spazio di lavoro o nei contenuti in arrivo rilevanti.
  • La definizione del piano è valida e non contiene una dipendenza circolare.

L'operazione si interrompe quando la validazione, un elemento o un'azione falliscono. Fabric non annulla il lavoro completato.

Considerazioni e limitazioni

La fabric-cicd libreria non supporta i piani di implementazione. Usa Update From Git, Deploy Stage Content o Importa in blocco le definizioni degli elementi quando automatizzi una distribuzione con un piano.

Per tutti i vincoli del piano di distribuzione, vedi Considerazioni e limitazioni del piano di implementazione.

Gestire l'elemento del piano di dispiegamento

Un piano di dispiegamento è un elemento Fabric. Usa le seguenti API Fabric REST per gestirlo. Queste chiamate sono separate dall'operazione di distribuzione.

Task REST API
Crea un programma Creare un Piano di Distribuzione
Elenca i piani in uno spazio di lavoro Elementi di elenco
Acquista proprietà in progetto Ottieni l'oggetto
Ricevi la definizione del piano Ottieni la definizione dell'oggetto
Aggiorna le proprietà del piano Aggiorna elemento
Aggiornare la definizione del piano Aggiorna la definizione dell'articolo
Elimina un piano Elimina elemento

La definizione del piano di distribuzione contiene parti con un percorso, un carico utile Base64 e InlineBase64 un tipo di carico utile.