Octopack packaging windows 服务就像一个网站
Octopack packaging windows service as if it were a web site
我有一个 windows 服务,其中包含允许它呈现剃刀模板的必要组件。此服务侦听消息队列并发送电子邮件,使用 razor 模板生成丰富的 html.
一切正常,但是,在使用 Octopus Deploy 进行部署时,OctoPack 似乎将此服务视为网站并将其打包不正确。
在添加 razor 模板功能之前,此服务过去常常被正确打包并且能够毫无后顾之忧地部署。
打包后的输出现在看起来像:
实际上,它只需要包含 bin
文件夹的内容。在我看来,OctoPack 现在似乎正在将该服务视为一个网站。
我试过添加一个 nuspec 文件,但这不起作用,我最终得到:
Nuspec 文件看起来像:
<!-- cut for brevity -->
<files>
<file src="bin\**\*.*" target=""/>
</files>
所以这也行不通。
我该怎么做才能解决这个问题?
我设法破解了一些东西来解决我遇到的问题。查看 Octopus Deploy docs 后,我发现我可以将 OctoPackNuGetProperties
属性 传递给 msbuild 并替换 nuspec 文件中的配置名称。
所以 nuspec 文件现在看起来像这样:
<files>
<file src="bin$config$\**\*.*" target="" />
</files>
我现在将 /p:OctoPackNuGetProperties=config=Deploy
传递给 msbuild,这意味着 OctoPack 现在可以正确打包服务 bin。
我仍然有兴趣听听 Octopus 的某个人关于这是 OctoPack 的问题还是与我的设置方式有关。
我有一个 windows 服务,其中包含允许它呈现剃刀模板的必要组件。此服务侦听消息队列并发送电子邮件,使用 razor 模板生成丰富的 html.
一切正常,但是,在使用 Octopus Deploy 进行部署时,OctoPack 似乎将此服务视为网站并将其打包不正确。
在添加 razor 模板功能之前,此服务过去常常被正确打包并且能够毫无后顾之忧地部署。
打包后的输出现在看起来像:
实际上,它只需要包含 bin
文件夹的内容。在我看来,OctoPack 现在似乎正在将该服务视为一个网站。
我试过添加一个 nuspec 文件,但这不起作用,我最终得到:
Nuspec 文件看起来像:
<!-- cut for brevity -->
<files>
<file src="bin\**\*.*" target=""/>
</files>
所以这也行不通。
我该怎么做才能解决这个问题?
我设法破解了一些东西来解决我遇到的问题。查看 Octopus Deploy docs 后,我发现我可以将 OctoPackNuGetProperties
属性 传递给 msbuild 并替换 nuspec 文件中的配置名称。
所以 nuspec 文件现在看起来像这样:
<files>
<file src="bin$config$\**\*.*" target="" />
</files>
我现在将 /p:OctoPackNuGetProperties=config=Deploy
传递给 msbuild,这意味着 OctoPack 现在可以正确打包服务 bin。
我仍然有兴趣听听 Octopus 的某个人关于这是 OctoPack 的问题还是与我的设置方式有关。