繁体   English   中英

VSTS部署期间如何从Azure Web App删除文件

[英]How to delete files from Azure Web App during VSTS deployment

我有一个Azure Web App,在其中将一些数据存储在它的持久存储中。 通过我的VSTS版本定义,我想删除一个充满数据的文件夹。 该文件夹位于D:\\ home \\ site \\ MyFolder

有没有一种方法可以在部署期间从VSTS版本定义中以编程方式删除该文件夹? 我需要确保每次进行新部署时该文件夹都为空,此刻我需要通过Kudu Web UI手动进行操作。

根据您的描述,您似乎想在进行新部署之前清空目标文件夹。

如果是这样,则在使用“ Azure App Service部署”任务时, 并且在使用“ 使用Web部署发布”选项时,还有一个附加选项“ 删除目标处的其他文件”

如果选中此选项,则部署过程将删除目标中的任何文件,该目标中正在部署的程序包中没有相应的文件。

换句话说,它将删除先前部署中不再需要的所有剩余文件。

有关详细信息,请参考在Visual Studio Team Services Azure应用服务部署任务期间删除已删除的文件

在此处输入图片说明

此外,您还可以尝试扩展Azure WebApp虚拟文件系统任务 ,它可以通过KUDU虚拟文件系统Rest API从Azure Web Apps删除文件(Put&Get即将推出)

如果仍然无法解决问题,则可以编写脚本来删除特定文件夹。 但是,您需要确保该服务帐户具有访问和删除Azure上的文件夹的正确权限。

另外,您也可以在脚本下方,使用特定的Credentica删除项目:

Param(
  [string]$computerName = "computername",
  [string]$path ="E:\test\specific-folder"
)
$Username = "domain\user"
$Password = ConvertTo-SecureString "PasswordHere" -AsPlainText -Force

$cred = New-Object System.Management.Automation.PSCredential($Username,$password)

Invoke-Command -computername $computerName {Remove-Item -path $args[0] -Recurse} -cred $cred  -ArgumentList $path

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM