11876: Build R SDK reference pages for doc site
authorPeter Amstutz <pamstutz@veritasgenetics.com>
Fri, 9 Feb 2018 14:14:51 +0000 (09:14 -0500)
committerPeter Amstutz <pamstutz@veritasgenetics.com>
Fri, 9 Feb 2018 14:14:51 +0000 (09:14 -0500)
Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz@veritasgenetics.com>

.gitignore
build/run-tests.sh
doc/Rakefile
doc/_config.yml
doc/sdk/R/R.html.textile.liquid [new file with mode: 0644]
doc/sdk/index.html.textile.liquid
sdk/R/.Rbuildignore
sdk/R/DESCRIPTION

index d41eaeea5fa6ee53fef1dedf2e7c37440c844cfb..cc4f17e9ab2611357eab383624fc18158447609b 100644 (file)
@@ -12,6 +12,7 @@ docker/*/generated
 docker/config.yml
 doc/.site
 doc/sdk/python/arvados
+doc/sdk/R/arvados
 sdk/perl/MYMETA.*
 sdk/perl/Makefile
 sdk/perl/blib
index 4ebaf07c13e5ae37a8cb70124a4870fda726b1ef..ec3c4637703abdd4749d6efd00980f854c6ee02f 100755 (executable)
@@ -249,6 +249,8 @@ sanity_checks() {
     R -q -e "library('testthat')" || fatal "No testthat. Try: apt-get install r-cran-testthat"
     # needed for roxygen2, needed for devtools, needed for R sdk
     pkg-config --exists libxml-2.0 || fatal "No libxml2. Try: apt-get install libxml2-dev"
+    # needed for pkgdown, builds R SDK doc pages
+    which pandoc || fatal "No pandoc. Try: apt-get install pandoc"
 }
 
 rotate_logfile() {
@@ -786,6 +788,9 @@ if (!requireNamespace("devtools")) {
 if (!requireNamespace("roxygen2")) {
   install.packages("roxygen2")
 }
+if (!requireNamespace("pkgdown")) {
+  devtools::install_github("hadley/pkgdown")
+}
 devtools::install_dev_deps()
 EOF
 }
index f68a96471d51060a4adc88451916a561c2f8b075..10bb8b96160de5a19ce16887e1789e89c68b2371 100644 (file)
@@ -6,7 +6,7 @@
 require "rubygems"
 require "colorize"
 
-task :generate => [ :realclean, 'sdk/python/arvados/index.html' ] do
+task :generate => [ :realclean, 'sdk/python/arvados/index.html', 'sdk/R/arvados/index.html' ] do
   vars = ['baseurl', 'arvados_api_host', 'arvados_workbench_host']
   vars.each do |v|
     if ENV[v]
@@ -25,6 +25,17 @@ file "sdk/python/arvados/index.html" do |t|
   end
 end
 
+file "sdk/R/arvados/index.html" do |t|
+  `which R`
+  if $? == 0
+    STDERR.puts `R --quiet --vanilla -e 'pkgdown::build_site(pkg="../sdk/R/")' 2>&1`
+    raise if $? != 0
+    cp_r("../sdk/R/docs", "sdk/R/arvados")
+  else
+    puts "Warning: R not found, R documentation will not be generated".colorize(:light_red)
+  end
+end
+
 task :linkchecker => [ :generate ] do
   Dir.chdir(".site") do
     `which linkchecker`
@@ -38,6 +49,7 @@ end
 
 task :clean do
   rm_rf "sdk/python/arvados"
+  rm_rf "sdk/R/arvados"
 end
 
 require "zenweb/tasks"
index 08b581c0d71de7c3fe7ab831191735ee4e7c05b1..680f940f26b04f3c4fa9885ccd0fa291d59fc7a8 100644 (file)
@@ -103,6 +103,8 @@ navbar:
     - Go:
       - sdk/go/index.html.textile.liquid
       - sdk/go/example.html.textile.liquid
+    - R:
+      - sdk/R/R.html.textile.liquid
     - Perl:
       - sdk/perl/index.html.textile.liquid
       - sdk/perl/example.html.textile.liquid
diff --git a/doc/sdk/R/R.html.textile.liquid b/doc/sdk/R/R.html.textile.liquid
new file mode 100644 (file)
index 0000000..7b788a1
--- /dev/null
@@ -0,0 +1,15 @@
+---
+layout: default
+navsection: sdk
+navmenu: R
+title: "R Reference"
+
+no_nav_left: true
+...
+{% comment %}
+Copyright (C) The Arvados Authors. All rights reserved.
+
+SPDX-License-Identifier: CC-BY-SA-3.0
+{% endcomment %}
+
+notextile. <iframe src="arvados/" style="width:100%; height:100%; border:none" />
index e2b6eba8995434181279e39d321e93d9f3c83e2c..fbc5ca11b68ae09dfffefde5ddc3274835ceb940 100644 (file)
@@ -14,6 +14,7 @@ This section documents language bindings for the "Arvados API":{{site.baseurl}}/
 * "Python SDK":{{site.baseurl}}/sdk/python/sdk-python.html
 * "Command line SDK":{{site.baseurl}}/sdk/cli/install.html ("arv")
 * "Go SDK":{{site.baseurl}}/sdk/go/index.html
+* "R SDK":{{site.baseurl}}/sdk/go/index.html
 * "Perl SDK":{{site.baseurl}}/sdk/perl/index.html
 * "Ruby SDK":{{site.baseurl}}/sdk/ruby/index.html
 * "Java SDK":{{site.baseurl}}/sdk/java/index.html
index 91114bf2f2bba5e0c5252e75018da19b869776f1..4952b99da1f83e88546defb4da9d3ebf2e03b4fe 100644 (file)
@@ -1,2 +1,3 @@
 ^.*\.Rproj$
 ^\.Rproj\.user$
+^docs$
index 73738e17bc72f5c210da9b8e1c9699e633288c7c..19cf8fbabb537eb346102891438067c779cec46b 100644 (file)
@@ -2,7 +2,7 @@ Package: ArvadosR
 Type: Package
 Title: Arvados R SDK
 Version: 0.0.2
-Author: Fuad Muhic
+Authors@R: person("Fuad", "Muhic", role = c("aut", "cre"), email = "fmuhic@capeannenterprises.com")
 Maintainer: Ward Vandewege <wvandewege@veritasgenetics.com>
 Description: This is the Arvados R SDK
 URL: http://doc.arvados.org