从.csv标记Azure资源

时间:2018-10-14 11:03:45

标签: powershell azure-devops devops-services

是否有一种简便的方法可以从PowerShell脚本读取VSTS管道中的.csv?

我有一个可以标记Azure资源的脚本,它从.csv文件获取键值对。在本地运行并运行时,它很有吸引力:

$csv = Import-Csv "d:\tagging\tags.csv"

但是我正在努力寻找一种在VSTS(Devops Services)中引用.csv的方法。我已将带有脚本的.csv放入同一存储库/文件夹中,并且创建了Azure PowerShell脚本任务。

我需要知道Import-Csv在VSTS中应该是什么样。我是否需要添加其他步骤,以便代理在运行脚本时下载.csv?

这是当前错误:

  

托管代理找不到文件,并报告“找不到文件'D:\ a_tasks \ AzurePowerShell_72s1a1931b-effb-4d2e-8fd8-f8472a07cb62 \ 3.1.6 \ tags.csv'。

1 个答案:

答案 0 :(得分:2)

假设您将文件放在/AwesomeCSV/MyCSV.csv位置的仓库中。从构建的角度来看,您的CSV位置为$(Build.SourcesDirectory)/AwesomeCSV/MyCSV.csv

因此,基本上,将$(Build.SourcesDirectory)/AwesomeCSV/MyCSV.csv作为参数传递给脚本,或将其作为脚本中的环境变量引用为$env:BUILD_SOURCESDIRECTORY