避免删除的Web文件夹发布(Avoid deleting folder on Web Publish

2019-08-17 05:45发布

我部署我的应用程序到Azure的网站。 我已经配置succesfuly出版资料和设置tfspreview.com使用每个代码的持续集成提交自动发布。

我有路径“/媒体”的文件夹。 这个文件夹通过CMS(一把umbraco)上传的图片和文档。 此文件夹被每个Web部署删除。

从这个答案 ,我学会了如何添加在任一的.csproj或在wpp.targets文件SkipDelete规则,但每次我发布整个文件夹被删除,反正该网站。

这是我目前使用的内部wpp.targets的代码:

<PropertyGroup>
<AfterAddIisSettingAndFileContentsToSourceManifest>
  AddCustomSkipRules
</AfterAddIisSettingAndFileContentsToSourceManifest>
</PropertyGroup>

<Target Name="AddCustomSkipRules">
<Message Text="Adding Custom Skip Rules" />
<ItemGroup>
  <MsDeploySkipRules Include="SkipMediaFolder">
    <SkipAction>Delete</SkipAction>
    <ObjectName>filePath</ObjectName>
    <AbsolutePath>media</AbsolutePath>
  </MsDeploySkipRules>
</ItemGroup>
</Target>

<PropertyGroup>
<UseMsDeployExe>true</UseMsDeployExe>
</PropertyGroup>

Answer 1:

这不只是在说“删除发布之前,所有现有文件”发布向导(设置步骤)取消勾选框的问题? 我知道,建立从Visual Studio侧发布时选项可用 - 在我看来,在Azure发布的凭据只是给你的连接,而不是你通过向导进行设置。



Answer 2:

纵观要链接到与您在上面提供的代码的问题,看来你需要更改线路:

<AbsolutePath>ErrorLog</AbsolutePath>

<AbsolutePath>media</AbsolutePath>

因为这表示该文件夹,你不想删除。 ErrorLog是另一个问题的作者并不想删除的文件夹。



文章来源: Avoid deleting folder on Web Publish