X-Git-Url: https://nos-oignons.net/gitweb/gestion-adh.git/blobdiff_plain/f6e098c942a89d011c0875783bd0d0db54e4b67a..f3e83e558e53c812ce48784b950d0309eb8da3bb:/bin/pre-receive-hook?ds=sidebyside diff --git a/bin/pre-receive-hook b/bin/pre-receive-hook index c86b325..a7a7a03 100755 --- a/bin/pre-receive-hook +++ b/bin/pre-receive-hook @@ -1,24 +1,26 @@ -#!/usr/bin/ruby1.9.1 +#!/usr/bin/ruby #-*- coding: utf-8 -*- +# +# Système de gestion des adhésions de Nos oignons +# Copyright © 2013-2014 Nos oignons +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . require 'rubygems' require 'bundler' Bundler.setup -require 'nos_oignons/git' -require 'nos_oignons/subscriptions' +require 'nos_oignons' -$stdin.readlines.each do |ref_line| - old_value, new_value, ref_name = ref_line.rstrip.split(' ', 3) - IO.popen(['git', 'diff', '--name-status', "#{old_value}..#{new_value}"]) do |io| - NosOignons::Git.handle_modified_files(io) do |file| - next unless file.start_with?("#{NosOignons::SUBSCRIPTIONS_ROOT}/") - begin - NosOignons::Subscription.read_from_git(new_value, file) - rescue ArgumentError - $stderr.puts "Désolé : #{file} n'a pas le bon format !" - exit 1 - end - end - end -end +NosOignons.pre_receive_hook!($stdin)