The rsconnect package supports several options that control the method used for http communications, the printing of diagnostic information for http requests, and the launching of an external browser after deployment.
Details
Supported global options include:
rsconnect.ca.bundle: Path to a custom bundle of Certificate Authority root certificates to use when connecting to servers via SSL. This option can also be specified in the environment variableRSCONNECT_CA_BUNDLE. Leave undefined to use your system's default certificate store.rsconnect.check.certificate: Whether to check the SSL certificate when connecting to a remote host; defaults toTRUE. Setting toFALSEis insecure, but will allow you to connect to hosts using invalid certificates as a last resort.rsconnect.http.trace: WhenTRUE, trace http calls (prints the method, path, and total milliseconds for each http request).rsconnect.http.trace.json: WhenTRUE, trace JSON content (shows JSON payloads sent to and received from the server).rsconnect.http.verbose: WhenTRUE, print verbose output for http connections (useful only for debugging SSL certificate or http connection problems).rsconnect.tar: By default, rsconnect uses R's internaltarimplementation to compress content bundles. This may cause invalid bundles in some environments. In those cases, use this option to specify a path to an alternatetarexecutable. This option can also be specified in the environment variableRSCONNECT_TAR. Leave undefined to use the defaulttarimplementation.rsconnect.libcurl.options: A named list of additional cURL options to use when making HTTP requests. Runcurl::curl_options()to see available options.rsconnect.error.trace: WhenTRUE, print detailed stack traces for errors occurring during deployment.rsconnect.launch.browser: WhenTRUE, automatically launch a browser to view applications after they are deployed.rsconnect.locale.cache: WhenFALSE, disable the detected locale cache (Windows only).rsconnect.locale: Override the detected locale.rsconnect.max.bundle.size: The maximum size, in bytes, for deployed content. If not set, defaults to 3 GB.rsconnect.max.bundle.files: The maximum number of files to deploy. If not set, defaults to 10,000.rsconnect.force.update.apps: WhenTRUE, bypasses the prompt to confirm whether you wish to update previously-deployed content.rsconnect.pre.deploy: A function to run prior to deploying content; it receives as an argument the directory containing the content about to be deployed.rsconnect.post.deploy: A function to run after successfully deploying content; it receives as an argument the directory containing the content about to be deployed.rsconnect.python.enabled: WhenTRUE, use the python executable specified by theRETICULATE_PYTHONenvironment variable and add apythonsection to the deployment manifest. By default, python is enabled when deploying to Posit Connect and disabled when deploying to shinyapps.io.rsconnect.check_updates: WhenTRUE(the default), rsconnect looks in your configured repositories for a newer version of the package and tells you if one is available. Set toFALSEto turn this check off. You can also set the environment variableRSCONNECT_CHECK_UPDATES, which takes precedence over the option.rsconnect.update_check_timeout: The maximum time, in seconds, to wait for each repository request during the update check. Defaults to 2. This limit keeps the check from delayinglibrary(rsconnect)or error reporting.rsconnect.update_check_interval: How long, in seconds, to cache the result of the update check. Defaults to 86400 (one day).
When deploying content from the RStudio IDE, the rsconnect package's deployment methods are executed in a vanilla R session that doesn't execute startup scripts. This can make it challenging to ensure options are set properly prior to push-button deployment, so the rsconnect package has a parallel set of "startup" scripts it runs prior to deploying. The following are run in order, if they exist, prior to deployment:
$R_HOME/etc/rsconnect.site: LikeRprofile.site; for site-wide pre-flight and options.~/.rsconnect_profile: Like.Rprofile; for user-specific content.$PROJECT/.rsconnect_profile: Like.Rprofilefor projects;$PROJECThere refers to the root directory of the content being deployed.
Note that, unlike .Rprofile, these files don't replace each other; all
three will be run if they exist.
Examples
if (FALSE) { # \dontrun{
# trace http requests
options(rsconnect.http.trace = TRUE)
# print verbose output for http requests
options(rsconnect.http.verbose = TRUE)
# print JSON content
options(rsconnect.http.trace.json = TRUE)
# don't automatically launch a browser after deployment
options(rsconnect.launch.browser = FALSE)
} # }