extras/breakpad_upload_crash
author Vincent Tondellier <tonton+hg@team1664.org>
Mon, 17 Jul 2023 22:25:19 +0200
changeset 132 75cea8c94598
parent 111 f827f3c50dcf
permissions -rwxr-xr-x
Bump dependencies versions to something sensible

#!/usr/bin/env perl

use strict;
use warnings;
use Mojo::UserAgent;
use Mojo::Util qw/slurp dumper/;
use File::Basename;
use v5.10;

my $ua = Mojo::UserAgent->new;

my $url = shift @ARGV;

foreach my $extra(@ARGV) {

    my ($filename, $dirs, $suffix) = fileparse($extra, ".extra");

    my $hash = { upload_file_minidump => { file => "$dirs$filename.dmp" } };

    open(my $fh, "<", $extra);
    foreach my $l(<$fh>) {
        my ($k, $v) = split('=', $l, 2);
        chomp $k;
        chomp $v;
        $hash->{$k} = $v;
    }
    close $fh;

    my $tx = $ua->post($url => form => $hash);
    if(my $res = $tx->success) {
        say $res->body;
    } else {
        my $err = $tx->error;
        if($err->{code}) {
            warn "$err->{code} response for $extra: $err->{message}\n" . dumper $hash;
        } else {
            warn "Connection error: $err->{message}";
        }
    }
}