0

在将自定义部署脚本用于 Github 到 Azure 的持续部署时,如何让脚本在目标位置删除其他文件,这与通过 Visual Studio 发布时的方式相同(下面的 VS 屏幕截图)。

在此处输入图像描述

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

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

4

1 回答 1

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

如果您对 . 更满意,它也可以在 Web 应用程序主机上使用,并且您可以告诉Kudubash执行 bash 脚本,方法是将 中的 - 部分更改为.config.deploymentcommand = bash deployment.sh

于 2015-08-17T15:34:25.193 回答