To share your data using Armadillo, you can see the different relevant steps you can take before the shared data can be transferred to the researchers.
In order to access the files as a data manager, you need to log in. The login method needs the URLs of the Armadillo server and the MinIO fileserver. It will open a browser window where you can identify yourself with the ID provider.
armadillo.login("https://armadillo.test.molgenis.org", "https://armadillo-minio.test.molgenis.org") #>  "We're opening a browser so you can log in with code 5HBGK8"
It will create a session and store the credentials in the environment.
If you need to share data via Armadillo you can have a nested structure to save you data.
We distinguish: - projects - folders - tables
Projects are a sort of root-folders you can give persons permissions on. you can imagine that you will use a seperate project for each study you need to support. This way you make sure people can not see eachothers variables.
Folder objects can be used to version the different tables you want to share in Armadillo. This is not mandatory and are free to use the folder level as you see fit. In our examples we will go into the versioning part a bit deeper.
Tables are actual tables in R which contain the data you want to share. This can be all the data on a certain subject, mostly used in consortia or a specific study you want to expose.
There are helper functions to help you determine what is in the storage server. You can list projects and tables to what’s in the storage.
# listing tables per project armadillo.list_projects() #>  "cohort1" "cohort2" "cohort3" "dnbc" #>  "example-dictionary" "exampledictionary" "methylationclocks" "subset1"
# listing tables per project armadillo.list_tables("cohort1") #>  "1_1-outcome-1_0/nonrep" "1_1-outcome-1_0/yearlyrep" "2_1-core-1_0/monthlyrep" #>  "2_1-core-1_0/nonrep" "2_1-core-1_0/trimesterrep" "2_1-core-1_0/yearlyrep"
You can download the data in the R-environment as well.
# download table to local R environment <- armadillo.load_table("cohort1", "2_1-core-1_0", "trimesterrep") trimesterrep # check the column names from the local environment colnames(trimesterrep) #>  "row_id" "child_id" "age_trimester" "smk_t" "alc_t"
Now you can also take a look at the files in the user interface of the MinIO fileserver if you open the MinIO server URL in a browser window.
To delete the data you need to throw away the contents first.
# throw away the core tables armadillo.delete_table("cohort1", "2_1-core-1_0", "nonrep") #> Deleted '2_1-core-1_0/nonrep'. armadillo.delete_table("cohort1", "2_1-core-1_0", "yearlyrep") #> Deleted '2_1-core-1_0/yearlyrep'. armadillo.delete_table("cohort1", "2_1-core-1_0", "trimesterrep") #> Deleted '2_1-core-1_0/trimesterrep'. armadillo.delete_table("cohort1", "2_1-core-1_0", "monthlyrep") #> Deleted '2_1-core-1_0/monthlyrep'. # throw away the outcome tables armadillo.delete_table("cohort1", "1_1-outcome-1_0", "nonrep") #> Deleted '1_1-outcome-1_0/nonrep'. armadillo.delete_table("cohort1", "1_1-outcome-1_0", "yearlyrep") #> Deleted '1_1-outcome-1_0/yearlyrep'.
Now you can delete the project.
armadillo.delete_project("cohort1") #> Deleted project 'cohort1'