Sha256: 9ed7d4221b4078e91f1f0ddcefb06cb152ecc6cba039c1f3429f7f2a631a0109

Contents?: true

Size: 1.31 KB

Versions: 2

Compression:

Stored size: 1.31 KB

Contents

desc "Clone repo"
task :clone do
  if File.exists? 'gh-pages'
   Dir.chdir('gh-pages') { sh 'git pull origin gh-pages' }
  else
    FileUtils.mkdir_p 'gh-pages'
    Dir.chdir('gh-pages') do
      sh 'git clone git@github.com:/adambeynon/opal.git .'
      sh 'git checkout gh-pages'
    end
  end
end

desc "Copy files"
task :build do
  files = {
    '../build/opal.js'  => 'gh-pages/opal.js',
    'CNAME'             => 'gh-pages/CNAME',
    'css/styles.css'    => 'gh-pages/css/styles.css',
    'css/syntax.css'    => 'gh-pages/css/syntax.css'
  }

  files.each do |src, dest|
    puts dest
    FileUtils.mkdir_p File.dirname(dest)
    FileUtils.cp src, dest
  end

  require 'redcarpet'
  require 'albino'

  klass = Class.new(Redcarpet::Render::HTML) do
    def block_code(code, language)
      Albino.new(code, language || :text).colorize
    end
  end

  puts 'gh-pages/index.html'
  markdown = Redcarpet::Markdown.new(klass, :fenced_code_blocks => true)

  File.open('gh-pages/index.html', 'w+') do |o|
    o.write File.read('layout/pre.html')
    o.write markdown.render(File.read "../README.md")
    o.write File.read('layout/post.html')
  end
end

desc "commit and push"
task :push do
  Dir.chdir('gh-pages') do
    sh "git add ."
    sh "git commit -a -m \"Documentation update #{Time.new}\""
    sh "git push origin gh-pages"
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
opal-0.3.20 docs/Rakefile
opal-0.3.19 docs/Rakefile