I'm publishing a Shiny app to Connect. It requires inclusion of a private package, because (a) the package is served by a private repository yet (b) Connect can't access that private repository.
The process for specifying a private package seems quite straightforward. I followed what I think are all of those straightforward steps. Still, I failed. Thanks in advance for any suggestions.
- Some facts
a. The private package does not need to be compiled.
b. It imports htmlwidgets, but I've tested deployment with a separate explicit library(htmlwidgets) to no avail.
c. We've had no other problems deploying to Connect.
d. I've confirmed that other config changes actually yield changes in Connect (that is, Connect is reading the correct config file).
Here's what I did, and ended up with:
- RStudio IDE 1.2 on Win10:
a. Installed all required packages including the private package (it's called RiskGauge). I installed the private package using devtools as follows:
> library(devtools) >devtools::install_gitlab("xxxx/RiskGauge", auth_token = "xxxxxx", host="xxxxxxx")
b. tarred, then gzipped, the RiskGuage package and named it after the commit hash (Remote SHA in the DESCRIPTION file), in this case, dafc7d31fede0fd8f61b5469221f6effae23abbb.tar.gz
- RStudio Connect on RHEL 7:
a. Added a setting to /etc/rstudio-connect.gcfg:
[server] SourcePackageDir = /opt/R-packages
b. Created directory /opt/R-packages/, w/ a subdirectory /RiskGauge/ .
c. Saved my private package's .tar.gz file in /opt/R-packages/RiskGauge/
c. Set liberal permissions on /opt/R-packages/ (and subdirectories and files therein)
d. systemctl restart rstudio-connect
- Back to RStudio IDE on Win10:
a. Attempted to publish the Shiny app to Connect.
Here's my log extract:
2019/05/28 22:05:37.819114530 Installing RiskGauge (1.0.0) ... 2019/05/28 22:05:39.527271486 curl: (22) The requested URL returned error: 404 Not Found 2019/05/28 22:05:40.772211537 curl: (22) The requested URL returned error: 404 Not Found 2019/05/28 22:05:42.017255823 curl: (22) The requested URL returned error: 404 Not Found 2019/05/28 22:05:43.266277682 curl: (22) The requested URL returned error: 404 Not Found 2019/05/28 22:05:44.520517787 curl: (22) The requested URL returned error: 404 Not Found 2019/05/28 22:05:45.523664215 FAILED **2019/05/28 22:05:45.524508485 Error in getSourceForPkgRecord(pkgRecord, srcDir(project), availablePackagesSource(repos = repos), : Failed to retrieve package sources for RiskGauge 1.0.0 from CRAN (internet connectivity issue?)** 2019/05/28 22:05:45.524551121 2019/05/28 22:05:45.524604473 Unable to fully restore the R packages associated with this deployment. 2019/05/28 22:05:45.524609179 Please review the preceding messages to determine which package 2019/05/28 22:05:45.524638056 encountered installation difficulty and the cause of the failure. 2019/05/28 22:05:45.524641421 2019/05/28 22:05:45.524669308 Some typical reasons for package installation failures: 2019/05/28 22:05:45.524671911 * A system library needed by the R package is not installed. 2019/05/28 22:05:45.524689386 Some of the most common package dependencies are cataloged at: 2019/05/28 22:05:45.524691039 https://github.com/rstudio/shinyapps-package-dependencies 2019/05/28 22:05:45.524707109 2019/05/28 22:05:45.524708778 * The R package requires a newer version of R. 2019/05/28 22:05:45.524724995 2019/05/28 22:05:45.524726563 * The C/C++ compiler is outdated. This is often true for packages 2019/05/28 22:05:45.524742661 needing C++11 features. 2019/05/28 22:05:45.524744373 2019/05/28 22:05:45.524760346 * The R package is Windows-only or otherwise unavailable for this 2019/05/28 22:05:45.524761959 operating system. 2019/05/28 22:05:45.524777878 2019/05/28 22:05:45.524779393 * The package is housed in a private repository that requires 2019/05/28 22:05:45.524795131 authentication to access. For more details on this, see: 2019/05/28 22:05:45.524796771 https://docs.rstudio.com/connect/admin/package-management.html#private-repositories 2019/05/28 22:05:45.524813008 2019/05/28 22:05:45.524814668 The package description and documentation will list system requirements 2019/05/28 22:05:45.524830716 and restrictions. 2019/05/28 22:05:45.524832408 2019/05/28 22:05:45.524848113 Please contact your RStudio Connect administrator for further help 2019/05/28 22:05:45.524849709 resolving this issue. Build error: exit status 1 Application deployment failed with error: exit status 1 Deployment completed: https://server:443/connect/#/apps/34/logs Warning message: In FUN(X[[i]], ...) : Package 'RiskGauge 1.0.0' was installed from sources; Packrat will assume this package is available from a CRAN-like repository during future restores