Bump minor revision again, prepping for CPAN test release
[Math-GSL.git] / bin / smolder_mathgsl
blobafe39faea145c2f958748718716efbdd0040e98a
1 #!/usr/bin/env perl -w
2 use strict;
3 use warnings;
4 use Config;
5 use TAP::Harness::Archive;
6 use Data::Dumper;
7 use lib 'lib';
8 use Math::GSL;
9 $|++;
11 my $archive = shift || 'my_test_run.tar.gz';
12 my $server = 'smolder.leto.net';
13 my $port = '8080';
14 my ($user,$pass) = qw/leto bessel_J0/;
15 my $archname = $Config{archname};
16 if ($archname =~ /darwin/i){
17 chomp($archname = `uname -p`);
19 my $me = $^O eq 'MSWin32' ? $ENV{'USERNAME'}
20 : $ENV{'LOGNAME'} || eval { getpwuid($<) };
22 my $domain = 'unknown';
23 if ($^O eq 'MSWin32') {
24 $domain = $ENV{'USERDOMAIN'};
25 } else {
26 eval { require Sys::Hostname; $domain = Sys::Hostname::hostname(); };
29 my ($git_id,$git_branch) = ('','');
31 if ( -e '.git' ) {
32 chomp($git_id = `git log -p -n 1|grep commit`);
33 $git_id =~ s/commit //;
34 chomp($git_branch = `git branch | grep "^\*"`);
35 $git_branch =~ s/\* //;
37 my $properties = {
38 'Math::GSL' => $Math::GSL::VERSION,
39 'Git Commit' => $git_id,
40 'Git Branch' => $git_branch,
41 'Submitter' => "$me\@$domain",
42 'Perl Version' => $Config{version},
43 'Config Args' => $Config{config_args},
44 'CC Flags' => $Config{ccflags},
45 'Double Size' => $Config{doublesize},
46 'Long Doubles' => $Config{uselongdouble},
47 'Multiplicity' => $Config{usemultiplicity},
48 '64bit ints' => $Config{use64bitint},
49 '64bit all' => $Config{use64bitall},
50 'Patch level' => $Config{version_patchlevel_string},
51 'Perl @INC' => join(":",@INC),
52 'PERL5LIB' => $ENV{PERL5LIB},
54 my @files = glob('t/*.t');
55 my %options = (
56 verbosity => 0,
57 jobs => 2,
58 merge => 1,
59 lib => [ 'lib', 'blib/lib', 'blib/arch' ],
60 archive => $archive,
61 extra_properties => $properties,
62 extra_files => [ ],
66 my $harness = TAP::Harness::Archive->new(\%options);
67 $harness->runtests(@files);
68 my $cmd =<<CMD;
69 smolder_smoke_signal --server $server --port $port \\
70 --username '$user' --password '$pass' --file $archive --project Math::GSL \\
71 --platform $Config{osname} --architecture $archname --tags "\$USER , $Config{osname}, Math::GSL $Math::GSL::VERSION, $git_branch, Perl $Config{version}"
72 CMD
73 print "about to do:\n$cmd\n";
75 system $cmd;
77 if ($? == -1) {
78 print "failed to execute: $!\n";
79 } elsif ($? & 127) {
80 printf "smolder_smoke_signal died with signal %d, %s coredump\n", ($? & 127), ($? & 128) ? 'with' : 'without';
81 } else {
82 printf "smolder_smoke_signal exited with value %d\n", $? >> 8;