Partilhar via


Exemplo de script pré e pós-implantação

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Gorjeta

Data Factory em Microsoft Fabric é a próxima geração de Azure Data Factory, com uma arquitetura mais simples, IA incorporada e novas funcionalidades. Se és novo na integração de dados, começa pelo Fabric Data Factory. As cargas de trabalho existentes do ADF podem atualizar para o Fabric para aceder a novas capacidades em ciência de dados, análise em tempo real e relatórios.

O exemplo seguinte demonstra como usar um script pré e pós-implementação com integração e entrega contínuas no Azure Data Factory.

Install Azure PowerShell

Instale os módulos Azure PowerShell mais recentes seguindo as instruções em Como instalar e configurar Azure PowerShell.

Aviso

Certifique-se de usar o PowerShell Core na tarefa ADO para executar o script

Script pré e pós-implantação

Os scripts de exemplo para parar/iniciar triggers e atualizar parâmetros globais durante o processo de lançamento (CICD) encontram-se na página oficial GitHub Azure Data Factory.

Nota

Utilize o PrePostDeploymentScript.Ver2.ps1 no caso de querer desligar ou ligar apenas os gatilhos modificados, em vez de desligar ou ligar todos os gatilhos durante o CI/CD.

Execução de scripts e parâmetros

O script de exemplo a seguir pode ser usado para parar gatilhos antes da implantação e reiniciá-los depois. O script também inclui código para excluir recursos que foram removidos. Guarde o script num repositório git do Azure DevOps e faça referência nele através de uma tarefa do Azure PowerShell na versão mais recente do Azure PowerShell.

Ao executar um script de pré-implementação, necessita especificar uma variação dos seguintes parâmetros no campo Argumentos de Script.

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

Ao executar um script de pós-implantação, é necessário especificar uma variação dos seguintes parâmetros no campo Argumentos de Script.

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

Nota

O -deleteDeployment indicador é usado para especificar a eliminação da entrada de implantação do ADF no histórico de implantação no ARM.

Tarefa do Azure PowerShell

Execução de scripts e parâmetros - YAML Pipelines

O código YAML a seguir executa um script que pode ser usado para parar gatilhos antes da implantação e reiniciá-los depois. O script também inclui código para excluir recursos que foram removidos. Se você estiver seguindo as etapas descritas em Novo fluxo de CI/CD, esse script será exportado como parte do artefato criado por meio do pacote de publicação npm.

Parar gatilhos do ADF

 - 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: ../

Iniciar disparadores do ADF

          - 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: ../