From 196d61f51d2191bf44d5bfe0ccb4456a59f0446a Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sat, 18 Jul 2015 15:59:06 +0100 Subject: Provide for checking git presence via http[s]. --- dgit | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'dgit') diff --git a/dgit b/dgit index 8f4a71c..70ff8c4 100755 --- a/dgit +++ b/dgit @@ -1058,6 +1058,24 @@ sub check_for_git () { } failedcmd @cmd unless $r =~ m/^[01]$/; return $r+0; + } elsif ($how eq 'url') { + my $prefix = access_cfg('git-check-url','git-url'); + my $suffix = access_cfg('git-check-suffix','git-suffix', + 'RETURN-UNDEF') // '.git'; + my $url = "$prefix/$package$suffix"; + my @cmd = (qw(curl -sS -I), $url); + my $result = cmdoutput @cmd; + $result =~ m/^\S+ (404|200) /s or + fail "unexpected results from git check query - ". + Dumper($prefix, $result); + my $code = $1; + if ($code eq '404') { + return 0; + } elsif ($code eq '200') { + return 1; + } else { + die; + } } elsif ($how eq 'true') { return 1; } elsif ($how eq 'false') { -- cgit v1.2.3