msbuild - 运行自定义 MSBuild 任务作为 git 部署到 Azure 网站的一部分

标签 msbuild azure azure-web-app-service

问题

作为 csproj 的一部分,我有一个自定义 MSBuild 任务,它执行 YUICompressor 并生成编译后的 css 和 js 文件。

<PropertyGroup>
    <CssOutputFile>$(OutDir)..\Styles\compiled.css</CssOutputFile>
    <JavaScriptOutputFile>$(OutDir)..\Scripts\compiled.js</JavaScriptOutputFile>
    <BuildDependsOn Condition="'$(Configuration)' != 'Debug'">
      $(BuildDependsOn);
      CompressorTarget;
    </BuildDependsOn>
</PropertyGroup>

这作为 git 部署的一部分运行良好,并且正在生成文件,但是 Azure 网站部署引擎随后会将所有输出文件复制到另一个文件夹。在此过程中,它似乎需要您的 csproj 中的所有内容,而不是文件夹中的任何内容。这意味着生成的compiled.css和compiled.js不会被复制(因为它们不在我的csproj中)

最佳答案

Azure 部署项目的操作应该与执行以下操作完全相同:

  • 右键单击项目并选择“发布”
  • 将发布方法更改为“文件系统”
  • 输入路径并点击“发布”

因此,一般来说,您需要确保构建过程正常运行,以便在进行本地发布时获得正确的文件。如果确实如此,那么当 git 推送到 Azure 时,您很可能会得到相同的结果。

关于msbuild - 运行自定义 MSBuild 任务作为 git 部署到 Azure 网站的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10949492/

相关文章:

c# - 如何在我的 CI 过程中以及在本地构建时创建 Nuget 包?

python - 无法将较大的 blob 上传到 Azure : azure. core.exceptions.ServiceRequestError : The operation did not complete (write) (_ssl. c:2317)

git - 从 MSBuild 获取 Git Long Hash

c# - 使用 MSBuild 无法构建的项目 Ctrl + Shift + B 构建成功

visual-studio-2010 - MSBuild 可以从生成的 SetParameters.xml 中排除 "Hidden"Web Deploy 参数吗?

azure - 如何仅将 Azure Active Directory 身份验证添加到 Web 应用程序中的某些 Razor 页面?

azure - 尝试删除 Azure blob 上已创建但在下次访问时不可见的警报

azure - 缺少为 Windows Azure 网站选择西欧的选项

azure - 通过ARM模板重新部署资源时如何保留现有标签?

azure - Azure 保留网站的通配符 DNS A 记录