我尝试了很多次,但是仍然出现如下错误:
“管道无效。作业作业:步骤AzureFileCopy输入ConnectedServiceNameARM引用找不到的服务连接xxxxx-xxx-xx-xxxx-xxxxxxxx。该服务连接不存在或未被授权使用。授权详细信息,请参阅https://aka.ms/yamlauthz。”
在右侧,有一个“授权资源”按钮。但是无论我如何单击它,它都将显示“自动授权资源时发生错误”
这是我的yaml文件的一部分:
task: AzureFileCopy@3
inputs:
sourcePath:'AddFunction/bin/Debug/AddFunction.exe'
azureSubscription:'xxxxxx-xxxx-xxxx-xxxx-xxxxxxx'
destination: AzureBlob
storage:'1234'
containerName: 'test'
我还连接了Azure管道上的服务连接,并为我的资源类型选择了“ Azure资源管理器”。
任何想法或指示都将不胜感激。
答案 0 :(得分:1)
如果要将文件上传到Azure Blob,则可以由Azure Cli在Powershell脚本中执行完全相同的操作,并通过Azure Pipeline中的Powershell Task触发它。
# PowerShell
# Run a PowerShell script on Linux, macOS, or Windows
- task: PowerShell@2
inputs:
#targetType: 'filePath' # Optional. Options: filePath, inline
#filePath: # Required when targetType
Powershell脚本类似于
#First, You have to login with a service principal.
az login --service-principal -u $AZ_NAME -p $AZ_PWD --tenant $AZ_TENANT
#upload your file by az storage blob
az storage blob upload --container-name $container_name --file $file_to_upload --name $blob_name
这可能不是一个完美的答案,但我希望它能为您提供帮助并节省您的时间。