mirror of https://github.com/MISP/misp-website
				
				
				
			
		
			
				
	
	
		
			74 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Ruby
		
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Ruby
		
	
	
require "rubygems"
 | 
						|
require "tmpdir"
 | 
						|
 | 
						|
require "bundler/setup"
 | 
						|
require "jekyll"
 | 
						|
 | 
						|
# Usage:
 | 
						|
# rake site:publish -> testing: http://misp.github.io/misp-website
 | 
						|
# rake publish -> prod: http://www.misp-project.org/ or http://misp.github.io
 | 
						|
 | 
						|
# Testing website
 | 
						|
GITHUB_TESTING = "MISP/misp-website"
 | 
						|
# Testing website
 | 
						|
GITHUB_PROD = "MISP/misp.github.io"
 | 
						|
 | 
						|
desc "Generate blog files"
 | 
						|
task :generate do
 | 
						|
  Jekyll::Site.new(Jekyll.configuration({
 | 
						|
    "source"      => ".",
 | 
						|
    "destination" => "_site"
 | 
						|
  })).process
 | 
						|
end
 | 
						|
 | 
						|
 | 
						|
desc "Generate and publish blog to gh-pages"
 | 
						|
task :publish => [:generate] do
 | 
						|
  Dir.mktmpdir do |tmp|
 | 
						|
    cp_r "_site/.", tmp
 | 
						|
 | 
						|
    pwd = Dir.pwd
 | 
						|
    Dir.chdir tmp
 | 
						|
 | 
						|
    system "git init"
 | 
						|
    system "git add ."
 | 
						|
    message = "Site updated at #{Time.now.utc}"
 | 
						|
    system "git commit -m #{message.inspect}"
 | 
						|
    system "git remote add origin git@github.com:#{GITHUB_PROD}.git"
 | 
						|
    system "git push origin master --force"
 | 
						|
 | 
						|
    Dir.chdir pwd
 | 
						|
  end
 | 
						|
end
 | 
						|
 | 
						|
namespace :site do
 | 
						|
  desc "Generate blog files"
 | 
						|
  task :generate do
 | 
						|
    Jekyll::Site.new(Jekyll.configuration({
 | 
						|
      "source"      => ".",
 | 
						|
      "destination" => "_site"
 | 
						|
    })).process
 | 
						|
  end
 | 
						|
 | 
						|
 | 
						|
  desc "Generate and publish blog to gh-pages"
 | 
						|
  task :publish => [:generate] do
 | 
						|
    Dir.mktmpdir do |tmp|
 | 
						|
      cp_r "_site/.", tmp
 | 
						|
 | 
						|
      pwd = Dir.pwd
 | 
						|
      Dir.chdir tmp
 | 
						|
 | 
						|
      system "git init"
 | 
						|
      system "git add ."
 | 
						|
      message = "Site updated at #{Time.now.utc}"
 | 
						|
      system "git commit -m #{message.inspect}"
 | 
						|
      system "git remote add origin git@github.com:#{GITHUB_TESTING}.git"
 | 
						|
      system "git push origin master:refs/heads/gh-pages --force"
 | 
						|
 | 
						|
      Dir.chdir pwd
 | 
						|
    end
 | 
						|
  end
 | 
						|
end
 | 
						|
 |