繁体   English   中英

使用Powershell的Azure数据工厂连续部署

[英]Azure Data factory continous deployment using powershell

我需要为Azure数据工厂(ADF)进行持续集成和部署。

为此,在Visual Studio解决方案中,我有两个项目:

  • 一个用于ADF json文件(链接的服务,数据集等)。
  • 一个用于PowerShell脚本的脚本,用于将该ADF部署到Azure订阅中。

遵循的步骤

使用ADF代码的MSBUILD,并使用复制文件任务将其复制到$(Build.ArtifactStagingDirectory)

使用“发布工件”任务在VSTS中进行发布。

将PowerShell脚本的工件发布为单独的版本。

发布

在我的发行版中,我有一个Azure PowerShell脚本,它将调用这些ADF文件并将其部署在Azure订阅中。 我正在使用“ Build.ArtifactStagingDirectory”来引用我的ADF文件。 但我收到以下错误-

术语“ Build.ArtifactStagingDirectory”不被视为cmdlet,函数,脚本文件或可操作程序的名称

foreach($file in Get-ChildItem "$(Build.ArtifactStagingDirectory)" -filter "*LinkedService*")
{
    New-AzureRmDataFactoryLinkedService -ResourceGroupName "ADFAutomationResource" -DataFactoryName "ADFCICD190218" -Name $file.BaseName -File $file.FullName -Force | Format-List
}

让我知道在这种情况下如何进行操作。因为没有足够的链接来说明这一点。

尝试:

foreach($file in Get-ChildItem $Build.ArtifactStagingDirectory -filter "*LinkedService*")
{
    New-AzureRmDataFactoryLinkedService -ResourceGroupName "ADFAutomationResource" -DataFactoryName "ADFCICD190218" -Name $file.BaseName -File $file.FullName -Force | Format-List
}

您在Release中引用Build变量!

我假设您已将工件添加到发行版中?

释放工件

如果是这样的话; 您应该可以像这样引用它们:

$(System.DefaultWorkingDirectory)/<Artifact Name>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM