From 5709b7082a1953668e08b0293406efac82ce0646 Mon Sep 17 00:00:00 2001 From: Nathan Weizenbaum Date: Sat, 4 Jul 2009 16:26:25 -0700 Subject: [PATCH] Fix up some update-watcher stuff. --- Rakefile | 13 +++++++++++-- extra/update_watch.rb | 3 +++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Rakefile b/Rakefile index 51e367b1..c8b06610 100644 --- a/Rakefile +++ b/Rakefile @@ -250,6 +250,12 @@ end # ----- Handling Updates ----- task :handle_update do + unless ENV["REF"] =~ %r{^refs/heads/(master|(?:haml|sass)-pages)$} + puts "#{'=' * 20} Ignoring rake handle_update REF=#{ENV["REF"].inspect}" + next + end + branch = $1 + puts puts puts '=' * 150 @@ -260,11 +266,11 @@ task :handle_update do sh %{git reset --hard origin/master} begin - if ENV["REF"] == "refs/heads/master" + if branch == "master" sh %{rake release_edge --trace} sh %{rake pages --trace PROJ=haml} sh %{rake pages --trace PROJ=sass} - elsif ENV["REF"] =~ %r{^refs/heads/(haml|sass)-pages$} + elsif branch =~ /^(haml|sass)-pages$/ sh %{rake pages --trace PROJ=#{$1}} end ensure @@ -272,4 +278,7 @@ task :handle_update do sh %{git clean -xdf} sh %{git checkout master} end + + puts 'Done running handle_update' + puts '=' * 150 end diff --git a/extra/update_watch.rb b/extra/update_watch.rb index bbdde6a1..0d29c608 100644 --- a/extra/update_watch.rb +++ b/extra/update_watch.rb @@ -3,8 +3,11 @@ require 'sinatra' require 'json' set :port, 3123 set :environment, :production +enable :lock Dir.chdir(File.dirname(__FILE__) + "/..") post "/" do + puts "Recieved payload!" + puts "Rev: #{`git name-rev HEAD`.strip}" system %{rake handle_update --trace REF=#{JSON.parse(params["payload"])["ref"].inspect}} end