We are using an company specific instance of Artifactory hosted at https://company.jfrog.io/ and we use it to host packages for R.
We’ve configured a remote repository cran-remote
to mirror the official CRAN repository (https://cran.r-project.org/). We’ve also configured cran-local
to host private company specific packages. And finally we created a cran
virtual repository which is a combination of cran-remote
and cran-local
. Normally we are able to to just have users set up the virtual repo in R and they can install both local and remote package, but as as about a week ago, only remote packages are available from the virtual repo. For example we set the users up in R with
options("repos")
$repos
$repos$cran
[1] "https://user:[email protected]/artifactory/cran/"
But running available.packages()
inside of R, doesn’t show any package in cran-local
, just those in cran-remote
. I can check each of the sub repos as well
# Virtual
nrow(available.packages("https://user:[email protected]/artifactory/cran/src/contrib"))
# [1] 21096
# Remote
nrow(available.packages("https://user:[email protected]/artifactory/cran-remote/src/contrib"))
# [1] 21096
# Local
nrow(available.packages("https://user:[email protected]/artifactory/cran-local/src/contrib"))
# [1] 11
# compare names
length(setdiff(
rownames(available.packages("https://user:[email protected]/artifactory/cran-local/src/contrib")),
rownames(available.packages("https://user:[email protected]/artifactory/cran-remote/src/contrib"))
))
# [1] 11 #(no overlapping names)
There are no duplicated names or anything like that. The values from local are just not in the virtual repo. This used to work just fine but stopped working ~Jul 19.
Why are the packages from cran-local not appearing in the virtual cran repo? This does not appear to be a problem with other repo types such as npm or pypi.
You can see the configuration in this screen shot