git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCH] travis-ci: fix running P4 and Git LFS tests in Linux build jobs
@ 2017-11-01 11:55 SZEDER Gábor
  2017-12-11 23:34 ` [PATCH 0/4] travis-ci: clean up setting environment variables SZEDER Gábor
  0 siblings, 1 reply; 44+ messages in thread
From: SZEDER Gábor @ 2017-11-01 11:55 UTC (permalink / raw)
  To: Lars Schneider, Junio C Hamano; +Cc: git, SZEDER Gábor

Linux build jobs on Travis CI skip the P4 and Git LFS tests since
commit 657343a60 (travis-ci: move Travis CI code into dedicated
scripts, 2017-09-10), claiming there are no P4 or Git LFS installed.

The reason is that P4 and Git LFS binaries are not installed to a
directory in the default $PATH, but their directories are prepended to
$PATH.  This worked just fine before said commit, because $PATH was
set in a scriptlet embedded in our '.travis.yml', thus its new value
was visible during the rest of the build job.  However, after these
embedded scriptlets were moved into dedicated scripts executed in
separate shell processes, any variable set in one of those scripts is
only visible in that single script but not in any of the others.  In
this case, 'ci/install-dependencies.sh' downloads P4 and Git LFS and
modifies $PATH, but to no effect, because 'ci/run-tests.sh' only sees
Travis CI's default $PATH.

Move adjusting $PATH to 'ci/lib-travisci.sh', which is sourced in all
other 'ci/' scripts, so all those scripts will see the updated $PATH
value.

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

diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh
index a29246af3..5bd06fe90 100755
--- a/ci/install-dependencies.sh
+++ b/ci/install-dependencies.sh
@@ -12,20 +12,18 @@ case "${TRAVIS_OS_NAME:-linux}" in
 linux)
 	export GIT_TEST_HTTPD=YesPlease
 
-	mkdir --parents custom/p4
-	pushd custom/p4
+	mkdir --parents "$P4_PATH"
+	pushd "$P4_PATH"
 		wget --quiet "$P4WHENCE/bin.linux26x86_64/p4d"
 		wget --quiet "$P4WHENCE/bin.linux26x86_64/p4"
 		chmod u+x p4d
 		chmod u+x p4
-		export PATH="$(pwd):$PATH"
 	popd
-	mkdir --parents custom/git-lfs
-	pushd custom/git-lfs
+	mkdir --parents "$GIT_LFS_PATH"
+	pushd "$GIT_LFS_PATH"
 		wget --quiet "$LFSWHENCE/git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz"
 		tar --extract --gunzip --file "git-lfs-linux-amd64-$LINUX_GIT_LFS_VERSION.tar.gz"
 		cp git-lfs-$LINUX_GIT_LFS_VERSION/git-lfs .
-		export PATH="$(pwd):$PATH"
 	popd
 	;;
 osx)
diff --git a/ci/lib-travisci.sh b/ci/lib-travisci.sh
index b3ed0a0dd..ac05f1f46 100755
--- a/ci/lib-travisci.sh
+++ b/ci/lib-travisci.sh
@@ -26,3 +26,11 @@ skip_branch_tip_with_tag () {
 set -e
 
 skip_branch_tip_with_tag
+
+case "${TRAVIS_OS_NAME:-linux}" in
+linux)
+	P4_PATH="$(pwd)/custom/p4"
+	GIT_LFS_PATH="$(pwd)/custom/git-lfs"
+	export PATH="$GIT_LFS_PATH:$P4_PATH:$PATH"
+	;;
+esac
-- 
2.15.0.67.gb67a46776


^ permalink raw reply related	[flat|nested] 44+ messages in thread

end of thread, other threads:[~2017-12-28 11:17 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
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   ` [PATCH 4/4] travis-ci: set GIT_TEST_HTTPD in 'ci/lib-travisci.sh' SZEDER Gábor
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

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).