#!/usr/bin/env rake

require "rubygems"
require "colorize"

task :generate => [ :realclean, 'sdk/python/arvados/index.html' ] do
  vars = ['baseurl', 'arvados_api_host', 'arvados_workbench_host']
  vars.each do |v|
    if ENV[v]
      website.config.h[v] = ENV[v]
    end
  end
end

file "sdk/python/arvados/index.html" do |t|
  `which epydoc`
  if $? == 0
    `epydoc --html --parse-only -o sdk/python/arvados ../sdk/python/arvados/`
  else
    puts "Warning: epydoc not found, Python documentation will not be generated".colorize(:light_red)
  end
end

task :linkchecker => [ :generate ] do
  Dir.chdir(".site") do
    `which linkchecker`
    if $? == 0
      system "linkchecker index.html --ignore-url='!file://'" or exit $?.exitstatus
    else
      puts "Warning: linkchecker not found, skipping run".colorize(:light_red)
    end
  end
end

task :clean do
  rm_rf "sdk/python/arvados"
end

require "zenweb/tasks"
load "zenweb-textile.rb"
load "zenweb-liquid.rb"

task :extra_wirings do
  $website.pages["sdk/python/python.html.textile.liquid"].depends_on("sdk/python/arvados/index.html")
end