envvar_get() returns the value of an environment variable.
envvar_get_oneof() gets the value of an environment variable
and ensures that it is within a defined set of potential values.
Usage
envvar_get(
  x,
  default = NULL,
  transform = NULL,
  validate = NULL,
  warn_default = TRUE
)
envvar_get_oneof(
  x,
  choices,
  default = NULL,
  transform = NULL,
  validate = NULL,
  warn_default = TRUE
)Arguments
- x
 String containing an environment variable name
- default
 Optional default value if the environment variable is not set
- transform
 Optional function that applies a transformation to the variable's value
- validate
 Optional function that checks a value for validity
- warn_default
 Show a warning if the default value is used (default:
TRUE)- choices
 A list containing the potential values
Value
The value of the given environment variable, if set. This is a string
unless a transform function has changed the object's type.
Details
envvar_get() and the other type-specific variants follow this workflow:
The value of the environment variable is retrieved. If that variable is not set and
defaultnon-NULL, the default value is used. Otherwise an error is raised.Optionally, the value can be transformed by a function specified by the
transformargument. Transformation functions return a scalar object.Optionally, the value can be validated by a function specified by the
validateargument. Validation functions return a logical value indicating whether or not the value matches the given criteria. An error is raised if the validation function does not returnTRUE.The transformed, validated value is returned.
Examples
# Get the current user's home directory
envvar_get("HOME")
#> [1] "/home/runner"
# Get the current logging level for your app, ensuring it is a known value
envvar_set("LOG_LEVEL" = "DEBUG")
envvar_get_oneof(
  "LOG_LEVEL",
  choices = c("TRACE", "DEBUG", "INFO", "SUCCESS", "WARN", "ERROR", "FATAL")
)
#> [1] "DEBUG"