2016-02-28 65 views
1

我正在使用VSTS(之前的VSO)來處理整個項目,並且希望對未託管在Azure上的網站執行自動發佈(已建立的版本)。因此我需要使用FTP。通過VSTS上的FTP發佈網站

據我所知,我應該可以使用cURL來實現這一點,但我所能做的就是傳輸所需的所有文件,而不必保留所需的文件結構。

有沒有人找到一種方法來使用FTP傳輸文件結構中的文件?如果是這樣,怎麼樣?

回答

1

您需要使用「批處理腳本」任務並創建批處理腳本以通過curl上載文件。請參考此問題的詳細信息:Upload folder with cURL and FTP using Batch file on Windows?

如果您的網站在Windows計算機上託管,可以使用「Windows計算機上的文件複製」任務上傳的文件。該任務保持文件夾結構。 enter image description here

而且還可以產生通過在構建定義「Visual Studio中構建」任務添加以下的MSBuild參數的構建過程中的網絡部署包並上傳打造神器。

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

然後在「釋放」,增加了運行包含在構建構件的文件部署到服務器的「xxx.deploy.cmd」的任務。 (請確保您的服務器已安裝「Web部署遠程代理服務」)

xxx.deploy.cmd [/T|/Y] [/M:ComputerName] [/U:UserName] [/P:Password] [/G:UseTempAgent] [Additional msdeploy.exe flags ...]