这是我的第一个管道,所以我确定我缺少一些非常简单的内容。
我创建并成功运行了天蓝色管道。 现在,我想创建一个发行版并将其传输到我的ftp服务器,因此我创建了一个发行版,将其连接到构建工件,然后添加一个阶段。
在舞台上,我添加了ftp任务以上传发行版。 问题是我应该在根字段上设置什么。我尝试了很多事情,但没有任何效果。 我使用浏览窗口设置了值,但指向无效的位置。我尝试了许多变化,但都没有成功。
这是yml:
steps:
- task: FtpUpload@2
displayName: 'FTP Upload: /'
inputs:
credentialsOption: inputs
serverUrl: '*****'
username: ****
password: '*****'
rootDirectory: /
remoteDirectory: '/azure/$(Build.BuildId)/'
这是日志:
2019-11-22T15:14:43.8429924Z ## [section]开始:FTP上传: $(System.DefaultWorkingDirectory)/ _ AzureTP-ASP.NET Core(.NET 框架)-CI 2019-11-22T15:14:44.0673529Z ================================================== ============================= 2019-11-22T15:14:44.0673684Z任务:FTP上传 2019-11-22T15:14:44.0673747Z说明:使用FTP上传文件 2019-11-22T15:14:44.0673783Z版本:2.157.0 2019-11-22T15:14:44.0673817Z作者:Microsoft Corporation 2019-11-22T15:14:44.0673852Z帮助: https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/ftp-upload 2019-11-22T15:14:44.0673903Z ================================================== ============================ 2019-11-22T15:14:44.6355305Z ## [错误]错误:ENOENT:没有这样的文件要么 目录,目录'D:\ a \ r1 \ a_AzureTP-ASP.NET Core(.NET Framework)-CI'
ENOENT:没有这样的文件或目录,stat'D:\ a \ r1 \ a \ $(Build.SourcesDirectory)'
答案 0 :(得分:0)
构建变量在发行版上下文中不存在。您正在尝试使用构建变量。请参阅“ predefined variables”文档,该文档的发行版的变量标签上提供了指向该文档的链接。
答案 1 :(得分:0)
根目录应指向构建工件所在的文件夹。在发布管道中,通常将构建工件下载到C:\agent\_work\r1\a
所引用的文件夹$(System.DefaultWorkingDirectory) or $(System.ArtifactsDirectory)
中。您可以检查发布变量here
例如,yaml以下。希望对您有帮助
steps:
- task: FtpUpload@2
displayName: 'FTP Upload: /'
inputs:
credentialsOption: inputs
serverUrl: '*****'
username: ****
password: '*****'
rootDirectory: '$(System.DefaultWorkingDirectory)'
filePatterns: '**'
remoteDirectory: '/azure/$(Build.BuildId)/'