git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/1] travis: remove the hack to build the Windows job on Azure Pipelines

From
Johannes Schindelin via GitGitGadget <gitgitgadget@gmail.com>
Date
Feb 28, 2019, 19:33 UTC
Message-ID
<4c14991d0672617460638b1bb445686da09c4889.1551382431.git.gitgitgadget@gmail.com>
In-Reply-To
<pull.154.git.gitgitgadget@gmail.com>
From: Johannes Schindelin <johannes.schindelin@gmx.de>

Since Travis did not support Windows (and now only supports very limited Windows jobs, too limited for our use, the test suite would time out *all* the time), we added a hack where a Travis job would trigger an Azure Pipeline (which back then was still called VSTS Build), wait for it to finish (or time out), and download the log (if available).

Needless to say that it was a horrible hack, necessitated by a bad situation.

Nowadays, however, we have Azure Pipelines support, and do not need that hack anymore. So let's retire it.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
 .travis.yml             |  10 ----
 ci/run-windows-build.sh | 103 ----------------------------------------
 2 files changed, 113 deletions(-)
 delete mode 100755 ci/run-windows-build.sh
diff --git a/.travis.yml b/.travis.yml
index 36cbdea7f4..ffb1bc46f2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -21,16 +21,6 @@ matrix:
       compiler:
       addons:
       before_install:
-    - env: jobname=Windows
-      os: linux
-      compiler:
-      addons:
-      before_install:
-      script:
-        - >
-          test "$TRAVIS_REPO_SLUG" != "git/git" ||
-          ci/run-windows-build.sh $TRAVIS_BRANCH $(git rev-parse HEAD)
-      after_failure:
     - env: jobname=Linux32
       os: linux
       compiler:
diff --git a/ci/run-windows-build.sh b/ci/run-windows-build.sh
deleted file mode 100755
index a73a4eca0a..0000000000
--- a/ci/run-windows-build.sh
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/usr/bin/env bash
-#
-# Script to trigger the Git for Windows build and test run.
-# Set the $GFW_CI_TOKEN as environment variable.
-# Pass the branch (only branches on https://github.com/git/git are
-# supported) and a commit hash.
-#
-
-. ${0%/*}/lib.sh
-
-test $# -ne 2 && echo "Unexpected number of parameters" && exit 1
-test -z "$GFW_CI_TOKEN" && echo "GFW_CI_TOKEN not defined" && exit
-
-BRANCH=$1
-COMMIT=$2
-
-gfwci () {
-	local CURL_ERROR_CODE HTTP_CODE
-	CONTENT_FILE=$(mktemp -t "git-windows-ci-XXXXXX")
-	while test -z $HTTP_CODE
-	do
-	HTTP_CODE=$(curl \
-		-H "Authentication: Bearer $GFW_CI_TOKEN" \
-		--silent --retry 5 --write-out '%{HTTP_CODE}' \
-		--output >(sed "$(printf '1s/^\xef\xbb\xbf//')" >$CONTENT_FILE) \
-		"https://git-for-windows-ci.azurewebsites.net/api/TestNow?$1" \
-	)
-	CURL_ERROR_CODE=$?
-		# The GfW CI web app sometimes returns HTTP errors of
-		# "502 bad gateway" or "503 service unavailable".
-		# We also need to check the HTTP content because the GfW web
-		# app seems to pass through (error) results from other Azure
-		# calls with HTTP code 200.
-		# Wait a little and retry if we detect this error. More info:
-		# https://docs.microsoft.com/en-in/azure/app-service-web/app-service-web-troubleshoot-http-502-http-503
-		if test $HTTP_CODE -eq 502 ||
-		   test $HTTP_CODE -eq 503 ||
-		   grep "502 - Web server received an invalid response" $CONTENT_FILE >/dev/null
-		then
-			sleep 10
-			HTTP_CODE=
-		fi
-	done
-	cat $CONTENT_FILE
-	rm $CONTENT_FILE
-	if test $CURL_ERROR_CODE -ne 0
-	then
-		return $CURL_ERROR_CODE
-	fi
-	if test "$HTTP_CODE" -ge 400 && test "$HTTP_CODE" -lt 600
-	then
-		return 127
-	fi
-}
-
-# Trigger build job
-BUILD_ID=$(gfwci "action=trigger&branch=$BRANCH&commit=$COMMIT&skipTests=false")
-if test $? -ne 0
-then
-	echo "Unable to trigger Visual Studio Team Services Build"
-	echo "$BUILD_ID"
-	exit 1
-fi
-
-# Check if the $BUILD_ID contains a number
-case $BUILD_ID in
-''|*[!0-9]*) echo "Unexpected build number: $BUILD_ID" && exit 1
-esac
-
-echo "Visual Studio Team Services Build #${BUILD_ID}"
-
-# Tracing execued commands would produce too much noise in the waiting
-# loop below.
-set +x
-
-# Wait until build job finished
-STATUS=
-RESULT=
-while true
-do
-	LAST_STATUS=$STATUS
-	STATUS=$(gfwci "action=status&buildId=$BUILD_ID")
-	test "$STATUS" = "$LAST_STATUS" || printf "\nStatus: %s " "$STATUS"
-	printf "."
-
-	case "$STATUS" in
-	inProgress|postponed|notStarted) sleep 10               ;; # continue
-		 "completed: succeeded") RESULT="success"; break;; # success
-		    "completed: failed")                   break;; # failure
-	*) echo "Unhandled status: $STATUS";               break;; # unknown
-	esac
-done
-
-# Print log
-echo ""
-echo ""
-set -x
-gfwci "action=log&buildId=$BUILD_ID" | cut -c 30-
-
-# Set exit code for TravisCI
-test "$RESULT" = "success"
-
-save_good_tree
-- 
gitgitgadget
Previous: Johannes Schindelin via GitGitGadget
Message 2 of 2 in “Retire the "let Travis trigger a Windows build" hack”
  1. 0/1 Retire the "let Travis trigger a Windows build" hackJohannes Schindelin via GitGitGadget, Feb 28, 2019
  2. 1/1 travis: remove the hack to build the Windows job on Azure PipelinesJohannes Schindelin via GitGitGadget, Feb 28, 2019

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.