openpharma / staged.dependencies

R package to implement development stages for package development
https://openpharma.github.io/staged.dependencies/
MIT License
12 stars 3 forks source link

Error while caching git repo when package is in a subdirectory #172

Open cicdguy opened 1 year ago

cicdguy commented 1 year ago

Summary

If an R package exists in a subdirectory of a git repo, during the caching process an error is encountered due to the subdirectory not being recognized as a git repository.

Steps to reproduce

In a shell:

# Clone sample R package
git clone git@github.com:insightsengineering/r.pkg.template.git
cd r.pkg.template

# Create subdirectory and move R package contents to subdirectory
mkdir subdirectory
mv * subdirectory
cd subdirectory

In an R console:

# Attempt to compute dependency table
x <- staged.dependencies::dependency_table()

The error:

Copying local dir ~/r.pkg.template/subdirectory to cache dir ~/.staged.dependencies/packages_cache/local_insightsengineering_r.pkg.template_d98eb848af25dc4c5b9e8dab434f64c7
Error in repository(repo) : The 'path' is not in a git repository

Potential solutions

  1. Skip cache in case of failure
  2. Add option to skip_cache in the dependency_table function
  3. Cache the root of the project