Description Package options Project management Repository management PKGZIP building Bash installer RSuite miscellaneous Template management System requirements Extending RSuite - RC adapter Extending RSuite - Repository adapter and manager Project access/loading/unloading Project configuration
Supports safe and reproducible solutions development in R.
It will help you with environment separation per project, dependency
management, local packages creation and preparing deployment packs
for your solutions.
RSuite uses the following options
to configure behavior:
rsuite.user_templ_path
: path to folder containing user customized templates. If not set
(which is default) no user custom templates can be used.
rsuite.cache_path
: path to RSuite's cache folder to store downloaded packages for
later usage and content index of used repositories. If not set (which is default) no caching
will be performed.
These functions will help you start a new RSuite project or package inside it, detect and install dependencies into the local environment, build your project packages and prepare deployment zip when you are done with the development.
prj_start
Creates project structure at the specified path.
prj_start_package
Creates package structure inside a project.
prj_install_deps
Installs project dependencies and needed supportive packages.
prj_clean_deps
Uninstalls unused packages from project local environment.
prj_build
Builds project internal packages and installs them.
prj_zip
Prepares deployment zip tagged with version.
prj_pack
Prepares project source pack tagged with version.
prj_lock_env
Locks the project environment.
prj_unlock_env
Unlocks the project environment.
These functions make you able to manage package repositories. This RSuite built-in repository manager allows you to manage S3 based and local (in folder) repositories.
repo_mng_start
Starts management over the repository.
repo_mng_init
Initializes a repository (creates its structure).
repo_mng_stop
Stops management over the repository.
repo_mng_list
Retrieves the list of packages available in the repository.
repo_mng_remove
Removes packages from the repository.
repo_upload_prj_packages
Builds and uploads project package(s) into the repository.
repo_upload_package_files
Uploads package file(s) into a managed repository.
repo_upload_ext_packages
Uploads external packages into a managed repository.
repo_upload_pkgzip
Uploads PKGZIP into a managed repository.
repo_upload_github_package
Loads package from a GitHub repository.
repo_upload_bioc_package
Loads package from a BioConductor repository.
PKGZIPs are for management of repositories in an internet-less environment. There is often no internet access on corporate servers. In that case, you can prepare a PKGZIP with required packages somewhere with an internet connection and use it to update an internal CRAN-like repository which has no access to the internet.
pkgzip_build_prj_packages
Builds PKGZIP out of project packages.
pkgzip_build_package_files
Builds PKGZIP out of passed package files.
pkgzip_build_ext_packages
Builds PKGZIP out of passed external packages.
pkgzip_build_github_package
Builds PKGZIP out of a package on GitHub.
pkgzip_build_bioc_package
Builds PKGZIP out of a package on BioConductor.
You can create bash installer script to deploy in optimized (intelligent & parallel) way you project.
inst_wrap_zip
Wraps deployment zip into bash installer script.
rsuite_check_version
Checks if a newer version of RSuite is available.
rsuite_update
Updates RSuite to the newest available version
rsuite_register_repo_adapter
Registers repository adapter to use for projects.
rsuite_get_repo_adapter_names
Gets all names of known repository adapters.
rsuite_register_rc_adapter
Registers RC (revision control) adapter to use for projects.
rsuite_unregister_rc_adapter
Unregisters RC (revision control) adapter.
rsuite_get_rc_adapter_names
Gets all names of known RC (revision control) adapters.
rsuite_getLogger
Retrieves RSuite logger.
rsuite_get_os_info
Retrieves information on current OS.
These functions will help you to manage RSuite templates. They allow you to create a project and package templates, register them in the local or global template directory and list all registered templates.
tmpl_start
Creates a new template.
tmpl_list_registered
Lists all registered templates
tmpl_register
Registers a template.
Some packages have special system requirements declared. E.g. XML package on Linuxes requires the libxml2 system library to be installed. Such requirements are specified in free form in the SystemRequirements field in the package DESCRIPTION. The team from R Consortium (https://www.r-consortium.org/) performed a great job with collecting sysreqs database. As RSuite is supposed to work also in a connection-less environment the database they created is included in RSuite.
These functions extract system requirements for the whole project environment and make it possible to prepare installation scripts or update your system if you have privileged access.
sysreqs_collect
Prints out all system requirements from dependencies and project packages.
sysreqs_check
Checks for system requirements availability.
sysreqs_install
Updates the system to satisfy detected requirements.
sysreqs_script
Creates a script to update a system to satisfy project requirements.
This API allows you to implement your own RC (revision control) adapter for RSuite.
RSuite has SVN and Git adapters built-in for you.
After you developed your very own RC adapter you can register it in RSuite
with the rsuite_register_rc_adapter
function.
rc_adapter_create_base
Creates a base presentation for RC adapter to use by concrete implementations.
rc_adapter_is_under_control
Detects if directory is under adapter's managed version control.
rc_adapter_prj_struct_add
Puts project structure under RC adapter's managed version control.
rc_adapter_pkg_struct_add
Puts package structure under RC adapter's managed version control.
rc_adapter_get_version
Retrieves current RC version number for working copy at the passed directory.
rc_adapter_remove_admins
Removes all RC related administrative entries from folder tree at the directory.
This API allows you to implement your own repository adapter for RSuite. If the repository can be managed (you can add/remove/update packages in it) you can provide a repo manager object creation ability to manage it with RSuite.
RSuite has CRAN, MRAN, S3(Amazon S3 bucket base repository), Url(repository under Url) and Dir(local CRAN-like folder) repo adapters and Dir and S3 repo managers built-in for you.
After you develop your very own repository adapter you can register it in
RSuite with the rsuite_register_repo_adapter
function.
repo_adapter_create_base
Creates the base presentation for the repo adapter to use by concrete implementations.
repo_adapter_get_info
Returns information about the repository the adapter is working on.
rc_adapter_prj_struct_add
Puts the project structure under RC adapter's managed version control.
repo_adapter_get_path
Returns adapter path related to project to use for dependencies resolution.
repo_adapter_create_manager
Creates repo manager to manage its repository.
repo_manager_get_info
Returns information on repo manager.
repo_manager_init
Initializes managed repository structure.
repo_manager_upload
Adds packages to the managed repository.
repo_manager_remove
Removes specified packages from the repository.
repo_manager_destroy
Releases resources allocated to manage the repository.
You normally will not need to use these functions unless you want to perform some scripting with use of RSuite.
prj_init
Loads project settings without loading it into the environment.
prj_load
Loads project into the environment so all master scripts can run.
prj_unload
Unloads last loaded project.
These functions are a convenient way to change the project global configuration.
You normally will not need to use these functions unless you want to perform some scripting with use of RSuite.
prj_config_set_repo_adapters
Updates the project configuration to use only specified repository adapters.
prj_config_set_rversion
Updates the project configuration to use specified R Version.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.