# Install packages

    library(MolgenisArmadillo)

To be able to test your package as a developer you can install your package using the MolgenisArmadillo. There are a few preconditions in other to use the install_packages function.

- Make sure you have the `superuser` role.
- The Armadillo needs to run in `development` mode

## Login

You first need to login to the Armadillo (as `superuser`)

    armadillo.login("https://armadillo.dev.molgenis.org",
          "https://armadillo-minio.dev.molgenis.org")
    #> Error in armadillo.login("https://armadillo.dev.molgenis.org", "https://armadillo-minio.dev.molgenis.org"): unused argument ("https://armadillo-minio.dev.molgenis.org")

## Install packages

If you want to install a package on the Armadillo Rserver you can execute the following endpoint. The selected profile is always `default` if none is specified.

    armadillo.install_packages("data/packages/MolgenisArmadillo_1.1.0.9000.tar.gz")
    #> Error in httr::upload_file(path): file.exists(path) is not TRUE

In order to install the packages on a specific profile you can specify the profile.

    armadillo.install_packages("data/packages/MolgenisArmadillo_1.1.0.9000.tar.gz", profile = "exposome")

You can install multiple packages as well by specifying a vector

    armadillo.install_packages(c("data/packages/MolgenisArmadillo_1.1.0.9000.tar.gz", "data/packages/dsBase_6.1.0.9000.tar.gz"))

## Whitelist packages

To be able to use new packages in the Armadillo you need to add them to the whitelist. You can do this by executing the following method.

    armadillo.whitelist_packages("MolgenisArmadillo")
    #> Error in armadillo.whitelist_packages("MolgenisArmadillo"): could not find function "armadillo.whitelist_packages"

You are able to whilist mulitple packages as well using the following line:

    armadillo.whitelist_packages(c("MolgenisArmadillo", "dsBase"))
    #> Error in armadillo.whitelist_packages(c("MolgenisArmadillo", "dsBase")): could not find function "armadillo.whitelist_packages"