diff options
Diffstat (limited to 'src/gitjoe/newrepo.pl')
-rwxr-xr-x | src/gitjoe/newrepo.pl | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/src/gitjoe/newrepo.pl b/src/gitjoe/newrepo.pl deleted file mode 100755 index dc8041b..0000000 --- a/src/gitjoe/newrepo.pl +++ /dev/null @@ -1,76 +0,0 @@ -#!/usr/local/bin/perl - -use strict; -use warnings; -use Term::ANSIColor; -use File::Find; -use constant HOME_DIR => '/usr/local/git/'; - -sub main -{ - my $argc = $#ARGV + 1; - if ($argc < 2) { - print colored("Failed!\n", 'bold red') - . "Missing argument, at least 2 needed " - . colored("[user - reponame - (description)]", 'bold') - . "\n"; - exit 1; - } - my $usr = $ARGV[0]; - my $repo = $ARGV[1]; - my $desc = ""; - if ($argc >= 3) { - $desc = $ARGV[2]; - } - my $home_dir = HOME_DIR . $usr . '/'; - if (substr($repo, -4) ne '.git') { - $repo = $repo . '.git'; - } - $repo = $repo . '/'; - mkdir $home_dir . $repo, 0755; - system( - '/usr/local/bin/git', - '-C', - $home_dir . $repo, - 'init', - '--bare' - ); - my (undef, undef, $uid, $gid) = getpwnam($usr); - find( - sub { - chown $uid, $gid, $_; - }, - $home_dir . $repo - ); - system( - '/usr/bin/touch', - $home_dir . $repo . 'git-daemon-export-ok' - ); - chown $uid, $gid, $home_dir . $repo . 'git-daemon-export-ok'; - open(my $owner_fh, '>:encoding(UTF-8)', $home_dir . $repo . 'owner'); - print $owner_fh $usr; - close($owner_fh); - open(my $url_fh, '>:encoding(UTF-8)', $home_dir . $repo . 'url'); - substr($repo, -1) = ""; - print $url_fh 'git://gitjoe.xyz/' . $usr . '/' . $repo; - close($url_fh); - $repo = $repo . '/'; - open(my $desc_fh, '>:encoding(UTF-8)', $home_dir . $repo . 'description'); - if ($argc >= 3) { - print $desc_fh $desc; - } - else { - print $desc_fh 'No description yet'; - } - close($desc_fh); - chown $uid, $gid, $home_dir . $repo . 'description'; - substr($repo, -1) = ""; - print "Created git repository " . colored($repo, 'bold green') . " for user " . colored($usr, 'bold') . ".\n"; - print "Remote url: " . colored($usr . '@gitjoe.xyz:' . $repo, 'bold green') . "\n" - . "Public clone url: " . colored('git://gitjoe.xyz/' . $usr . '/' . $repo, 'bold green') . "\n"; - exit; -} - -main(); - -__END__ |