with_envvar: Environment variables

with_envvarR Documentation

Environment variables

Description

Temporarily change system environment variables.

Usage

with_envvar(new, code, action = "replace")

local_envvar(
  .new = list(),
  ...,
  action = "replace",
  .local_envir = parent.frame()
)

Arguments

new, .new

⁠[named character]⁠
New environment variables

code

[any]
Code to execute in the temporary environment

action

should new values "replace", "prefix" or "suffix" existing variables with the same name.

...

Named arguments with new environment variables.

.local_envir

⁠[environment]⁠
The environment to use for scoping.

Details

if NA is used those environment variables will be unset. If there are any duplicated variable names only the last one is used.

Value

[any]
The results of the evaluation of the code argument.

See Also

withr for examples

Sys.setenv()

Examples

with_envvar(new = c("GITHUB_PAT" = "abcdef"), Sys.getenv("GITHUB_PAT"))

# with_envvar unsets variables after usage
Sys.getenv("TEMP_SECRET")
with_envvar(new = c("TEMP_SECRET" = "secret"), Sys.getenv("TEMP_SECRET"))
Sys.getenv("TEMP_SECRET")

r-lib/withr documentation built on Feb. 2, 2024, 2:03 a.m.