Sage-Bionetworks / syndccutils

code for managing data coordinating operations through Synapse
7 stars 8 forks source link

Templating and automation for building/deploying content #33

Open jaeddy opened 6 years ago

jaeddy commented 6 years ago

The current system of using separate scripts for each Synapse project we want to summarize is messy and difficult to maintain — especially as the core functions for creating charts and tables aren't exactly stable yet...

Ideally, we would have a single script or template that would control everything from collecting data, building summary outputs, and saving the results at designated locations in Synapse. The template/script could then be configured or parameterized with something like a YAML file for each project.

I don't have the mechanics for all this figured out, but I remember seeing that @kdaily did something similar with his synapseProjectUsageStatistics package — so he might have some ideas for where to start.

kdaily commented 6 years ago

Yup, pretty simple. I have a YAML header in an RMarkdown doc for defaults, but rmarkdown::render takes a params parameter that overrides it. I still have separate 'scripts' that call it, but only because I was lazy to finish abstracting parameters away. See here for an example:

https://github.com/Sage-Bionetworks/synapseProjectUsageStatistics/blob/master/inst/scripts/manual_AMPAD.R