[英]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.