Azure自定义部署脚本 - 在desitination时删除其他文件

时间:2015-08-17 09:14:12

标签: azure kudu

当使用custom deployment script进行Github到Azure连续部署时,如何让脚本在目的地删除其他文件的方式与通过Visual Studio发布时相同(下面的VS屏幕截图)。

enter image description here

如果它有帮助,更具体地说,我的脚本基于本教程 - https://github.com/aranasoft/todo-azurewebsites/wiki/Deploying-to-Azure

我希望可以完成,并且只需要几行代码就可以添加到脚本中以智能地删除其他文件,或者可能是KuduSync cmd的配置选项。

1 个答案:

答案 0 :(得分:1)

这样的事情可能会奏效。

将其放入档案f

diff -ReferenceObject  (gci -Recurse $Env:DEPLOYMENT_SOURCE | % { $_.FullName.TrimStart($Env:DEPLOYMENT_SOURCE) }) `
     -DifferenceObject (gci -Recurse $Env:DEPLOYMENT_TARGET | % { $_.FullName.TrimStart($Env:DEPLOYMENT_TARGET) }) |
  ? SideIndicator -eq "=>" |
  % { Join-Path -Path $Env:DEPLOYMENT_TARGET $_.InputObject } |
  % { write "Removing $_"; rm $_ }
}

并从您的Kudu部署脚本中调用它,例如powershell.exe -File f

如果您对bash更加满意,它也可以在Web App主机上使用,您可以通过更改config告诉Kudu执行bash脚本 - .deployment中的部分,例如以command = bash deployment.sh

为界