Archived
1
0
Fork 0

Fix repository address

This commit is contained in:
Mercier Pierre-Olivier 2013-11-03 00:06:58 +01:00
parent 384a336851
commit df27747cbc

View file

@ -16,14 +16,22 @@ use ACU::Log;
$ACU::Log::log_file = "/var/log/hooks/" . basename($0) . ".log";
use ACU::Process;
# First, check if the repository is in the YYYY/ directory
exit 0 if ($ENV{GL_REPO} !~ /^2[0-9]{3}\/.+\/.+/);
my ($ref, $oldsha, $newsha) = @ARGV;
my $promo = $1 if ($ENV{'GL_REPO'} =~ m/([0-9]{4}).*/);
my $id_project = $1 if ($ENV{'GL_REPO'} =~ m/.*\/(.*)\//);
my $repo_login = $1 if ($ENV{'GL_REPO'} =~ m/.*\/.*\/(.*)/);
my $promo;
my $id_project;
my $repo_login;
# First, extract information, from config then guess from repository adress
if (my $tmp = `git config hooks.promo`) { chomp $tmp; $promo = $tmp; }
if (my $tmp = `git config hooks.idproject`) { chomp $tmp; $id_project = $tmp; }
if (my $tmp = `git config hooks.login`) { chomp $tmp; $repo_login = $tmp; }
$promo = $1 if (!$promo && $ENV{'GL_REPO'} =~ m/([0-9]{4}).*/);
$id_project = $1 if (!$id_project && $ENV{'GL_REPO'} =~ m/.*\/(.*)\//);
$repo_login = $1 if (!$repo_login && $ENV{'GL_REPO'} =~ m/.*\/.*\/(.*)/);
exit(0) if (!$promo || !$id_project || !$repo_login);
if ($ref =~ m<^refs/tags/(.+)$>)
{
@ -103,7 +111,7 @@ if ($ref =~ m<^refs/tags/(.+)$>)
"id" => $id_project,
"rendu" => $tag,
"login" => $repo_login,
"path" => $ENV{GL_REPO_BASE_ABS}."/".$ENV{GL_REPO},
"path" => $ENV{GL_REPO_BASE_ABS}."/".$ENV{GL_REPO}.".git",
});
};
if ($@) {