mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-07 20:30:36 -05:00
Fix regression when loading config -e is empty or HUGO_ENV or HUGO_ENVIRONMENT is set
Fixes #11013
This commit is contained in:
parent
5adc837904
commit
231374a1fa
6 changed files with 77 additions and 7 deletions
|
@ -990,9 +990,23 @@ func (c *hugoBuilder) loadConfig(cd *simplecobra.Commandeer, running bool) error
|
||||||
cfg := config.New()
|
cfg := config.New()
|
||||||
cfg.Set("renderToDisk", (c.s == nil && !c.r.renderToMemory) || (c.s != nil && c.s.renderToDisk))
|
cfg.Set("renderToDisk", (c.s == nil && !c.r.renderToMemory) || (c.s != nil && c.s.renderToDisk))
|
||||||
watch := c.r.buildWatch || (c.s != nil && c.s.serverWatch)
|
watch := c.r.buildWatch || (c.s != nil && c.s.serverWatch)
|
||||||
if c.r.environment != "" {
|
if c.r.environment == "" {
|
||||||
cfg.Set("environment", c.r.environment)
|
// We need to set the environment as early as possible because we need it to load the correct config.
|
||||||
|
// Check if the user has set it in env.
|
||||||
|
if env := os.Getenv("HUGO_ENVIRONMENT"); env != "" {
|
||||||
|
c.r.environment = env
|
||||||
|
} else if env := os.Getenv("HUGO_ENV"); env != "" {
|
||||||
|
c.r.environment = env
|
||||||
|
} else {
|
||||||
|
if c.s != nil {
|
||||||
|
// The server defaults to development.
|
||||||
|
c.r.environment = hugo.EnvironmentDevelopment
|
||||||
|
} else {
|
||||||
|
c.r.environment = hugo.EnvironmentProduction
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
cfg.Set("environment", c.r.environment)
|
||||||
|
|
||||||
cfg.Set("internal", maps.Params{
|
cfg.Set("internal", maps.Params{
|
||||||
"running": running,
|
"running": running,
|
||||||
|
|
|
@ -546,9 +546,6 @@ func (c *serverCommand) PreRun(cd, runner *simplecobra.Commandeer) error {
|
||||||
c.doLiveReload = !c.disableLiveReload
|
c.doLiveReload = !c.disableLiveReload
|
||||||
c.fastRenderMode = !c.disableFastRender
|
c.fastRenderMode = !c.disableFastRender
|
||||||
c.showErrorInBrowser = c.doLiveReload && !c.disableBrowserError
|
c.showErrorInBrowser = c.doLiveReload && !c.disableBrowserError
|
||||||
if c.r.environment == "" {
|
|
||||||
c.r.environment = hugo.EnvironmentDevelopment
|
|
||||||
}
|
|
||||||
|
|
||||||
if c.fastRenderMode {
|
if c.fastRenderMode {
|
||||||
// For now, fast render mode only. It should, however, be fast enough
|
// For now, fast render mode only. It should, however, be fast enough
|
||||||
|
|
|
@ -5,13 +5,13 @@ stdout 'Pages.*|1'
|
||||||
stdout 'Total in'
|
stdout 'Total in'
|
||||||
checkfile public/index.html
|
checkfile public/index.html
|
||||||
checkfile public/p1/index.html
|
checkfile public/p1/index.html
|
||||||
grep 'IsServer: false' public/index.html
|
grep 'IsServer: false;IsProduction: true' public/index.html
|
||||||
|
|
||||||
-- hugo.toml --
|
-- hugo.toml --
|
||||||
baseURL = "http://example.org/"
|
baseURL = "http://example.org/"
|
||||||
disableKinds = ["RSS", "sitemap", "robotsTXT", "404", "taxonomy", "term"]
|
disableKinds = ["RSS", "sitemap", "robotsTXT", "404", "taxonomy", "term"]
|
||||||
-- layouts/index.html --
|
-- layouts/index.html --
|
||||||
Home|IsServer: {{ .Site.IsServer }}|
|
Home|IsServer: {{ .Site.IsServer }};IsProduction: {{ hugo.IsProduction }}|
|
||||||
-- layouts/_default/single.html --
|
-- layouts/_default/single.html --
|
||||||
Title: {{ .Title }}
|
Title: {{ .Title }}
|
||||||
-- content/p1.md --
|
-- content/p1.md --
|
||||||
|
|
19
testscripts/commands/hugo_configdev_env.txt
Normal file
19
testscripts/commands/hugo_configdev_env.txt
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
# Test the hugo command.
|
||||||
|
env HUGO_ENV=development
|
||||||
|
|
||||||
|
hugo
|
||||||
|
grep 'myparam: dev§' public/index.html
|
||||||
|
|
||||||
|
-- hugo.toml --
|
||||||
|
baseURL = "http://example.org/"
|
||||||
|
disableKinds = ["RSS", "sitemap", "robotsTXT", "404", "taxonomy", "term"]
|
||||||
|
-- layouts/index.html --
|
||||||
|
myparam: {{ site.Params.myparam }}§
|
||||||
|
-- layouts/_default/single.html --
|
||||||
|
Title: {{ .Title }}
|
||||||
|
-- config/development/params.toml --
|
||||||
|
myparam = "dev"
|
||||||
|
-- content/p1.md --
|
||||||
|
---
|
||||||
|
title: "P1"
|
||||||
|
---
|
22
testscripts/commands/hugo_configdev_environment.txt
Normal file
22
testscripts/commands/hugo_configdev_environment.txt
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
# Test the hugo command.
|
||||||
|
env HUGO_ENVIRONMENT=development
|
||||||
|
|
||||||
|
hugo
|
||||||
|
grep 'myparam: dev§' public/index.html
|
||||||
|
|
||||||
|
hugo -e production
|
||||||
|
grep 'myparam: §' public/index.html
|
||||||
|
|
||||||
|
-- hugo.toml --
|
||||||
|
baseURL = "http://example.org/"
|
||||||
|
disableKinds = ["RSS", "sitemap", "robotsTXT", "404", "taxonomy", "term"]
|
||||||
|
-- layouts/index.html --
|
||||||
|
myparam: {{ site.Params.myparam }}§
|
||||||
|
-- layouts/_default/single.html --
|
||||||
|
Title: {{ .Title }}
|
||||||
|
-- config/development/params.toml --
|
||||||
|
myparam = "dev"
|
||||||
|
-- content/p1.md --
|
||||||
|
---
|
||||||
|
title: "P1"
|
||||||
|
---
|
18
testscripts/commands/hugo_configprod.txt
Normal file
18
testscripts/commands/hugo_configprod.txt
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
# Test the hugo command.
|
||||||
|
|
||||||
|
hugo
|
||||||
|
grep 'myparam: §' public/index.html
|
||||||
|
|
||||||
|
-- hugo.toml --
|
||||||
|
baseURL = "http://example.org/"
|
||||||
|
disableKinds = ["RSS", "sitemap", "robotsTXT", "404", "taxonomy", "term"]
|
||||||
|
-- layouts/index.html --
|
||||||
|
myparam: {{ site.Params.myparam }}§
|
||||||
|
-- layouts/_default/single.html --
|
||||||
|
Title: {{ .Title }}
|
||||||
|
-- config/development/params.toml --
|
||||||
|
myparam = "dev"
|
||||||
|
-- content/p1.md --
|
||||||
|
---
|
||||||
|
title: "P1"
|
||||||
|
---
|
Loading…
Reference in a new issue