Target resources: crew high-performance computing
      Source: R/tar_resources_crew.R
      tar_resources_crew.RdCreate the crew argument of tar_resources()
to specify optional target settings.
Usage
tar_resources_crew(
  controller = targets::tar_option_get("resources")$crew$controller,
  scale = NULL,
  seconds_timeout = targets::tar_option_get("resources")$crew$seconds_timeout
)Arguments
- controller
 Character of length 1. If
tar_option_get("controller")is acrewcontroller group, thecontrollerargument oftar_resources_crew()indicates which controller in the controller group to use. If you need heterogeneous workers, you can leverage this argument to send different targets to different worker groups.- scale
 Deprecated in
targetsversion 1.3.0.9002 (2023-10-02). No longer necessary.- seconds_timeout
 Positive numeric of length 1, optional task timeout passed to the
.timeoutargument ofmirai::mirai()(after converting to milliseconds).
Value
Object of class "tar_resources_crew", to be supplied
to the crew argument of tar_resources().
Details
tar_resources_crew() accepts
target-specific settings for integration with the
crew R package. These settings are arguments to the push()
method of the controller or controller group
object which control things like
auto-scaling behavior and the controller to use in the case
of a controller group.
Resources
Functions tar_target() and tar_option_set()
each takes an optional resources argument to supply
non-default settings of various optional backends for data storage
and high-performance computing. The tar_resources() function
is a helper to supply those settings in the correct manner.
In targets version 0.12.2 and above, resources are inherited one-by-one
in nested fashion from tar_option_get("resources").
For example, suppose you set
tar_option_set(resources = tar_resources(aws = my_aws)),
where my_aws equals tar_resources_aws(bucket = "x", prefix = "y").
Then, tar_target(data, get_data() will have bucket "x" and
prefix "y". In addition, if new_resources equals
tar_resources(aws = tar_resources_aws(bucket = "z"))), then
tar_target(data, get_data(), resources = new_resources)
will use the new bucket "z", but it will still use the prefix "y"
supplied through tar_option_set(). (In targets 0.12.1 and below,
options like prefix do not carry over from tar_option_set() if you
supply non-default resources to tar_target().)
See also
Other resources:
tar_resources(),
tar_resources_aws(),
tar_resources_clustermq(),
tar_resources_custom_format(),
tar_resources_feather(),
tar_resources_fst(),
tar_resources_future(),
tar_resources_gcp(),
tar_resources_network(),
tar_resources_parquet(),
tar_resources_qs(),
tar_resources_repository_cas(),
tar_resources_url()
Examples
# Somewhere in you target script file (usually _targets.R):
tar_target(
  name,
  command(),
  resources = tar_resources(
    crew = tar_resources_crew(seconds_timeout = 5)
  )
)
#> <tar_stem> 
#>   name: name 
#>   description:  
#>   command:
#>     command() 
#>   format: rds 
#>   repository: local 
#>   iteration method: vector 
#>   error mode: stop 
#>   memory mode: auto 
#>   storage mode: worker 
#>   retrieval mode: auto 
#>   deployment mode: worker 
#>   priority: 0 
#>   resources:
#>     crew: <environment> 
#>   cue:
#>     seed: TRUE
#>     file: TRUE
#>     iteration: TRUE
#>     repository: TRUE
#>     format: TRUE
#>     depend: TRUE
#>     command: TRUE
#>     mode: thorough 
#>   packages:
#>     targets
#>     stats
#>     graphics
#>     grDevices
#>     utils
#>     datasets
#>     methods
#>     base 
#>   library:
#>     NULL