|
0
|
1 ##============ Sink warnings and errors to a file ==============
|
|
|
2 ## use the sink() function to wrap all code within it.
|
|
|
3 ##==============================================================
|
|
7
|
4 zz = file(paste0(Sys.getenv('REPORT_FILES_PATH'), '/.r_rendering.log.txt'))
|
|
0
|
5 sink(zz)
|
|
|
6 sink(zz, type = 'message')
|
|
7
|
7
|
|
|
8 #============== preparation ====================================
|
|
0
|
9 options(stringsAsFactors = FALSE)
|
|
7
|
10 # import libraries
|
|
|
11 #------------------------------------------------------------------
|
|
|
12 # ADD MORE LIBRARIES HERE IF YOUR TOOL DEPENDS ON OTHER R LIBRARIES
|
|
|
13 #------------------------------------------------------------------
|
|
|
14 library('getopt')
|
|
|
15 library('rmarkdown')
|
|
|
16 library('htmltools')
|
|
1
|
17
|
|
4
|
18
|
|
7
|
19 # load helper functions
|
|
|
20 source(paste0(Sys.getenv('TOOL_INSTALL_DIR'), '/helper.R'))
|
|
|
21 # import getopt specification matrix from a csv file
|
|
|
22 opt = getopt(getopt_specification_matrix('getopt_specification.csv',
|
|
|
23 tool_dir=Sys.getenv('TOOL_INSTALL_DIR')))
|
|
|
24 # define environment variables for all input values. this is useful when we
|
|
|
25 # want to use input values by other programming language in r markdown
|
|
0
|
26 do.call(Sys.setenv, opt[-1])
|
|
7
|
27 #===============================================================
|
|
4
|
28
|
|
0
|
29
|
|
7
|
30 #======================== render Rmd files =========================
|
|
|
31 # NOTICE:
|
|
|
32 # we should copy all rmarkdown files from tool install directory to REPORT_FILES_PATH directory.
|
|
|
33 # and render rmarkdown files in the REPORT_FILES_PATH directory.
|
|
|
34 file.copy(from = paste0(Sys.getenv('TOOL_INSTALL_DIR'), '/vakata-jstree-3.3.5'),
|
|
|
35 to = Sys.getenv('REPORT_FILES_PATH'), recursive = TRUE)
|
|
|
36 system(command = 'cp -r ${TOOL_INSTALL_DIR}/*.Rmd ${REPORT_FILES_PATH}')
|
|
|
37 # for rendering a site
|
|
|
38 system(command = 'cp -r ${TOOL_INSTALL_DIR}/_site.yml ${REPORT_FILES_PATH}')
|
|
1
|
39
|
|
7
|
40 #----------------BELOW IS WHERE YOU NEED TO CUSTOMIZE ---------------------
|
|
|
41 render(input = paste0(Sys.getenv('REPORT_FILES_PATH'), '/rmarkdown_report.Rmd'))
|
|
|
42 # add more lines below if there are more Rmd files to be rendered
|
|
1
|
43
|
|
7
|
44 #===============================================================
|
|
1
|
45
|
|
|
46
|
|
7
|
47 #============== expose outputs to galaxy history ===============
|
|
|
48 system(command = 'sh ${TOOL_INSTALL_DIR}/expose-outputs.sh')
|
|
|
49 #===============================================================
|
|
1
|
50
|
|
0
|
51
|
|
|
52 ##--------end of code rendering .Rmd templates----------------
|
|
|
53 sink()
|
|
7
|
54 ##=========== End of sinking output=============================
|