Clean up orderly draft and data directories. Deletes all drafts
(possibly just for a set of report names) and then deletes
dangling data sets that are not pointed to by any draft or
committed reports. Running cleanup does not affect any reports
that have been committed with orderly_commit()
(i.e.,
the contents of the archive/
directory).
Usage
orderly_cleanup(
name = NULL,
root = NULL,
locate = TRUE,
draft = TRUE,
data = TRUE,
failed_only = FALSE
)
Arguments
- name
Optional name; in this case only clean up drafts with this name
- root
The path to an orderly root directory, or
NULL
(the default) to search for one from the current working directory iflocate
isTRUE
.- locate
Logical, indicating if the configuration should be searched for. If
TRUE
andconfig
is not given, then orderly looks in the working directory and up through its parents until it finds anorderly_config.yml
file.- draft
Logical, indicating if drafts should be removed
- data
Logical, indicating if dangling data should be removed (data not used by any draft or archived report).
- failed_only
Delete only failed reports (those without the end-of-run metadata). This will also clean up drafts created by
orderly_test_start()
Examples
# In a new example orderly, run two reports and commit only the
# second one:
path <- orderly::orderly_example("minimal")
id1 <- orderly::orderly_run("example", root = path)
#> [ name ] example
#> [ id ] 20230621-105025-7725293e
#> [ start ] 2023-06-21 10:50:25
#> [ data ] source => dat: 20 x 2
#>
#> > png("mygraph.png")
#>
#> > par(mar = c(15, 4, 0.5, 0.5))
#>
#> > barplot(setNames(dat$number, dat$name), las = 2)
#>
#> > dev.off()
#> agg_png
#> 2
#> [ end ] 2023-06-21 10:50:25
#> [ elapsed ] Ran report in 0.01623964 secs
#> [ artefact ] mygraph.png: 175369b2bcf4115f343c8ad746c0c072
id2 <- orderly::orderly_run("example", root = path)
#> [ name ] example
#> [ id ] 20230621-105025-83ad7397
#> [ start ] 2023-06-21 10:50:25
#> [ data ] source => dat: 20 x 2
#>
#> > png("mygraph.png")
#>
#> > par(mar = c(15, 4, 0.5, 0.5))
#>
#> > barplot(setNames(dat$number, dat$name), las = 2)
#>
#> > dev.off()
#> agg_png
#> 2
#> [ end ] 2023-06-21 10:50:25
#> [ elapsed ] Ran report in 0.01527786 secs
#> [ artefact ] mygraph.png: 175369b2bcf4115f343c8ad746c0c072
orderly::orderly_commit(id2, root = path)
#> [ commit ] example/20230621-105025-83ad7397
#> [ copy ]
#> [ import ] example:20230621-105025-83ad7397
#> [ success ] :)
#> [1] "/tmp/RtmpGRuIRx/file476afa7968/archive/example/20230621-105025-83ad7397"
# We now have one draft and one archive report:
orderly::orderly_list_drafts(root = path)
#> name id
#> 1 example 20230621-105025-7725293e
orderly::orderly_list_archive(root = path)
#> name id
#> 1 example 20230621-105025-83ad7397
# To clean up the drafts:
orderly::orderly_cleanup(root = path)
#> [ clean ] Found 1 draft report
#> [ clean ] /tmp/RtmpGRuIRx/file476afa7968/draft/example/20230621-105025-7725293e
#> [ clean ] Found 0 csv files
#> [ clean ] Found 0 rds files
# We now have no draft and one archive reports:
orderly::orderly_list_drafts(root = path)
#> [1] name id
#> <0 rows> (or 0-length row.names)
orderly::orderly_list_archive(root = path)
#> name id
#> 1 example 20230621-105025-83ad7397