6

我有一个带有完整 Orchard 源代码的 Visual Studio 2013 解决方案。当我在 Visual Studio 中的“Orchard.Web”项目上使用“发布...”时,它会正确地将站点发布到我已配置到.PubXml我使用的文件中的文件系统目标。

但是,如果我使用 Jenkins 构建此站点,则文件不会被复制到目标位置。我创建了一个单独的 PubXml 文件,供 Jenkins 使用。

在我的 Jenkins 工作中,我有两个感兴趣的构建步骤。第一个使用src\Orchard.sln带有命令行参数的文件/p:Configuration=Release。这可以正确运行,并构建整个解决方案。

紧随其后的第二个构建步骤使用src\Orchard.Web\Orchard.Web.csproj以下命令行参数的构建文件:

  • /p:DeployOnBuild=true
  • /p:PublishProfile="D:\workspace\Site\trunk\src\Orchard.Web\Properties\PublishProfiles\Jenkins.pubxml"
  • /p:VisualStudio 版本=12.0
  • /p:配置=发布
  • /p:平台=AnyCPU
  • /v:最小
  • /nologo
  • /p:警告级别=1

有了这个,构建和部署似乎工作 - 但没有。以下是构建输出中的一些行:

Copying all files to temporary location below for package/publish:
obj\Release\Package\PackageTmp.
Auto ConnectionString Transformed obj\Release\Package\PackageTmp\Shapes\Scripts\Web.config into obj\Release\CSAutoParameterize\transformed\Shapes\Scripts\Web.config.
(... about 200 more "Auto ConnectionString..." lines...)
Finished: SUCCESS

它实际上没有将文件复制到 PUBXML 文件中定义的目标位置。

相比之下,在 Visual Studio 中,输出看起来很相似,但只转换了 4 个配置文件并包含许多“Publishing folder x”行:

(...)
Transformed Modules\SH.GoogleAnalytics\web.config using ....
Copying all files to temporary location below for package/publish:
obj\Release\Package\PackageTmp.
Publishing folder /...
Publishing folder bin...
(etc.)

(我已经在 J​​enkins 服务器上安装了最新的 Windows Azure SDK for .NET。)

4

2 回答 2

1

我有同样的麻烦,这对我有用:

/t:Rebuild
/p:DeployOnBuild=true
/p:PublishProfile=Jenkins_Publish
/p:Configuration=Release

不要使用 /p:VisualStudioVersion=xxx

于 2017-09-14T06:24:53.147 回答
0

这有点老了,但我实际上只是将 Orchard 设置为能够通过命令行和 MSBuild 构建。这是我所做的:

/p:VisualStudioVersion=12.0;PublishProfile="example-profile";DeployProjA=true;FrameworkPathOverride="C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v4.5";Configuration=Release;PublishProfileRootFolder=c :\Workspace\src\Orchard.Web\Properties\PublishProfiles;密码=ExamplePass

由于您使用的是 Orchard,因此您要确保仅发布 Orchard.Web 项目,因此不要使用 DeployOnBuild=true。这将尝试在解决方案中部署每个 Web 项目,这对 Orchard 来说意义重大。而是按照此处的指南查看如何仅部署 Web 项目:http ://sedodream.com/2013/03/06/HowToPublishOneWebProjectFromASolution.aspx

于 2015-04-20T14:24:52.247 回答