hugo/docs/content/en/functions/os/Getenv.md
Bjørn Erik Pedersen 5fd1e74903
Merge commit '9b0050e9aabe4be65c78ccf292a348f309d50ccd' as 'docs'
```
git subtree add --prefix=docs/ https://github.com/gohugoio/hugoDocs.git master --squash
```

Closes #11925
2024-01-27 10:48:57 +01:00

1.3 KiB

title description categories keywords action aliases toc
os.Getenv Returns the value of an environment variable, or an empty string if the environment variable is not set.
aliases related returnType signatures
getenv
functions/os/FileExists
functions/os/ReadDir
functions/os/ReadFile
functions/os/Stat
string
os.Getenv VARIABLE
/functions/getenv
true

Security

By default, when using the os.Getenv function Hugo allows access to:

  • The CI environment variable
  • Any environment variable beginning with HUGO_

To access other environment variables, adjust your site configuration. For example, to allow access to the HOME and USER environment variables:

{{< code-toggle file=hugo >}} [security.funcs] getenv = ['^HUGO_', '^CI$', '^USER$', '^HOME$'] {{< /code-toggle >}}

Read more about Hugo's security policy.

Examples

{{ getenv "HOME" }} → /home/victor
{{ getenv "USER" }} → victor

You can pass values when building your site:

MY_VAR1=foo MY_VAR2=bar hugo

OR

export MY_VAR1=foo
export MY_VAR2=bar
hugo

And then retrieve the values within a template:

{{ getenv "MY_VAR1" }} → foo
{{ getenv "MY_VAR2" }} → bar