我的 azure 网站项目中有 src 文件和 dist/ 文件夹。
project
|- src/
|- dist/
默认行为上传项目内的所有文件,即 src 和 dist。
website
|- src/
|- dist/
我想保持网站干净,只包含 dist 文件。
website
|- dist/
如果能将 dist 文件夹映射到网站就更好了。
website
|- all the files
|- in dist folder
我应该怎么办?
我知道我只能通过右键单击文件夹然后“发布”来发布一个特定文件夹。但网站的 bin/ 文件夹中还包含一些需要部署的 dll。
我尝试创建一个单独的 azure 网站项目,该项目仅包含 dist 文件夹,但我不知道如何在部署中包含 src 项目中的 dll。
根据您的要求,我假设您可以在将网站部署到 Azure 之前修改您的发布配置文件并添加一些 MSBuild 任务。这是我的测试,你可以参考一下。
项目结构
修改您的发布配置文件
您可以使用RemoveDir、Move 任务定义一个Target,并将其放在发布配置文件中的PropertyGroup 之后,如下所示:
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="MoveDistToRoot" AfterTargets="CopyAllFilesToSingleFolderForMsdeploy">
<!--1.Deleting Folders except dist-->
<ItemGroup>
<_FolderToDelete Include="$(_PackageTempDir)\src" />
<!--you could add more folder paths as follows:-->
<!--<_FolderToDelete Include="$(_PackageTempDir)\folderName" />-->
</ItemGroup>
<RemoveDir Directories="@(_FolderToDelete)" />
<!--2.Copying files,folders from dist to root directory-->
<ItemGroup>
<_FileToMove Include="$(_PackageTempDir)\dist\**" />
</ItemGroup>
<Move SourceFiles="%(_FileToMove.Identity)" DestinationFolder="$(_PackageTempDir)\%(RecursiveDir)" />
<!--3.Deleting the empty folder dist-->
<RemoveDir Directories="$(_PackageTempDir)\dist" />
</Target>
</Project>
更改后,您可以使用修改后的发布配置文件将网站部署到 Azure Web App,并尝试通过 KUDU 检查 Azure 上 Web 应用程序的结构。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)