]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
ci/tests: Move CI test result creation above environment setup
authorMarc Hoersken <info@marc-hoersken.de>
Tue, 3 Mar 2020 11:49:53 +0000 (12:49 +0100)
committerMarc Hoersken <info@marc-hoersken.de>
Tue, 3 Mar 2020 15:00:04 +0000 (16:00 +0100)
This avoids using our test servers as proxy to the AppVeyor API.

Closes #5022

tests/runtests.pl

index 131aef926cbaf4bb338259c7a33eea4a443a721b..51a84f09b93a828e36cefa03b9c82e627198ce57 100755 (executable)
@@ -3358,6 +3358,19 @@ sub singletest {
         delete $oldenv{$var};
     }
 
+    # get the name of the test early
+    my @testname= getpart("client", "name");
+    my $testname = $testname[0];
+    $testname =~ s/\n//g;
+
+    # create test result in CI services
+    if(azure_check_environment() && $AZURE_RUN_ID) {
+        $AZURE_RESULT_ID = azure_create_test_result($AZURE_RUN_ID, $testnum, $testname);
+    }
+    elsif(appveyor_check_environment()) {
+        appveyor_create_test_result($testnum, $testname);
+    }
+
     # remove test server commands file before servers are started/verified
     unlink($FTPDCMD) if(-f $FTPDCMD);
 
@@ -3517,9 +3530,6 @@ sub singletest {
     my $CURLOUT="$LOGDIR/curl$testnum.out"; # curl output if not stdout
 
     # name of the test
-    my @testname= getpart("client", "name");
-    my $testname = $testname[0];
-    $testname =~ s/\n//g;
     logmsg "[$testname]\n" if(!$short);
 
     if($listonly) {
@@ -3743,13 +3753,6 @@ sub singletest {
         close(GDBCMD);
     }
 
-    if(azure_check_environment() && $AZURE_RUN_ID) {
-        $AZURE_RESULT_ID = azure_create_test_result($AZURE_RUN_ID, $testnum, $testname);
-    }
-    elsif(appveyor_check_environment()) {
-        appveyor_create_test_result($testnum, $testname);
-    }
-
     # timestamp starting of test command
     $timetoolini{$testnum} = Time::HiRes::time();
 
@@ -5543,6 +5546,7 @@ foreach $testnum (@at) {
 
     my $error = singletest($run_event_based, $testnum, $count, scalar(@at));
 
+    # update test result in CI services
     if(azure_check_environment() && $AZURE_RUN_ID && $AZURE_RESULT_ID) {
         $AZURE_RESULT_ID = azure_update_test_result($AZURE_RUN_ID, $AZURE_RESULT_ID, $testnum, $error,
                                                     $timeprepini{$testnum}, $timevrfyend{$testnum});