Condividi tramite


Esempio di script di pre-distribuzione e post-distribuzione

APPLICABILE A: Azure Data Factory Azure Synapse Analytics

Suggerimento

Data Factory in Microsoft Fabric è la nuova generazione di Azure Data Factory, con un'architettura più semplice, un'intelligenza artificiale predefinita e nuove funzionalità. Se non si ha familiarità con l'integrazione dei dati, iniziare con Fabric Data Factory. I carichi di lavoro di Azure Data Factory esistenti possono eseguire l'aggiornamento a Fabric per accedere a nuove funzionalità tra data science, analisi in tempo reale e creazione di report.

L'esempio seguente illustra come usare uno script di pre-distribuzione e post-distribuzione con integrazione e recapito continui in Azure Data Factory.

Installare Azure PowerShell

Installare i moduli di Azure PowerShell più recenti seguendo le istruzioni riportate in Come installare e configurare Azure PowerShell.

Avviso

Assicurarsi di usare PowerShell Core nell’attività ADO per eseguire lo script

Script di pre-distribuzione e post-distribuzione

Gli script di esempio per arrestare/avviare i trigger e aggiornare i parametri globali durante il processo di rilascio (CICD) si trovano nella pagina Azure Data Factory pagina ufficiale GitHub.

Nota

Usare il PrePostDeploymentScript.Ver2.ps1 se si vuole disattivare/attivare solo i trigger modificati anziché disattivare tutti i trigger durante CI/CD.

Esecuzione di script e parametri

Lo script di esempio seguente può essere usato per arrestare i trigger prima della distribuzione e riavviarli in seguito. Lo script include anche il codice per eliminare le risorse che sono state rimosse. Salva lo script in un repository Git di Azure DevOps e fai riferimento ad esso tramite un'attività di Azure PowerShell usando l'ultima versione di Azure PowerShell.

Quando si esegue uno script di pre-distribuzione, è necessario specificare una variante dei parametri seguenti nel campo Argomenti script .

-armTemplate "$(System.DefaultWorkingDirectory)/<your-arm-template-location>" -ResourceGroupName <your-resource-group-name> -DataFactoryName <your-data-factory-name> -predeployment $true -deleteDeployment $false

Quando si esegue uno script di post-distribuzione, è necessario specificare una variante dei parametri seguenti nel campo Argomenti script .

-armTemplate "$(System.DefaultWorkingDirectory)/<your-arm-template-location>" -ResourceGroupName <your-resource-group-name> -DataFactoryName <your-data-factory-name> -predeployment $false -deleteDeployment $true

Nota

Il -deleteDeployment flag serve per eliminare la voce di distribuzione di Azure Data Factory (ADF) dalla cronologia di distribuzione in ARM.

Azure PowerShell task

Esecuzione di script e parametri - Pipeline YAML

Il codice YAML seguente esegue uno script che può essere usato per arrestare i trigger prima della distribuzione e riavviarli in seguito. Lo script include anche il codice per eliminare le risorse che sono state rimosse. Se si seguono i passaggi descritti in Nuovo flusso CI/CD, questo script viene esportato come parte dell'artefatto creato tramite il pacchetto di pubblicazione npm.

Interrompi i trigger di Azure Data Factory

 - task: AzurePowerShell@5
            displayName: Stop ADF Triggers
            inputs:
              scriptType: 'FilePath'
              ConnectedServiceNameARM: AzureDevServiceConnection
              scriptPath: ../ADFTemplates/PrePostDeploymentScript.ps1
              ScriptArguments: -armTemplate "<your-arm-template-location>" -ResourceGroupName <your-resource-group-name> -DataFactoryName <your-data-factory-name> -predeployment $true -deleteDeployment $false
              errorActionPreference: stop
              FailOnStandardError: False
              azurePowerShellVersion: 'LatestVersion'
              pwsh: True
              workingDirectory: ../

Avvia i trigger di Azure Data Factory

          - task: AzurePowerShell@5
            displayName: Start ADF Triggers
            inputs:
              scriptType: 'FilePath'
              ConnectedServiceNameARM: AzureDevServiceConnection
              scriptPath: ../ADFTemplates/PrePostDeploymentScript.ps1
              ScriptArguments: -armTemplate "<your-arm-template-location>" -ResourceGroupName <your-resource-group-name> -DataFactoryName <your-data-factory-name>-predeployment $false -deleteDeployment $true
              errorActionPreference: stop
              FailOnStandardError: False
              azurePowerShellVersion: 'LatestVersion'
              pwsh: True
              workingDirectory: ../