샘플 배포 전 및 배포 후 스크립트

적용 대상: Azure Data Factory Azure Synapse Analytics

기업용 올인원 분석 솔루션인 Microsoft Fabric의 Data Factory를 사용해 보세요. Microsoft Fabric은 데이터 이동부터 데이터 과학, 실시간 분석, 비즈니스 인텔리전스 및 보고에 이르기까지 모든 것을 다룹니다. 무료로 새 평가판을 시작하는 방법을 알아봅니다!

다음 샘플에서는 Azure Data Factory에서 연속 통합 및 지속적인 업데이트와 함께 배포 전/배포 후 스크립트를 사용하는 방법을 보여 줍니다.

Azure PowerShell 설치

Azure PowerShell을 설치 및 구성하는 방법의 지침에 따라 최신 Azure PowerShell 모듈을 설치합니다.

Warning

ADO 작업에서 PowerShell Core를 사용하여 스크립트를 실행해야 합니다.

배포 전 및 배포 후 스크립트

릴리스 프로세스(CICD) 중에 트리거를 중지/시작하고 전역 매개 변수를 업데이트하는 샘플 스크립트는 Azure Data Factory 공식 GitHub 페이지에 있습니다.

참고 항목

CI/CD 중에 모든 트리거를 끄거나 켜는 대신 수정된 트리거만 끄거나 켜려면 PrePostDeploymentScript.Ver2.ps1을 사용합니다.

스크립트 실행 및 매개 변수

다음 샘플 스크립트를 사용하여 배포 전에 트리거를 중지하고 나중에 다시 시작할 수 있습니다. 스크립트에는 제거된 리소스를 삭제하는 코드도 포함됩니다. 스크립트를 Azure DevOps Git 리포지토리에 저장하고 최신 Azure PowerShell 버전의 Azure PowerShell 작업을 통해 해당 스크립트를 참조합니다.

배포 전 스크립트를 실행할 때 스크립트 인수 필드에 다음 매개 변수의 변형을 지정해야 합니다.

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

배포 후 스크립트를 실행할 때 스크립트 인수 필드에 다음 매개 변수의 변형을 지정해야 합니다.

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

참고 항목

-deleteDeployment 플래그는 ARM의 배포 기록에서 ADF 배포 항목의 삭제를 지정하는 데 사용됩니다.

Azure PowerShell task

스크립트 실행 및 매개 변수 - YAML 파이프라인

다음 YAML 코드는 배포 전에 트리거를 중지하고 나중에 다시 시작하는 데 사용할 수 있는 스크립트를 실행합니다. 스크립트에는 제거된 리소스를 삭제하는 코드도 포함됩니다. 새 CI/CD 흐름에 설명된 단계를 따르는 경우 이 스크립트는 npm 게시 패키지를 통해 만들어진 아티팩트의 일부로 내보내집니다.

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

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