Azure devops 如何在VST上配置要FTP部署的构建
我想在更新项目的主分支时使用VST构建和部署我的应用程序(到FTP)。我有下面的脚本。它的工作原理是触发和构建,但由于找不到文件,而且我不知道输入什么值,所以无法部署。我得到下面的错误 当VSTS构建时,它将构建文件放在哪里 我看过youtube,但所有的例子都很老,不能反映VST现在是如何工作的,所以我完全被卡住了。这里没有反映VST目前工作方式的文章,Microsoft页面也没有帮助 我已经没有文章要看了,现在我猜得差不多了,所以如果有任何帮助,我将不胜感激Azure devops 如何在VST上配置要FTP部署的构建,azure-devops,azure-pipelines-release-pipeline,Azure Devops,Azure Pipelines Release Pipeline,我想在更新项目的主分支时使用VST构建和部署我的应用程序(到FTP)。我有下面的脚本。它的工作原理是触发和构建,但由于找不到文件,而且我不知道输入什么值,所以无法部署。我得到下面的错误 当VSTS构建时,它将构建文件放在哪里 我看过youtube,但所有的例子都很老,不能反映VST现在是如何工作的,所以我完全被卡住了。这里没有反映VST目前工作方式的文章,Microsoft页面也没有帮助 我已经没有文章要看了,现在我猜得差不多了,所以如果有任何帮助,我将不胜感激 # ASP.NET Core
# ASP.NET Core
# Build and test ASP.NET Core projects targeting .NET Core.
# Add steps that run tests, create a NuGet package, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/dotnet-core
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
variables:
buildConfiguration: 'Release'
steps:
- script: dotnet build --configuration $(buildConfiguration)
displayName: 'dotnet build $(buildConfiguration)'
- task: FtpUpload@2
inputs:
credentialsOption: 'inputs'
serverUrl: 'ftp://xxxxxxx.xxxxxxxx.xxxxx/'
username: 'xxxxxxxxx'
password: 'xxxxxxxxxx'
rootDirectory: '/'
filePatterns: '**'
remoteDirectory: '/'
clean: false
cleanContents: true
preservePaths: false
trustSSL: false
我换了这个
rootDirectory: $(Agent.BuildDirectory)
我试过这个
rootDirectory: $(Build.StagingDirectory)
现在构建成功了,但是现在我得到了这个错误/警告。没有部署任何内容
当您设置
system.debug=true
,然后打开日志了解详细的编译过程时,您可以看到:
它正在查找您在任务中指定的目录“/
”。但不幸的是,通过/
获得的内容不属于回购协议的任何部分。然后服务器告诉您很抱歉,在您的repos中找不到这样的文件或目录
此参数用于从VSTS repos获取文件或文件夹,所以这里您需要使用一些词语让服务器知道您希望从repos获取什么
(1)由于此任务在您的构建管道中,您可以使用它来表示整个回购 (2)此外,如果您只想复制部分回购协议,如文件夹或文件,只需输入相对路径即可。例如:
- 上传文件夹
下的文件jobs
,只需 输入Upload.json
rootDirectory:jobs/upload.json
- 上传一个文件夹或文件,它位于Repos的根路径中,只需输入
,或rootDirectory:{folder name}
。比如:rootDirectory:{folder name}
,或者rootDirectory:jobs
rootDirectory:web.config
system.debug=true
,然后打开日志了解详细的编译过程时,您可以看到:
它正在查找您在任务中指定的目录“/
”。但不幸的是,通过/
获得的内容不属于回购协议的任何部分。然后服务器告诉您很抱歉,在您的repos中找不到这样的文件或目录
此参数用于从VSTS repos获取文件或文件夹,所以这里您需要使用一些词语让服务器知道您希望从repos获取什么
(1)由于此任务在您的构建管道中,您可以使用它来表示整个回购 (2)此外,如果您只想复制部分回购协议,如文件夹或文件,只需输入相对路径即可。例如:
- 上传文件夹
下的文件jobs
,只需 输入Upload.json
rootDirectory:jobs/upload.json
- 上传一个文件夹或文件,它位于Repos的根路径中,只需输入
,或rootDirectory:{folder name}
。比如:rootDirectory:{folder name}
,或者rootDirectory:jobs
rootDirectory:web.config
dotnet构建
步骤完成后,不知道文件/文件夹会去哪里吗?然后,您在rootDirectory
上被误导了?您没有将任何内容复制到“$(build.stagingdirectory)”,因此不会有任何内容需要上载。您必须添加一个复制任务或指向项目的生成输出,而不是只想检查下面的方法是否可以帮助您捕获成功管道。如果对您的问题没有帮助,请随时在下面留下评论:-)手动,我可以发布到本地文件夹,然后压缩/解压到我的主机。我所希望的是,当VSTS进行构建时,它会将文件放在发布位置的某个文件夹(类似)中,然后我可以添加一个任务或其他内容来执行复制位。我只是不知道如何或在哪里发布的文件古凯,似乎已经知道你的麻烦。在这个问题上,您面临的困惑是在dotnet构建
步骤完成后,不知道文件/文件夹会去哪里吗?那么,你在rootDirectory
上得到的这条线索被误导了?我不想要who回购。我只需要在应用程序构建时创建的文件的位置,以便将它们传输到webserver@djack109,我想确认一下我能给你什么帮助吗?如果这个答案对你有用,你可以接受它,这将有利于其他社区。我不想要who回购协议。我只需要在应用程序构建时创建的文件的位置,以便将它们传输到webserver@djack109,我想确认一下我能给你什么帮助吗?如果这个答案对你有用,你可以接受它,这将有利于其他社区。