在Netlify构建中更改Hugo版本

tal*_*ves 3 hugo netlify

Hugo刚刚发布了一个新版本(此时为0.32).

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

Netlify用户的推荐行动方案是什么?

tal*_*ves 7

如果不设置一个变量HUGO_VERSIONNetlify默认为版本0.17HUGO.

简单设置:

为了定位您的构建,Netlify在您的站点的在线控制台中有一个自定义变量字段.对于需要定位所有工作流程构建的简单站点,这就足够了. 在此输入图像描述

工作流程设置

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"
Run Code Online (Sandbox Code Playgroud)

注意事项:

  • 有一个分支部署的不同版本用于测试新版本的Hugo
  • 同时针对Netlify允许的其他环境变量NODE_VERSION
  • 自定义环境变量设置为此写入中解释的目标构建,可以从Hugo模板中访问它们!
  • 阅读有关Here的部署上下文Netlify