
The tar_script()
function is a convenient
way to create the required target script file (default: _targets.R
)
in the current working directory.
It always overwrites the existing target script,
and it requires you to be in the working directory
where you intend to write the file, so be careful.
See the "Target script" section for details.
tar_script(
code = NULL,
library_targets = TRUE,
ask = NULL,
script = targets::tar_config_get("script")
)
NULL
(invisibly).
R code to write to the target script file.
If NULL
, an example target script file is written instead.
logical, whether to write a library(targets)
line at the top of the target script file automatically (recommended).
If TRUE
, you do not need to explicitly put library(targets)
in code
.
Logical, whether to ask before writing if the
target script file
already exists. If NULL
, defaults to Sys.getenv("TAR_ASK")
.
(Set to "true"
or "false"
with Sys.setenv()
).
If ask
and the TAR_ASK
environment variable are both
indeterminate, defaults to interactive()
.
Character of length 1, where to write
the target script file. Defaults to tar_config_get("script")
,
which in turn defaults to _targets.R
.
Every targets
project requires a target script file.
The target script file is usually a file called _targets.R
Functions tar_make()
and friends look for the target script
and run it to set up the pipeline just prior to the main task.
Every target script file should run the following
steps in the order below:
Package: load the targets
package. This step is automatically
inserted at the top of the target script file produced by
tar_script()
if library_targets
is TRUE
,
so you do not need to explicitly include it in code
.
Globals: load custom functions and global objects into memory.
Usually, this section is a bunch of calls to source()
that run
scripts defining user-defined functions. These functions support
the R commands of the targets.
Options: call tar_option_set()
to set defaults for targets-specific
settings such as the names of required packages. Even if you have no
specific options to set, it is still recommended to call
tar_option_set()
in order to register the proper environment.
Targets: define one or more target objects using tar_target()
.
Pipeline: call list()
to aggregate the targets from (4)
into a list. Every target script file must return
a pipeline object, which usually means ending with a call to
list()
. In practice, (4) and (5) can be combined together
in the same function call.
Other scripts:
tar_edit()
,
tar_github_actions()
,
tar_helper()
,
tar_renv()
tar_dir({ # tar_dir() runs code from a temp dir for CRAN.
tar_script() # Writes an example target script file.
# Writes a user-defined target script:
tar_script({
library(targets)
library(tarchetypes)
x <- tar_target(x, 1 + 1)
tar_option_set()
list(x)
}, ask = FALSE)
writeLines(readLines("_targets.R"))
})
Run the code above in your browser using DataLab