在 Nuget 中打包一个静态网站

Packaging a static website in Nuget

我有一个静态网站,我想使用 Ocotpus deploy 进行部署。 Octopus 对所有内容都使用 nuget 包,所以我想将它变成一个 nuget 包,这样 Octopus 就可以直接从我的 nuget 提要进行部署。

现在我正在使用它作为我的 nuspec 文件:

<?xml version="1.0"?>
<package >
  <metadata>
    <id>mysite</id>
    <version>1.0.0</version>
    <authors>Alpaca</authors>
    <owners>Alpaca</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>My Package description</description>
    <copyright>2017</copyright>
    <contentFiles>
        <files include="build/**" />
    </contentFiles>
  </metadata>
</package>

我应该使用 ContentFiles 来部署网站还是有更好的方法来为静态网站构建包?

更好是非常主观的。

如果您的站点位于 msbuild 项目(静态或其他)中,那么普通的 octopack 应该可以工作。将 octopack 按照惯例不包括的任何内容标记为 'Content',它将被包括在内。

文档在这里:https://octopus.com/docs/packaging-applications/nuget-packages/using-octopack#UsingOctoPack-Includingwebapplicationcontentfiles

同一文档暗示使用 nupsec 的 'files' 部分并在此处指向 nuspec 文档:http://docs.nuget.org/docs/reference/nuspec-reference

我们正在使用 nuspec 文件部分来打包我们所有的常用样式,等等:

  <files>
    <file src="**\*.*" target="" exclude="obj\*;bin\*;**\*.csproj;**\*.config;**\*.nuspec;**\*.less;**\*.json;grunfile.js"/>
  </files>