1

我正在使用 VSTS(以前的 VSO)来处理整个项目,并希望对未托管在 Azure 上的网站进行自动发布(构建已经到位)。因此我需要使用 FTP。

据我了解,我应该能够使用 cURL 来完成此操作,但我所能做的就是在不保留急需的文件结构的情况下传输所有需要的文件。

有没有人找到一种使用 FTP 传输文件结构中的文件的方法?如果是这样,怎么办?

4

1 回答 1

1

您需要使用“批处理脚本”任务并创建批处理脚本以通过 curl 上传文件。有关详细信息,请参阅此问题:Upload folder with cURL and FTP using Batch file on Windows?

如果您的网站托管在 Windows 机器上,您可以使用“Windows 机器文件复制”任务来上传文件。此任务保留文件夹结构。 在此处输入图像描述

此外,您可以在构建期间通过在构建定义的“Visual Studio Build”任务中添加以下 MSBuild 参数来生成 Web 部署包,并将其上传到构建工件。

/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\\"

然后在“发布”中,添加一个任务来运行构建工件中包含的“xxx.deploy.cmd”,以将文件部署到您的服务器。(确保您的服务器已安装“Web Deploy Remote Agent Service”)

xxx.deploy.cmd [/T|/Y] [/M:ComputerName] [/U:UserName] [/P:Password] [/G:UseTempAgent] [Additional msdeploy.exe flags ...]
于 2016-02-29T06:43:02.823 回答