R/findconf.R

Defines functions findconf

Documented in findconf

#' findconf
#'
#' **findconf** findconf from a given directory. 
#' default filename is config.yml
#' default directory is .
#'
#' @param confname the filename of configuration to find. default is config.yml
#' @param basepath the path to find. default is .
#' @return nearest configuration filename or null
#' @examples
#' \dontrun{
#'   confname <- findconf(basepath=dirname(system.file("extdata", package="rconf")))
#'   confname
#'   confname == paste0(system.file("extdata", package="rconf"), "/config.yml")
#' }
#' @export
findconf <- function(confname="config.yml", basepath=".") {

  if (confname %in% dir(basepath)) {
    return(dir(basepath, pattern=paste0("^", confname, "$"), full.names=T))
  } else if (paste0(dir(basepath), collapse="") ==
             paste0(dir("/"), collapse = "")) {
    stop("no configuration file found")
  } else {
    return(findconf(confname, paste0(basepath, "/", "..")))
  }

}
obarisk/rconf documentation built on May 3, 2019, 9:01 p.m.