Advertisement
Guest User

Untitled

a guest
Dec 7th, 2016
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.71 KB | None | 0 0
  1. require "rubygems"
  2. require "tmpdir"
  3.  
  4. require "bundler/setup"
  5. require "jekyll"
  6.  
  7. GITHUB_REPONAME = "my_reponame"
  8.  
  9.  
  10. desc "Generate blog files"
  11. task :generate do
  12. Jekyll::Site.new(Jekyll.configuration({
  13. "source" => ".",
  14. "destination" => "_site"
  15. })).process
  16. end
  17.  
  18.  
  19. desc "Generate and publish blog to gh-pages"
  20. task :publish => [:generate] do
  21. Dir.mktmpdir do |tmp|
  22. cp_r "_site/.", tmp
  23.  
  24. pwd = Dir.pwd
  25. Dir.chdir tmp
  26.  
  27. system "git init"
  28. system "git add ."
  29. message = "Site updated at #{Time.now.utc}"
  30. system "git commit -m #{message.inspect}"
  31. system "git remote add origin git@github.com:#{GITHUB_REPONAME}.git"
  32. system "git push origin master --force"
  33.  
  34. Dir.chdir pwd
  35. end
  36. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement