git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: "SZEDER Gábor" <szeder.dev@gmail.com>
To: git@vger.kernel.org
Cc: "Lars Schneider" <larsxschneider@gmail.com>,
	"Thomas Gummerer" <t.gummerer@gmail.com>,
	"SZEDER Gábor" <szeder.dev@gmail.com>
Subject: [PATCH 4/4] travis-ci: set GIT_TEST_HTTPD in 'ci/lib-travisci.sh'
Date: Tue, 12 Dec 2017 00:34:46 +0100	[thread overview]
Message-ID: <20171211233446.10596-5-szeder.dev@gmail.com> (raw)
In-Reply-To: <20171211233446.10596-1-szeder.dev@gmail.com>

Commit 657343a60 (travis-ci: move Travis CI code into dedicated
scripts, 2017-09-10) converted '.travis.yml's default 'before_install'
scriptlet to the 'ci/install-dependencies.sh' script, and while doing
so moved setting GIT_TEST_HTTPD=YesPlease for the 64-bit GCC and Clang
Linux build jobs to that script.  This is wrong for two reasons:

 - The purpose of that script is, as its name suggests, to install
   dependencies, not to set any environment variables influencing
   which tests should be run (though, arguably, this was already an
   issue with the original 'before_install' scriptlet).

 - Setting the variable has no effect anymore, because that script is
   run in a separate shell process, and the variable won't be visible
   in any of the other scripts, notably in 'ci/run-tests.sh'
   responsible for, well, running the tests.

Luckily, this didn't have a negative effect on our Travis CI build
jobs, because GIT_TEST_HTTPD is a tri-state variable defaulting to
"auto" and a functioning web server was installed in those Linux build
jobs, so the httpd tests were run anyway.

Apparently the httpd tests run just fine without GIT_TEST_HTTPD being
set, therefore we could simply remove this environment variable.
However, if a bug were to creep in to change the Travis CI build
environment to run the tests as root or to not install Apache, then
the httpd tests would be skipped and the build job would still
succeed.  We would only notice if someone actually were to look
through the build job's trace log; but who would look at the trace log
of a successful build job?!

Since httpd tests are important, we do want to run them and we want to
be loudly reminded if they can't be run.  Therefore, move setting
GIT_TEST_HTTPD=YesPlease for the 64-bit GCC and Clang Linux build jobs
to 'ci/lib-travisci.sh' to ensure that the build job fails when the
httpd tests can't be run.  (We could set it in 'ci/run-tests.sh' just
as well, but it's better to keep all environment variables in one
place in 'ci/lib-travisci.sh'.)

Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
---
 ci/install-dependencies.sh | 2 --
 ci/lib-travisci.sh         | 2 ++
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh
index 468788566..75a9fd247 100755
--- a/ci/install-dependencies.sh
+++ b/ci/install-dependencies.sh
@@ -10,8 +10,6 @@ LFSWHENCE=https://github.com/github/git-lfs/releases/download/v$LINUX_GIT_LFS_VE
 
 case "$jobname" in
 linux-clang|linux-gcc)
-	export GIT_TEST_HTTPD=YesPlease
-
 	mkdir --parents "$P4_PATH"
 	pushd "$P4_PATH"
 		wget --quiet "$P4WHENCE/bin.linux26x86_64/p4d"
diff --git a/ci/lib-travisci.sh b/ci/lib-travisci.sh
index e85571298..331d3eb3a 100755
--- a/ci/lib-travisci.sh
+++ b/ci/lib-travisci.sh
@@ -40,6 +40,8 @@ export GIT_TEST_CLONE_2GB=YesPlease
 
 case "$jobname" in
 linux-clang|linux-gcc)
+	export GIT_TEST_HTTPD=YesPlease
+
 	# The Linux build installs the defined dependency versions below.
 	# The OS X build installs the latest available versions. Keep that
 	# in mind when you encounter a broken OS X build!
-- 
2.15.1.421.gc469ca1de


  parent reply	other threads:[~2017-12-11 23:35 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-01 11:55 [PATCH] travis-ci: fix running P4 and Git LFS tests in Linux build jobs SZEDER Gábor
2017-12-11 23:34 ` [PATCH 0/4] travis-ci: clean up setting environment variables SZEDER Gábor
2017-12-11 23:34   ` [PATCH 1/4] travis-ci: use 'set -x' in 'ci/*' scripts for extra tracing output SZEDER Gábor
2017-12-12 18:00     ` Lars Schneider
2017-12-12 18:43       ` SZEDER Gábor
2017-12-13 23:10         ` Lars Schneider
2017-12-14 23:51           ` SZEDER Gábor
2017-12-15 12:10             ` Johannes Schindelin
2017-12-15 13:06               ` SZEDER Gábor
2017-12-15 15:32                 ` Johannes Schindelin
2017-12-11 23:34   ` [PATCH 2/4] travis-ci: introduce a $jobname variable for 'ci/*' scripts SZEDER Gábor
2017-12-11 23:34   ` [PATCH 3/4] travis-ci: move setting environment variables to 'ci/lib-travisci.sh' SZEDER Gábor
2017-12-11 23:34   ` SZEDER Gábor [this message]
2017-12-16 12:54   ` [PATCH v2 0/8] Travis CI cleanups SZEDER Gábor
2017-12-16 12:54     ` [PATCH v2 1/8] travis-ci: use 'set -x' in select 'ci/*' scripts for extra tracing SZEDER Gábor
2017-12-16 12:55       ` [PATCH v2 2/8] travis-ci: introduce a $jobname variable for 'ci/*' scripts SZEDER Gábor
2017-12-16 12:57       ` [PATCH v2 3/8] travis-ci: move setting environment variables to 'ci/lib-travisci.sh' SZEDER Gábor
2017-12-16 12:57       ` [PATCH v2 4/8] travis-ci: set GIT_TEST_HTTPD in 'ci/lib-travisci.sh' SZEDER Gábor
2017-12-16 12:57       ` [PATCH v2 5/8] travis-ci: don't install default addon packages for the 32 bit Linux build SZEDER Gábor
2017-12-16 12:57       ` [PATCH v2 6/8] travis-ci: don't install 'language-pack-is' package SZEDER Gábor
2017-12-18 21:33         ` Lars Schneider
2017-12-18 22:04           ` SZEDER Gábor
2017-12-18 22:17             ` Lars Schneider
2017-12-18 22:34               ` Junio C Hamano
2017-12-19 12:22             ` SZEDER Gábor
2017-12-16 12:58       ` [PATCH v2 7/8] travis-ci: save prove state for the 32 bit Linux build SZEDER Gábor
2017-12-16 12:58       ` [PATCH v2 8/8] travis-ci: only print test failures if there are test results available SZEDER Gábor
2017-12-16 18:32         ` Eric Sunshine
2017-12-16 22:48           ` [PATCH v2 8/8] travis-ci: only print test failures if there are SZEDER Gábor
2017-12-17  0:02             ` Eric Sunshine
2017-12-16 16:43       ` [PATCH v2 1/8] travis-ci: use 'set -x' in select 'ci/*' scripts for extra tracing Johannes Schindelin
2017-12-18 21:53       ` Lars Schneider
2017-12-18 21:46     ` [PATCH v2 0/8] Travis CI cleanups Lars Schneider
2017-12-27 16:35     ` [PATCH v3 0/4] Rest of the Travis CI fixes SZEDER Gábor
2017-12-27 16:36       ` [PATCH v3 1/4] travis-ci: fine tune the use of 'set -x' in 'ci/*' scripts SZEDER Gábor
2017-12-27 18:35         ` Lars Schneider
2017-12-27 16:36       ` [PATCH v3 2/4] travis-ci: don't install default addon packages for the 32 bit Linux build SZEDER Gábor
2017-12-27 18:41         ` Lars Schneider
2017-12-27 16:36       ` [PATCH v3 3/4] travis-ci: save prove state " SZEDER Gábor
2017-12-27 18:46         ` Lars Schneider
2017-12-27 21:42           ` SZEDER Gábor
2017-12-28 11:17             ` Lars Schneider
2017-12-27 16:36       ` [PATCH v3 4/4] travis-ci: only print test failures if there are test results available SZEDER Gábor
2017-12-27 18:52         ` Lars Schneider

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171211233446.10596-5-szeder.dev@gmail.com \
    --to=szeder.dev@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=larsxschneider@gmail.com \
    --cc=t.gummerer@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).