Run the entire data system using drake to manage the process which gives us a number of features, most notably the "make" capabilities so that subsequent invocations only need to rebuild targets that have actually changed.

driver_drake(
  stop_before = NULL,
  stop_after = NULL,
  return_inputs_of = stop_before,
  return_outputs_of = stop_after,
  return_data_names = union(inputs_of(return_inputs_of), outputs_of(return_outputs_of)),
  return_data_map_only = FALSE,
  return_plan_only = FALSE,
  write_xml = !return_data_map_only,
  xmldir = XML_DIR,
  quiet = FALSE,
  user_modifications = NULL,
  xml_suffix = NULL,
  ...
)

Arguments

stop_before

Stop immediately before this chunk (character)

stop_after

Stop immediately after this chunk (character)

return_inputs_of

Return the data objects that are inputs for these chunks (character). If stop_before is specified, by default that chunk's inputs are returned

return_outputs_of

Return the data objects that are output from these chunks (character) If stop_after is specified, by default that chunk's outputs are returned

return_data_names

Return these data objects (character). By default this is the union of return_inputs_of and return_outputs_of

return_data_map_only

Return only the precursor information? (logical) This overrides the other return_* parameters above

return_plan_only

Return only the drake plan (logical)

write_xml

Write XML Batch chunk outputs to disk?

xmldir

Location to write output XML (ignored if write_outputs is FALSE)

quiet

Suppress output?

user_modifications

A list of function names which implement a user mod chunk. See vignettes/usermod_vignette.Rmd for more details and examples.

xml_suffix

A suffix to be appended at the end of all XML file name if not null. Such a feature is useful when using user_modifications to generate alternative scenarios.

...

Additional arguments to be forwarded on to make

Value

A list of all built data (or a data map tibble if requested).

Details

The interface mostly mimics that of driver with the exception that writing outputs is not optional since drake needs to include all outputs in the cache as a matter of course. In addition we allow users to pass any additional arguments to driver_drake which will be forwarded on to drake::make.