mirror of
https://github.com/curl/curl.git
synced 2026-04-11 12:01:42 +08:00
scripts: drop unused CI scripts
Replaced by Test Clutch: https://testclutch.curl.se/static/reports/feature-matrix.html Closes #20981
This commit is contained in:
parent
454db7aeee
commit
77c5470147
2
.github/scripts/distfiles.sh
vendored
2
.github/scripts/distfiles.sh
vendored
@ -22,8 +22,6 @@ gitonly=".git*
|
||||
^docs/tests/CI.md
|
||||
^docs/THANKS-filter
|
||||
^projects/Windows/*
|
||||
^scripts/ciconfig.pl
|
||||
^scripts/cijobs.pl
|
||||
^scripts/contributors.sh
|
||||
^scripts/contrithanks.sh
|
||||
^scripts/delta
|
||||
|
||||
@ -1,196 +0,0 @@
|
||||
#!/usr/bin/env perl
|
||||
#***************************************************************************
|
||||
# _ _ ____ _
|
||||
# Project ___| | | | _ \| |
|
||||
# / __| | | | |_) | |
|
||||
# | (__| |_| | _ <| |___
|
||||
# \___|\___/|_| \_\_____|
|
||||
#
|
||||
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
#
|
||||
# This software is licensed as described in the file COPYING, which
|
||||
# you should have received as part of this distribution. The terms
|
||||
# are also available at https://curl.se/docs/copyright.html.
|
||||
#
|
||||
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||
# copies of the Software, and permit persons to whom the Software is
|
||||
# furnished to do so, under the terms of the COPYING file.
|
||||
#
|
||||
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
# KIND, either express or implied.
|
||||
#
|
||||
# SPDX-License-Identifier: curl
|
||||
#
|
||||
###########################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
my %with;
|
||||
my %without;
|
||||
my %used;
|
||||
my %avail;
|
||||
|
||||
# these options are enabled by default in the sense that they will attempt to
|
||||
# check for and use this feature without the configure flag
|
||||
my %defaulton = (
|
||||
# --enable-
|
||||
'shared' => 1,
|
||||
'static' => 1,
|
||||
'fast-install' => 1,
|
||||
'silent-rules' => 1,
|
||||
'optimize' => 1,
|
||||
'http' => 1,
|
||||
'ftp' => 1,
|
||||
'file' => 1,
|
||||
'ldap' => 1,
|
||||
'ldaps' => 1,
|
||||
'rtsp' => 1,
|
||||
'proxy' => 1,
|
||||
'dict' => 1,
|
||||
'telnet' => 1,
|
||||
'tftp' => 1,
|
||||
'pop3' => 1,
|
||||
'imap' => 1,
|
||||
'smb' => 1,
|
||||
'smtp' => 1,
|
||||
'gopher' => 1,
|
||||
'mqtt' => 1,
|
||||
'manual' => 1,
|
||||
'libcurl-option' => 1,
|
||||
'libgcc' => 1,
|
||||
'ipv6' => 1,
|
||||
'openssl-auto-load-config' => 1,
|
||||
'versioned-symbols' => 1,
|
||||
'symbol-hiding' => 1,
|
||||
'threaded-resolver' => 1,
|
||||
'pthreads' => 1,
|
||||
'verbose' => 1,
|
||||
'basic-auth' => 1,
|
||||
'bearer-auth' => 1,
|
||||
'digest-auth' => 1,
|
||||
'kerberos-auth' => 1,
|
||||
'negotiate-auth' => 1,
|
||||
'aws' => 1,
|
||||
'ntlm' => 1,
|
||||
'ntlm-wb' => 1,
|
||||
'tls-srp' => 1,
|
||||
'unix-sockets' => 1,
|
||||
'cookies' => 1,
|
||||
'socketpair' => 1,
|
||||
'http-auth' => 1,
|
||||
'doh' => 1,
|
||||
'mime' => 1,
|
||||
'dateparse' => 1,
|
||||
'netrc' => 1,
|
||||
'progress-meter' => 1,
|
||||
'dnsshuffle' => 1,
|
||||
'get-easy-options' => 1,
|
||||
'alt-svc' => 1,
|
||||
'hsts' => 1,
|
||||
|
||||
# --with-
|
||||
'aix-soname' => 1,
|
||||
'pic' => 1,
|
||||
'zlib' => 1,
|
||||
'zstd' => 1,
|
||||
'brotli' => 1,
|
||||
'random' => 1,
|
||||
'ca-bundle' => 1,
|
||||
'ca-path' => 1,
|
||||
'libssh2' => 1,
|
||||
'nghttp2' => 1,
|
||||
'librtmp' => 1,
|
||||
'libidn2' => 1,
|
||||
'sysroot' => 1,
|
||||
'lber-lib' => 1,
|
||||
'ldap-lib' => 1,
|
||||
|
||||
);
|
||||
|
||||
sub configureopts {
|
||||
my ($opts)=@_;
|
||||
my %thisin;
|
||||
my %thisout;
|
||||
|
||||
while($opts =~ s/--with-([^ =]*)//) {
|
||||
$with{$1}++;
|
||||
$used{$1}++;
|
||||
$thisin{$1}++;
|
||||
}
|
||||
while($opts =~ s/--enable-([^ =]*)//) {
|
||||
$with{$1}++;
|
||||
$used{$1}++;
|
||||
$thisin{$1}++;
|
||||
}
|
||||
|
||||
while($opts =~ s/--without-([^ =]*)//) {
|
||||
$without{$1}++;
|
||||
$used{$1}++;
|
||||
$thisout{$1}++;
|
||||
}
|
||||
while($opts =~ s/--disable-([^ =]*)//) {
|
||||
$without{$1}++;
|
||||
$used{$1}++;
|
||||
$thisout{$1}++;
|
||||
}
|
||||
return join(" ", sort(keys %thisin), "/", sort(keys %thisout));
|
||||
}
|
||||
|
||||
# run configure --help and check what available WITH/ENABLE options that exist
|
||||
sub configurehelp {
|
||||
open(C, "./configure --help|");
|
||||
while(<C>) {
|
||||
if($_ =~ /^ --(with|enable)-([a-z0-9-]+)/) {
|
||||
$avail{$2}++;
|
||||
}
|
||||
}
|
||||
close(C);
|
||||
}
|
||||
|
||||
sub scanjobs {
|
||||
|
||||
my $jobs;
|
||||
open(CI, "./scripts/cijobs.pl|");
|
||||
while(<CI>) {
|
||||
if($_ =~ /^\#\#\#/) {
|
||||
$jobs++;
|
||||
}
|
||||
if($_ =~ /^configure: (.*)/) {
|
||||
my $c= configureopts($1);
|
||||
#print "C: $c\n";
|
||||
}
|
||||
}
|
||||
close(CI);
|
||||
}
|
||||
|
||||
configurehelp();
|
||||
scanjobs();
|
||||
|
||||
print "Used configure options (with / without)\n";
|
||||
for my $w (sort keys %used) {
|
||||
printf " %s: %d %d%s\n", $w, $with{$w}, $without{$w},
|
||||
$defaulton{$w} ? " (auto)" : "";
|
||||
}
|
||||
|
||||
print "Never used configure options\n";
|
||||
for my $w (sort keys %avail) {
|
||||
if(!$used{$w}) {
|
||||
printf " %s%s\n", $w,
|
||||
$defaulton{$w} ? " (auto)" : "";
|
||||
}
|
||||
}
|
||||
|
||||
print "Never ENABLED configure options that are not on by default\n";
|
||||
for my $w (sort keys %avail) {
|
||||
if(!$with{$w} && !$defaulton{$w}) {
|
||||
printf " %s\n", $w;
|
||||
}
|
||||
}
|
||||
|
||||
print "ENABLED configure options that are not available\n";
|
||||
for my $w (sort keys %with) {
|
||||
if(!$avail{$w}) {
|
||||
printf " %s\n", $w;
|
||||
}
|
||||
}
|
||||
@ -1,521 +0,0 @@
|
||||
#!/usr/bin/env perl
|
||||
#***************************************************************************
|
||||
# _ _ ____ _
|
||||
# Project ___| | | | _ \| |
|
||||
# / __| | | | |_) | |
|
||||
# | (__| |_| | _ <| |___
|
||||
# \___|\___/|_| \_\_____|
|
||||
#
|
||||
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
#
|
||||
# This software is licensed as described in the file COPYING, which
|
||||
# you should have received as part of this distribution. The terms
|
||||
# are also available at https://curl.se/docs/copyright.html.
|
||||
#
|
||||
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||
# copies of the Software, and permit persons to whom the Software is
|
||||
# furnished to do so, under the terms of the COPYING file.
|
||||
#
|
||||
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
# KIND, either express or implied.
|
||||
#
|
||||
# SPDX-License-Identifier: curl
|
||||
#
|
||||
###########################################################################
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
my %filelevel= ('file' => 1,
|
||||
'service' => 1);
|
||||
|
||||
my $jobid = 1;
|
||||
|
||||
sub submit {
|
||||
my ($jref)=@_;
|
||||
my %job = %$jref;
|
||||
|
||||
printf "\n##### job %u \n", $jobid++;
|
||||
for my $k (sort keys %job) {
|
||||
printf "%s: %s\n", $k, $job{$k} if($job{$k});
|
||||
undef $$jref{$k} if(!$filelevel{$k});
|
||||
}
|
||||
}
|
||||
|
||||
my %job;
|
||||
|
||||
sub githubactions {
|
||||
my ($tag)=@_;
|
||||
my @files= `git ls-tree -r --name-only $tag .github/workflows 2>/dev/null`;
|
||||
my $c = 0;
|
||||
foreach my $f (sort @files) {
|
||||
my $j = 0;
|
||||
my $m = -1;
|
||||
my $done = 0;
|
||||
chomp $f;
|
||||
open(G, "git show $tag:$f 2>/dev/null|");
|
||||
# start counting file jobs
|
||||
undef %job;
|
||||
$job{'file'} = $f;
|
||||
$job{'service'} = "gha";
|
||||
my @cc;
|
||||
my $os;
|
||||
my $topname;
|
||||
my $line = 1;
|
||||
while(<G>) {
|
||||
$job{'line'} = $line;
|
||||
if($_ =~ /^name: (.*)/) {
|
||||
$topname=$1;
|
||||
}
|
||||
elsif($_ =~ /runs-on: (.*)/) {
|
||||
my $r = $1;
|
||||
#print "runs-on: $r\n";
|
||||
if($r =~ /ubuntu/) {
|
||||
$os = "linux";
|
||||
}
|
||||
elsif($r =~ /macos/) {
|
||||
$os = "macos";
|
||||
}
|
||||
elsif($r =~ /windows/) {
|
||||
$os = "windows";
|
||||
}
|
||||
|
||||
# commit previously counted jobs
|
||||
$c += $j;
|
||||
# non-matrix job
|
||||
$j = 1;
|
||||
}
|
||||
elsif($_ =~ /^\s*matrix:/) {
|
||||
# switch to matrix mode
|
||||
$m = 0;
|
||||
$j = 0;
|
||||
}
|
||||
elsif($_ =~ /^ - run: .* apt-get .* install (.*)/) {
|
||||
$job{'install'} = $1;
|
||||
}
|
||||
elsif($m >= 0) {
|
||||
if($_ =~ /^ - name: (.*)/) {
|
||||
# matrix job
|
||||
#print "name: $1\n";
|
||||
$job{'name'} = $1;
|
||||
$j += ($m ? $m : 1);
|
||||
}
|
||||
elsif($_ =~ /install: (.*)/) {
|
||||
$job{'install'} = $1;
|
||||
}
|
||||
elsif($_ =~ /( |curl-)configure: (.*)/) {
|
||||
$job{'configure'} = $2;
|
||||
$job{'os'}=$os;
|
||||
submit(\%job);
|
||||
$done++;
|
||||
}
|
||||
elsif($_ =~ /generate: (.*)/) {
|
||||
$job{'cmake'} = $1;
|
||||
if($m) {
|
||||
# matrix mode, multiple copies
|
||||
my %dupe = %job;
|
||||
for my $cc (@cc) {
|
||||
%job = %dupe;
|
||||
$job{'cc'} = $cc;
|
||||
$job{'os'}=$os;
|
||||
submit(\%job);
|
||||
$done++;
|
||||
}
|
||||
}
|
||||
else {
|
||||
$job{'os'}=$os;
|
||||
submit(\%job);
|
||||
$done++;
|
||||
}
|
||||
}
|
||||
elsif($_ =~ /- CC: (.*)/) {
|
||||
# matrix multiplier
|
||||
push @cc, $1;
|
||||
$m++;
|
||||
}
|
||||
elsif($_ =~ /^\s*steps:/) {
|
||||
# disable matrix mode
|
||||
$m = -1;
|
||||
}
|
||||
}
|
||||
$line++;
|
||||
}
|
||||
close(G);
|
||||
# commit final counted jobs
|
||||
$c += $j;
|
||||
|
||||
if(!$done) {
|
||||
$job{'name'} = $topname? $topname : '[unnamed]';
|
||||
$job{'os'}=$os;
|
||||
submit(\%job);
|
||||
$done++;
|
||||
}
|
||||
# reset internal job counter
|
||||
$j = 0;
|
||||
}
|
||||
#print "Jobs: $c\n";
|
||||
return $c;
|
||||
}
|
||||
|
||||
sub azurepipelines {
|
||||
my ($tag)=@_;
|
||||
open(G, "git show $tag:.azure-pipelines.yml 2>/dev/null|");
|
||||
my $c = 0;
|
||||
my $j = 0;
|
||||
my $m = -1;
|
||||
my $image;
|
||||
my %job;
|
||||
my $line = 1;
|
||||
my $os;
|
||||
$job{'file'} = ".azure-pipelines.yml";
|
||||
$job{'service'} = "azure";
|
||||
while(<G>) {
|
||||
if($_ =~ /^ vmImage: (.*)/) {
|
||||
my $i = $1;
|
||||
if($i =~ /ubuntu/) {
|
||||
$os = "linux";
|
||||
}
|
||||
elsif($i =~ /windows/) {
|
||||
$os = "windows";
|
||||
}
|
||||
}
|
||||
elsif($_ =~ /^ - stage: (.*)/) {
|
||||
my $topname = $1;
|
||||
if($topname !~ /(windows|linux)/) {
|
||||
$job{'name'} = $topname;
|
||||
$job{'line'}=$line;
|
||||
submit(\%job);
|
||||
}
|
||||
}
|
||||
elsif($_ =~ /job:/) {
|
||||
# commit previously counted jobs
|
||||
$c += $j;
|
||||
# initial value for non-matrix job
|
||||
$j = 1;
|
||||
}
|
||||
elsif($_ =~ /matrix:/) {
|
||||
# start of new matrix list(!)
|
||||
$m = 0;
|
||||
$j = 0;
|
||||
}
|
||||
elsif($m >= 0) {
|
||||
if($_ =~ /^ name: (.*)/) {
|
||||
# single matrix list entry job
|
||||
$j++;
|
||||
$job{'name'} = $1;
|
||||
}
|
||||
# azure matrix is a simple list,
|
||||
# therefore no multiplier needed
|
||||
elsif($_ =~ /steps:/) {
|
||||
# disable matrix mode
|
||||
$m = -1;
|
||||
}
|
||||
elsif($_ =~ /^ configure: (.*)/) {
|
||||
$job{'configure'} = $1;
|
||||
$job{'line'}=$line;
|
||||
$job{'os'}=$os;
|
||||
submit(\%job);
|
||||
}
|
||||
}
|
||||
$line++;
|
||||
}
|
||||
close(G);
|
||||
# commit final counted jobs
|
||||
$c += $j;
|
||||
|
||||
return $c;
|
||||
}
|
||||
|
||||
sub appveyor {
|
||||
my ($tag)=@_;
|
||||
open(G, "git show $tag:appveyor.yml 2>/dev/null|");
|
||||
my $c = 0;
|
||||
my %job;
|
||||
my $line=0;
|
||||
$job{'file'} = "appveyor.yml";
|
||||
$job{'service'} = "appveyor";
|
||||
|
||||
while(<G>) {
|
||||
$line++;
|
||||
if($_ =~ /^( - |install)/) {
|
||||
if($job{'image'}) {
|
||||
$job{'os'} = "windows";
|
||||
submit(\%job);
|
||||
$c++;
|
||||
}
|
||||
}
|
||||
$job{'line'} = $line;
|
||||
if($_ =~ /^ APPVEYOR_BUILD_WORKER_IMAGE: \'(.*)\'/) {
|
||||
$job{'image'}= $1;
|
||||
}
|
||||
elsif($_ =~ /^ BUILD_SYSTEM: (.*)/) {
|
||||
$job{'build'} = lc($1);
|
||||
}
|
||||
elsif($_ =~ /^ PRJ_GEN: \'(.*)\'/) {
|
||||
$job{'compiler'} = $1;
|
||||
}
|
||||
elsif($_ =~ /^ PRJ_CFG: (.*)/) {
|
||||
$job{'config'} = $1;
|
||||
}
|
||||
elsif($_ =~ /^ OPENSSL: \'(.*)\'/) {
|
||||
$job{'openssl'} = $1 eq "ON" ? "true" : "false";
|
||||
}
|
||||
elsif($_ =~ /^ SCHANNEL: \'(.*)\'/) {
|
||||
$job{'schannel'} = $1 eq "ON" ? "true" : "false";
|
||||
}
|
||||
elsif($_ =~ /^ ENABLE_UNICODE: \'(.*)\'/) {
|
||||
$job{'unicode'} = $1 eq "ON" ? "true" : "false";
|
||||
}
|
||||
elsif($_ =~ /^ HTTP_ONLY: \'(.*)\'/) {
|
||||
$job{'http-only'} = $1 eq "ON" ? "true" : "false";
|
||||
}
|
||||
elsif($_ =~ /^ TESTING: \'(.*)\'/) {
|
||||
$job{'testing'} = $1 eq "ON" ? "true" : "false";
|
||||
}
|
||||
elsif($_ =~ /^ SHARED: \'(.*)\'/) {
|
||||
$job{'shared'} = $1 eq "ON" ? "true" : "false";
|
||||
}
|
||||
elsif($_ =~ /^ TARGET: \'-A (.*)\'/) {
|
||||
$job{'target'} = $1;
|
||||
}
|
||||
}
|
||||
close(G);
|
||||
|
||||
return $c;
|
||||
}
|
||||
|
||||
sub cirrus {
|
||||
my ($tag)=@_;
|
||||
open(G, "git show $tag:.cirrus.yml 2>/dev/null|");
|
||||
my $c = 0;
|
||||
my %job;
|
||||
my $line=0;
|
||||
my $name = 0;
|
||||
my $os;
|
||||
$job{'file'} = ".cirrus.yml";
|
||||
$job{'service'} = "cirrus";
|
||||
while(<G>) {
|
||||
$line++;
|
||||
if($_ =~ /^ ( |-) (name|image_family|image):/) {
|
||||
$c++;
|
||||
}
|
||||
if($_ =~ /^ - name:/) {
|
||||
if($name) {
|
||||
$job{'os'} = $os;
|
||||
$job{'line'} = $line;
|
||||
submit(\%job);
|
||||
$name = 0;
|
||||
}
|
||||
}
|
||||
if($_ =~ /^ - name: (.*)/) {
|
||||
$job{'name'} = $1;
|
||||
$name = 1;
|
||||
}
|
||||
elsif($_ =~ /^ image_family: (.*)/) {
|
||||
$os = "freebsd";
|
||||
}
|
||||
elsif($_ =~ /^windows_task:/) {
|
||||
$os = "windows";
|
||||
}
|
||||
elsif($_ =~ /^ prepare: pacman -S --needed --noconfirm --noprogressbar (.*)/) {
|
||||
$job{'install'} = $1;
|
||||
}
|
||||
elsif($_ =~ /^ configure: (.*)/) {
|
||||
$job{'configure'} = $1;
|
||||
}
|
||||
}
|
||||
close(G);
|
||||
if($name) {
|
||||
$job{'os'} = $os;
|
||||
$job{'line'} = $line;
|
||||
submit(\%job);
|
||||
}
|
||||
return $c;
|
||||
}
|
||||
|
||||
sub circle {
|
||||
my ($tag)=@_;
|
||||
open(G, "git show $tag:.circleci/config.yml 2>/dev/null|");
|
||||
my $c = 0;
|
||||
my $wf = 0;
|
||||
my %job;
|
||||
my %cmd;
|
||||
my %configure;
|
||||
my %target;
|
||||
my $line=0;
|
||||
my $cmds;
|
||||
my $jobs;
|
||||
my $workflow;
|
||||
my $cmdname;
|
||||
my $jobname;
|
||||
$job{'file'} = ".circleci/config.yml";
|
||||
$job{'service'} = "circleci";
|
||||
while(<G>) {
|
||||
$line++;
|
||||
if($_ =~ /^commands:/) {
|
||||
# we record configure lines in this state
|
||||
$cmds = 1;
|
||||
}
|
||||
elsif($cmds) {
|
||||
if($_ =~ /^ ([^ ]*):/) {
|
||||
$cmdname = $1;
|
||||
}
|
||||
elsif($_ =~ /^ .*.\/configure (.*)/) {
|
||||
$cmd{$cmdname}=$1;
|
||||
}
|
||||
}
|
||||
if($_ =~ /^jobs:/) {
|
||||
# we record which job runs with configure here
|
||||
$jobs = 1;
|
||||
$cmds = 0;
|
||||
}
|
||||
elsif($jobs) {
|
||||
if($_ =~ /^ ([^ ]*):/) {
|
||||
$jobname = $1;
|
||||
}
|
||||
elsif($_ =~ /^ - (configure.*)/) {
|
||||
$configure{$jobname}=$1;
|
||||
}
|
||||
elsif($_ =~ /^ resource_class: arm.medium/) {
|
||||
$target{$jobname}="arm";
|
||||
}
|
||||
}
|
||||
if($_ =~ /^workflows:/) {
|
||||
$wf = 1;
|
||||
$cmds = 0;
|
||||
}
|
||||
elsif($wf) {
|
||||
if($_ =~ /^ ([^ ]+):/) {
|
||||
$workflow = $1;
|
||||
}
|
||||
elsif($_ =~ /^ - (.*)\n/) {
|
||||
my $jb = $1;
|
||||
my $cnfgure = $configure{$jb};
|
||||
my $trgt = $target{$jb};
|
||||
$job{'configure'} = $cmd{$cnfgure};
|
||||
$job{'name' }=$workflow;
|
||||
$job{'os'} = "linux";
|
||||
$job{'line'} = $line;
|
||||
$job{'target'} = $trgt if($trgt);
|
||||
submit(\%job);
|
||||
}
|
||||
if($_ =~ / *jobs:/) {
|
||||
$c++;
|
||||
}
|
||||
}
|
||||
}
|
||||
close(G);
|
||||
return $c;
|
||||
}
|
||||
|
||||
sub zuul {
|
||||
my ($tag)=@_;
|
||||
open(G, "git show $tag:zuul.d/jobs.yaml 2>/dev/null|");
|
||||
my $c = 0;
|
||||
my %job;
|
||||
my $line=0;
|
||||
my $type;
|
||||
my $jobmode;
|
||||
my $apt = 0;
|
||||
my $env = 0;
|
||||
my $envcont;
|
||||
$job{'file'} = "zuul.d/jobs.yaml";
|
||||
$job{'service'} = "zuul";
|
||||
while(<G>) {
|
||||
$line++;
|
||||
#print "L: ($jobmode / $env) $_";
|
||||
if($_ =~ /^- job:/) {
|
||||
$jobmode = 1; # start a new
|
||||
$type="configure";
|
||||
}
|
||||
if($jobmode) {
|
||||
if($apt) {
|
||||
if($_ =~ /^ - (.*)/) {
|
||||
my $value = $1;
|
||||
$job{'install'} .= "$value ";
|
||||
}
|
||||
else {
|
||||
$apt = 0; # end of curl_apt_packages
|
||||
}
|
||||
}
|
||||
if($env) {
|
||||
if($envcont) {
|
||||
if($_ =~ /^ (.*)/) {
|
||||
$job{$envcont} .= "$1 ";
|
||||
}
|
||||
else {
|
||||
$envcont = "";
|
||||
}
|
||||
}
|
||||
if($_ =~ /^ ([^:]+): (.*)/) {
|
||||
my ($var, $value) = ($1, $2);
|
||||
|
||||
if($var eq "C") {
|
||||
$var = $type;
|
||||
}
|
||||
elsif($var eq "T") {
|
||||
$var = "tests";
|
||||
if($value eq "cmake") {
|
||||
# otherwise it remains configure
|
||||
$type = "cmake";
|
||||
}
|
||||
}
|
||||
elsif($var eq "CC") {
|
||||
$var = "compiler";
|
||||
}
|
||||
elsif($var eq "CHECKSRC") {
|
||||
$job{'checksrc'} = $value ? "true" : "false";
|
||||
$var = "";
|
||||
}
|
||||
else {
|
||||
$var = "";
|
||||
}
|
||||
if($value eq ">-") {
|
||||
$envcont = $var;
|
||||
}
|
||||
elsif($var) {
|
||||
$job{$var} = $value;
|
||||
}
|
||||
}
|
||||
elsif($_ !~ /^ /) {
|
||||
# end of envs
|
||||
$env = 0;
|
||||
}
|
||||
}
|
||||
if($_ =~ /^ curl_env:/) {
|
||||
$env = 1; # start of envs
|
||||
}
|
||||
elsif($_ =~ /^ curl_apt_packages:/) {
|
||||
$apt = 1; # start of apt packages
|
||||
}
|
||||
elsif($_ =~ /^ name: (.*)/) {
|
||||
my $n = $1;
|
||||
if($n eq "curl-base") {
|
||||
# not counted
|
||||
$jobmode = 0;
|
||||
next;
|
||||
}
|
||||
$job{'name'} = $n;
|
||||
}
|
||||
elsif($_ =~ /^\n\z/) {
|
||||
# a job is complete
|
||||
$job{'line'}=$line;
|
||||
$job{'os'}="linux";
|
||||
submit(\%job);
|
||||
$jobmode = 0;
|
||||
$c++;
|
||||
}
|
||||
}
|
||||
}
|
||||
close(G);
|
||||
return $c;
|
||||
}
|
||||
|
||||
my $tag = `git rev-parse --abbrev-ref HEAD 2>/dev/null` || "master";
|
||||
chomp $tag;
|
||||
githubactions($tag);
|
||||
azurepipelines($tag);
|
||||
appveyor($tag);
|
||||
zuul($tag);
|
||||
cirrus($tag);
|
||||
circle($tag);
|
||||
Loading…
Reference in New Issue
Block a user