-
Notifications
You must be signed in to change notification settings - Fork 153
Description
If we want to use install_gitlab
we supply a repo
parameter which is in username/repo[/subdir][@ref]
format. This string is split by parse_repo_spec so we have a username
variable (e.g., "r-lib") and repo
variable (e.g., "remotes").
If my repo is within a GitLab group, then I can simply replace the username
portion of the repo
parameter with the name of the group.
However, if I have a subgroup holding the repo, I'm stuck. There is no params
variable for subgroups.
#' Works
devtools::install_gitlab("timtrice/falsy")
#' Works
devtools::install_gitlab("timtrice_tests/falsy")
#' Fails
devtools::install_gitlab("timtrice_tests/tests/falsy")
Error in utils::download.file(url, path, method = download_method(), quiet = quiet, :
cannot open URL 'https://gitlab.com/timtrice_tests/tests/raw/master/falsy/DESCRIPTION?private_token=ABCDEFGHIJKLMNOP'
There is no way to get the subgroup past the parse_repo_spec
function. So, further functions that stick the URL back together do it incorrectly. The URL in the error above should be,
https://gitlab.com/timtrice_tests/tests/raw/master/falsy/DESCRIPTION?private_token=ABCDEFGHIJKLMNOP
For example, in remote_package_name
, the src is built (using build_url
) as that in the error message. But, if I change src to the last example above, while debugging, it is successful.
Another option is, instead of using the group/subgroup/repo combination, perhaps we can pass the Project ID? This doesn't seem to work in remote_pacage_name
but it does in gitlab_commit
.