Mercurial > repos > mingchen0919 > elastic_expose_data
view elastic_tool_render.R @ 4:9ff33a3631fa draft
planemo upload commit 979e0f1c28c74ca7df02ef20c2208e9677bc820a-dirty
author | mingchen0919 |
---|---|
date | Mon, 02 Apr 2018 08:32:59 -0400 |
parents | 16e0f4b7a286 |
children |
line wrap: on
line source
##============ Sink warnings and errors to a file ============== ## use the sink() function to wrap all code within it. ##============================================================== zz = file(Sys.getenv('TOOL_LOG')) sink(zz) sink(zz, type = 'message') #------------import libraries-------------------- options(stringsAsFactors = FALSE) library(rmarkdown) #------------------------------------------------ #------------------------------------------------ options_and_arguments = read.table(paste0(Sys.getenv('REPORT_FILES_PATH'), '/options_and_arguments.txt'), sep = '|', header = TRUE) #------------------------------------------------ # create three folders within working directory dir.create('list') dir.create('paired') dir.create('list_paired') print(Sys.getenv('JOB_WORKING_DIR')) #-----------------render Rmd-------------- # copy R markdown file to working directory and render it within the working directory. render(paste0(Sys.getenv('TOOL_INSTALL_DIR'), '/elastic_tool.Rmd'), output_file = paste0(Sys.getenv('REPORT_FILES_PATH'), '/report.html')) # for some unknow reason, directly using REPORT as the input value for output_file parameter # in the render function can cause empty report file when the tool runs in batch mode. # the solution is to render the rmarkdown to a explicitly specified file and then copy the # file to ${REPORT} system(command = 'cp ${REPORT_FILES_PATH}/report.html ${REPORT}') system(command = 'sh ${REPORT_FILES_PATH}/script.sh') #------------------------------------------ ##--------end of code rendering .Rmd templates---------------- sink() ##=========== End of sinking output=============================