Archived
1
0

post-update hook: ACU-

This commit is contained in:
Mercier Pierre-Olivier 2013-12-05 05:00:09 +01:00
parent 4af0617cae
commit ba19732a47

View File

@ -31,21 +31,28 @@ exit(0) if (!$promo || !$id_project || !$repo_login);
for my $ref (@ARGV) for my $ref (@ARGV)
{ {
my $tag; my $tag;
if ($ref =~ m<^refs/tags/ACU-(.+)$>) { my $tag_for;
if ($ref =~ m<^refs/tags/(ACU-(.+))$>)
{
$tag = $1; $tag = $1;
} elsif ($ref =~ m<^refs/tags/(.+)$>) { $tag_for = $2;
}
elsif ($ref =~ m<^refs/tags/(.+)$>)
{
$tag = $1; $tag = $1;
} else { $tag_for = $1;
}
else {
next; next;
} }
log DEBUG, "Tag $tag on repository $ENV{GL_REPO} from IP $ENV{'SSH_CLIENT'} updated."; log DEBUG, "Tag $tag ($tag_for) on repository $ENV{GL_REPO} from IP $ENV{'SSH_CLIENT'} updated.";
my $project = get_project_info($tag); my $project = get_project_info($tag_for);
# Extract matching tag # Extract matching tag
my @rendus = grep { my @rendus = grep {
exists $_->{vcs} and $_->{vcs}{tag} eq $tag; exists $_->{vcs} and $_->{vcs}{tag} eq $tag_for;
} @{ $project->{submissions} }; } @{ $project->{submissions} };
if (@rendus) if (@rendus)
@ -73,7 +80,7 @@ for my $ref (@ARGV)
# Send data to API # Send data to API
my $last_commit = `git log "refs/tags/$tag" -1 --decorate --tags`; my $last_commit = `git log "refs/tags/$tag" -1 --decorate --tags`;
eval { eval {
API::Submission::add($promo, $id_project, $tag, $repo_login, $last_commit); API::Submission::add($promo, $id_project, $tag_for, $repo_login, $last_commit);
}; };
if ($@) if ($@)
{ {
@ -103,7 +110,7 @@ sub get_project_info
exit(1); exit(1);
} }
log TRACE, $project; #log TRACE, $project;
return $project; return $project;
} }