Skip to contents

List previous successful installations of this hipercow root.

Usage

hipercow_provision_list(driver = NULL, root = NULL)

hipercow_provision_check(
  method = NULL,
  ...,
  driver = NULL,
  environment = "default",
  root = NULL
)

Arguments

driver

The name of the driver to use, or you can leave blank if only one is configured (this will be typical).

root

The hipercow root

method

The provisioning method to use, defaulting to NULL, which indicates we should try and detect the best provisioning mechanism for you; this should typically work well unless you are manually adding packages into your library (see Details). If given, must be one of auto, pkgdepends, script or renv; each of these are described in the Details and in vignette("packages").

...

Arguments passed through to conan. See Details.

environment

The name of the environment to provision (see hipercow_environment_create for details).

Value

A data.frame with columns:

  • name: the name of the installation. This might be useful with conan_compare

  • time: the time the installation was started

  • hash: the installation hash

  • method: the method used for the installation

  • args: the arguments to the installation (as a list column)

  • current: if using hipercow_provision_check, does this installation match the arguments provided?

This object also has class conan_list so that it prints nicely, but you can drop this with as.data.frame.

Examples

cleanup <- hipercow_example_helper()
#>  This example uses a special helper
writeLines("data.table", "pkgdepends.txt")

# Before any installation has happened:
hipercow_provision_list()
#> ! No conan installations recorded
hipercow_provision_check()
#>  Selected provisioning method 'pkgdepends'
#> ! No conan installations recorded

# After installation:
hipercow_provision()
#>  Selected provisioning method 'pkgdepends'
#> /`-'\  _______  ___  ___ ____
#> \,T./ / __/ _ \/ _ \/ _ `/ _ \
#>   |   \__/\___/_//_/\_,_/_//_/
#>   |   ---- THE  LIBRARIAN ----
#> 
#> Bootstrapping from: /home/runner/work/_temp/Library
#> Installing into library: hipercow/lib
#> Using method pkgdepends
#> Running in path: /tmp/Rtmpw3JKrD/file16dc4a3b3b2
#> Library paths:
#>   - /tmp/Rtmpw3JKrD/file16dc4a3b3b2/hipercow/lib
#>   - /opt/R/4.4.1/lib/R/site-library
#>   - /opt/R/4.4.1/lib/R/library
#> id: 20241008152610
#> Logs from pkgdepends follow:
#> 
#> -------------------------------------------------------------------------------
#> 
#> 
#> ── repos 
#> • https://cloud.r-project.org
#> 
#> ── refs 
#> • data.table
#> 
#>  Updated metadata database: 4.45 MB in 9 files.
#> 
#>  Updating metadata database
#>  Updating metadata database ... done
#> 
#> ! Failed to update system requirement mappings, will use cached mappings.
#> + data.table   1.16.0 [bld][cmp][dl]
#>  Getting 1 pkg with unknown size
#>  Got data.table 1.16.0 (source) (5.30 MB)
#>  Building data.table 1.16.0
#>  Built data.table 1.16.0 (17.9s)
#>  Installed data.table 1.16.0  (82ms)
#>  Summary:   1 new  in 18s
#> 
#> -------------------------------------------------------------------------------
#> Writing library description to 'hipercow/lib/.conan/20241008152610'
#> Done!
hipercow_provision_list()
#>  1 conan installation recorded
#> • 1: 20241008152610 (moments ago) [0]
hipercow_provision_check()
#>  Selected provisioning method 'pkgdepends'
#>  1 conan installation recorded
#> • 1: 20241008152610 (moments ago) [0] (*)
#>  The entry marked with '*' matches the provided installation hash

# After a different installation:
hipercow_provision("pkgdepends", refs = "knitr")
#> /`-'\  _______  ___  ___ ____
#> \,T./ / __/ _ \/ _ \/ _ `/ _ \
#>   |   \__/\___/_//_/\_,_/_//_/
#>   |   ---- THE  LIBRARIAN ----
#> 
#> Bootstrapping from: /home/runner/work/_temp/Library
#> Installing into library: hipercow/lib
#> Using method pkgdepends
#> Running in path: /tmp/Rtmpw3JKrD/file16dc4a3b3b2
#> Library paths:
#>   - /tmp/Rtmpw3JKrD/file16dc4a3b3b2/hipercow/lib
#>   - /opt/R/4.4.1/lib/R/site-library
#>   - /opt/R/4.4.1/lib/R/library
#> id: 20241008152638
#> Logs from pkgdepends follow:
#> 
#> -------------------------------------------------------------------------------
#> 
#> 
#> ── repos 
#> • https://cloud.r-project.org
#> 
#> ── refs 
#> • knitr
#>  Loading metadata database
#>  Loading metadata database ... done
#> 
#> + evaluate   1.0.0  [bld]
#> + highr      0.11   [bld]
#> + knitr      1.48   [bld]
#> + xfun       0.48   [bld][cmp]
#> + yaml       2.3.10 [bld][cmp]
#>  No downloads are needed, 5 pkgs are cached
#>  Got highr 0.11 (source) (13.85 kB)
#>  Got evaluate 1.0.0 (source) (34.81 kB)
#>  Got yaml 2.3.10 (source) (94.56 kB)
#>  Got xfun 0.48 (source) (164.96 kB)
#>  Got knitr 1.48 (source) (583.01 kB)
#>  Building evaluate 1.0.0
#>  Building xfun 0.48
#>  Building yaml 2.3.10
#>  Built evaluate 1.0.0 (1.7s)
#>  Installed evaluate 1.0.0  (1s)
#>  Built xfun 0.48 (4.2s)
#>  Installed xfun 0.48  (22ms)
#>  Building highr 0.11
#>  Built yaml 2.3.10 (5s)
#>  Installed yaml 2.3.10  (1s)
#>  Built highr 0.11 (1.9s)
#>  Installed highr 0.11  (1s)
#>  Building knitr 1.48
#>  Built knitr 1.48 (4.7s)
#>  Installed knitr 1.48  (1s)
#>  Summary:   5 new  in 21.5s
#> 
#> -------------------------------------------------------------------------------
#> Writing library description to 'hipercow/lib/.conan/20241008152638'
#> Done!
hipercow_provision_list()
#>  2 conan installations recorded
#> • 1: 20241008152610 (less than a minute ago) [-1]
#> • 2: 20241008152638 (moments ago) [0]
hipercow_provision_check()
#>  Selected provisioning method 'pkgdepends'
#>  2 conan installations recorded
#> • 1: 20241008152610 (less than a minute ago) [-1] (*)
#> • 2: 20241008152638 (moments ago) [0]
#>  The entry marked with '*' matches the provided installation hash

cleanup()
#>  Cleaning up example