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_csv_model = FALSE,
csv_dir = paste0("output/gcamfaostat_", write_csv_model),
quiet = FALSE,
...
)
Stop immediately before this chunk (character)
Stop immediately after this chunk (character)
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 the data objects that are output from these chunks (character)
If stop_after
is specified, by default that chunk's outputs are returned
Return these data objects (character). By default this is the union of return_inputs_of
and return_outputs_of
Return only the precursor information? (logical) This overrides
the other return_*
parameters above
Return only the drake plan (logical)
If "GCAM", the CSV will be generated and saved to DIR_OUTPUT_CSV
Suppress output?
Additional arguments to be forwarded on to make
Write XML Batch chunk outputs to disk?
Location to write output XML (ignored if write_outputs
is FALSE
)
A list of all built data (or a data map tibble if requested).
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
.