Ukázkový skript před nasazením a po nasazení

PLATÍ PRO: Azure Data Factory Azure Synapse Analytics

Tip

Vyzkoušejte si službu Data Factory v Microsoft Fabric, řešení pro analýzy typu all-in-one pro podniky. Microsoft Fabric zahrnuje všechno od přesunu dat až po datové vědy, analýzy v reálném čase, business intelligence a vytváření sestav. Přečtěte si, jak začít používat novou zkušební verzi zdarma.

Následující ukázka ukazuje použití skriptu před nasazením s kontinuální integrací a doručováním ve službě Azure Data Factory.

Instalace prostředí Azure PowerShell

Nainstalujte nejnovější moduly Azure PowerShellu podle pokynů v tématu Instalace a konfigurace Azure PowerShellu.

Upozorňující

Ujistěte se, že ke spuštění skriptu používáte PowerShell Core v úloze ADO.

Skript před nasazením a po nasazení

Ukázkové skripty pro zastavení a spuštění triggerů a aktualizaci globálních parametrů během procesu vydávání (CICD) se nacházejí na oficiální stránce Azure Data Factory na GitHubu.

Poznámka:

PrePostDeploymentScript.Ver2.ps1 použijte, pokud chcete vypnout nebo zapnout pouze triggery, které byly upraveny, místo aby se všechny triggery vypnuly nebo zapnuly během CI/CD.

Spouštění a parametry skriptu

Následující ukázkový skript lze použít k zastavení triggerů před nasazením a následnému restartování. Skript také obsahuje kód pro odstranění prostředků, které byly odebrány. Uložte skript v úložišti Git Azure DevOps a odkazujte na něj prostřednictvím úlohy Azure PowerShellu s nejnovější verzí Azure PowerShellu.

Při spuštění skriptu předběžného nasazení je nutné zadat variantu následujících parametrů v poli Argumenty skriptu.

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

Při spuštění skriptu postdeployment je nutné zadat variantu následujících parametrů v poli Argumenty skriptu.

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

Poznámka:

Příznak -deleteDeployment slouží k určení odstranění položky nasazení ADF z historie nasazení v ARM.

Azure PowerShell task

Spouštění a parametry skriptu – Kanály YAML

Následující kód YAML spustí skript, který lze použít k zastavení triggerů před nasazením a následnému restartování. Skript také obsahuje kód pro odstranění prostředků, které byly odebrány. Pokud postupujete podle kroků popsaných v novém toku CI/CD, exportuje se tento skript jako součást artefaktu vytvořeného prostřednictvím balíčku pro publikování npm.

Zastavení triggerů 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: ../

Spuštění triggerů 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: ../