#!/usr/bin/perl

use strict;
use warnings;
use lib $ENV{GL_BINDIR};

use gitolite;

die "Usage: create <repo>\n" unless ($#ARGV == 0);

my $repo = shift @ARGV;
$repo=~s/\.git$//;
die "$repo contains a slash; I don't like that\n" if $repo =~ /\//;
die "$repo has two consecutive periods; I don't like that\n" if $repo =~ /\.\./;
my $repo_short = $repo;
$repo = "packages/$repo" ;

my $user = $ENV{GL_USER};

my ($perm, $owner) = check_access($repo);

die "You don't have permissions to create $repo or it already exists\n" unless ($perm=~/C/);

new_wild_repo($repo, $user);
wrap_print("$ENV{GL_REPO_BASE_ABS}/$repo.git/git-daemon-export-ok", "");
if(system("$ENV{HOME}/bin/pldgithub.py", "create", $repo_short)) {
  print STDERR "Problem with creating gihub mirror for $repo";
}
