tar_path: Deprecated: identify the file path where a target will be...

View source: R/tar_path.R

tar_pathR Documentation

Deprecated: identify the file path where a target will be stored.

Description

Deprecated: identify the file path where a target will be stored after the target finishes running in the pipeline.

Usage

tar_path(
  name = NULL,
  default = NA_character_,
  create_dir = FALSE,
  store = targets::tar_config_get("store")
)

Arguments

name

Symbol, name of a target. If NULL, tar_path() returns the path of the target currently running in a pipeline.

default

Character, value to return if tar_path() is called on its own outside a targets pipeline. Having a default lets users run things without tar_make(), which helps peel back layers of code and troubleshoot bugs.

create_dir

Logical of length 1, whether to create dirname(tar_path()) in tar_path() itself. This is useful if you are writing to tar_path() from inside a storage = "none" target and need the parent directory of the file to exist.

store

Character of length 1, path to the data store if tar_path() is called outside a running pipeline. If tar_path() is called inside a running pipeline, this argument is ignored and actual the path to the running pipeline's data store is used instead.

Details

tar_path() was deprecated on 2022-10-11 (version 0.13.5.9000). Use tar_path_target() instead.

Value

Character, file path of the return value of the target. If not called from inside a running target, tar_path(name = your_target) just returns ⁠_targets/objects/your_target⁠, the file path where your_target will be saved unless format is equal to "file" or any of the supported cloud-based storage formats.

For non-cloud storage formats, if you call tar_path() with no arguments while target x is running, the name argument defaults to the name of the running target, so tar_path() returns ⁠_targets/objects/x⁠.

For cloud-backed formats, tar_path() returns the path to the staging file in ⁠_targets/scratch/⁠. That way, even if you select a cloud repository (e.g. tar_target(..., repository = "aws", storage = "none")) then you can still manually write to tar_path(create_dir = TRUE) and the targets package will automatically hash it and upload it to the AWS S3 bucket. This does not apply to format = "file", where you would never need storage = "none" anyway.

See Also

Other utilities: tar_active(), tar_backoff(), tar_call(), tar_cancel(), tar_definition(), tar_described_as(), tar_envir(), tar_format_get(), tar_group(), tar_name(), tar_path_script(), tar_path_script_support(), tar_path_store(), tar_path_target(), tar_source(), tar_store()

Examples

tar_path_target()
tar_path_target(your_target)
if (identical(Sys.getenv("TAR_EXAMPLES"), "true")) { # for CRAN
tar_dir({ # tar_dir() runs code from a temp dir for CRAN.
tar_script(tar_target(returns_path, tar_path_target()), ask = FALSE)
tar_make()
tar_read(returns_path)
})
}

targets documentation built on Oct. 3, 2024, 1:11 a.m.