在 Netlify 构建中更改 Hugo 版本

Changing Hugo version on Netlify build

刚刚发布了 Hugo 的新版本(此时为 0.32)。

社区中有人询问如何处理这种情况以在 Netlify 构建上测试新版本。

What is the recommended course of action for Netlify users?

如果您没有在 Netlify 上设置变量 HUGO_VERSION,它默认为 HUGO 的版本 0.17

简单设置:

针对您的构建,Netlify 在您网站的在线控制台中有一个自定义变量字段。这对于需要针对 all 工作流构建的简单站点来说已经足够了。

工作流程设置

Netlify 允许在构建包路径的根目录下使用配置文件 (netlify.toml),该文件将告诉它要使用的配置,并将覆盖您在简单设置中设置的任何构建环境变量上面的例子。

netlify.toml Hugo

的示例
    [build]
      publish = "public"
      command = "hugo"
    # build a preview of the site [hugo --buildFuture]
    [context.deploy-preview]
      command = "hugo --buildFuture"
    # The default version you use for production if you don't use context
    [build.environment]
      HUGO_VERSION = "0.29"
    # The version you use for production
    [context.production.environment]
      HUGO_VERSION = "0.29"
    # you can lock a version of hugo for a deploy preview
    [context.deploy-preview.environment]
      HUGO_VERSION = "0.32"
    # you can lock a version of hugo for a branch-deploy (other than previews)
    [context.branch-deploy.environment]
      HUGO_VERSION = "0.32"

注意事项:

  • 有不同版本的分支部署以测试新版本的 Hugo
  • 还针对 Netlify 允许的其他环境变量,例如 NODE_VERSION
  • 设置自定义 环境变量以在this writeup 中解释的目标构建可以从您的Hugo 模板中访问!
  • 阅读 Netlify Here
  • 的部署上下文