R/app_config.R

Defines functions get_golem_config app_sys

Documented in get_golem_config

#' Access files in the current application
#'
#' NOTE: If you manually change your package name in the DESCRIPTION,
#' don't forget to change it here too, and in the configuration file.
#' For a safer name change mechanism, use the `golem::set_golem_name()`
#' function.
#'
#' @param ... character vectors, specifying subdirectory and file(s)
#' within your package. The default, none, returns the root of the app.
#'
#' @noRd
app_sys <- function(...) {
  system.file(..., package = "wheretowork")
}

#' Read App Configuration
#'
#' @param value Value to retrieve from the configuration file.
#' @param config GOLEM_CONFIG_ACTIVE value. If unset, R_CONFIG_ACTIVE.
#' If unset, "default".
#' @param use_parent Logical, scan the parent directory for configuration file.
#'
#' @export
get_golem_config <- function(value,
                             config = Sys.getenv(
                               "GOLEM_CONFIG_ACTIVE",
                               Sys.getenv(
                                 "R_CONFIG_ACTIVE",
                                 "default"
                               )
                             ),
                             use_parent = TRUE) {
  config::get(
    value = value,
    config = config,
    file = app_sys("golem-config.yml"),
    use_parent = use_parent
  )
}
NCC-CNC/wheretowork documentation built on Feb. 27, 2025, 6:11 p.m.