msbuild pack 命令包括目录结构

msbuild pack command includes directory structure

我正在使用 dotnet core 2.0,在 Visual Studio Team Services (VSTS) 中构建。我添加了内置 Visual Studio 构建步骤,并使用带有以下参数的 msbuild:

/p:DeployOnBuild=true
/p:WebPublishMethod=Package
/p:PackageAsSingleFile=true  
/p:SkipInvalidConfigurations=true  
/p:DeployIisAppPath="Default Web Site"  
/p:DesktopBuildPackageLocation="$(build.artifactstagingdirectory)\MyProject.BuildVersion.zip"

这将构建一个 zip 文件,但内部结构很丑陋,并且将整个工件暂存目录作为子文件夹包含在内。例如,在我到达实际网站文件结构之前,我的 zip 文件中的路径是 Content\d_C\a\s\src\MyProjectName\obj\Release\netcoreapp2.0\PubTmp\Out

有没有办法只压缩项目文件并将它们放在 zip 文件的根目录中?我有一个使用一些额外步骤的解决方法,但如果能够使用一个同时压缩所有内容的构建步骤就好了。

编辑

我们使用 Octopus Deploy 部署到 Azure。

由于是dotnet core 2.0项目,可以通过.NET Core任务发布项目:

对于Visual Studio构建任务,您可以尝试指定/P:PackageTempRootDir=""参数,它将删除源路径。

另一方面,部署Azure App Service后,部署到Azure后文件夹结构不会保留,您可以通过访问https://[app name].scm.azurewebsites.net/DebugConsole.

查看文件夹和文件