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

[PATCHv2 2/3] t/gitweb-lib.sh: Add support for GITWEB_TEST_INSTALLED

From
Jakub Narebski <jnareb@gmail.com>
Date
Sep 22, 2010, 14:21 UTC
Message-ID
<1285165286-12452-3-git-send-email-jnareb@gmail.com>
In-Reply-To
<1285165286-12452-1-git-send-email-jnareb@gmail.com>

You can set the GITWEB_TEST_INSTALLED environment variable to the gitwebdir (the directory where gitweb is installed / deployed to) of an existing gitweb instalation, or to the pathname of installed gitweb script, to test that installation.

This change is intended to make it possible to test that process of installing gitweb and the modules it depends on works correctly (after splitting gitweb).

If GITWEB_TEST_INSTALLED is used, print what script are we testing to make it easy to spot that we test installed gitweb.

Signed-off-by: Jakub Narebski <jnareb@gmail.com>
---
This patch differs from previous version, send to git mailing list as
http://thread.gmane.org/gmane.comp.version-control.git/156023/focus=156025
in the following way:
* It is no longer marked as RFC, as it was decided that description of
  GITWEB_TEST_INSTALLED in t/gitweb-lib.sh is enough, and there is no
  need to mention this variable in some of t/README, gitweb/README, or
  gitweb/INSTALL
* GITWEB_TEST_INSTALLED can be either directory where gitweb.cgi is
  installed, or a path to gitweb.cgi
* t/test-lib.sh now prints where resides gitweb.cgi it is testing if
  GITWEB_TEST_INSTALLED is set.
 t/gitweb-lib.sh |   21 +++++++++++++++++++--
 1 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/t/gitweb-lib.sh b/t/gitweb-lib.sh
index 8c490c8..8b5b987 100755
--- a/t/gitweb-lib.sh
+++ b/t/gitweb-lib.sh
@@ -32,17 +32,34 @@ EOF
 	cat >.git/description <<EOF
 $0 test repository
 EOF
+
+	# You can set the GITWEB_TEST_INSTALLED environment variable to
+	# the gitwebdir (the directory where gitweb is installed / deployed to)
+	# of an existing gitweb instalation to test that installation,
+	# or simply to pathname of installed gitweb script.
+	if test -n "$GITWEB_TEST_INSTALLED" ; then
+		if test -d $GITWEB_TEST_INSTALLED; then
+			SCRIPT_NAME="$GITWEB_TEST_INSTALLED/gitweb.cgi"
+		else
+			SCRIPT_NAME="$GITWEB_TEST_INSTALLED"
+		fi
+		test -f "$SCRIPT_NAME" ||
+		error "Cannot find gitweb at $GITWEB_TEST_INSTALLED."
+		say "# Testing $SCRIPT_NAME"
+	else # normal case, use source version of gitweb
+		SCRIPT_NAME="$GIT_BUILD_DIR/gitweb/gitweb.perl"
+	fi
+	export SCRIPT_NAME
 }
 
 gitweb_run () {
 	GATEWAY_INTERFACE='CGI/1.1'
 	HTTP_ACCEPT='*/*'
 	REQUEST_METHOD='GET'
-	SCRIPT_NAME="$GIT_BUILD_DIR/gitweb/gitweb.perl"
 	QUERY_STRING=""$1""
 	PATH_INFO=""$2""
 	export GATEWAY_INTERFACE HTTP_ACCEPT REQUEST_METHOD \
-		SCRIPT_NAME QUERY_STRING PATH_INFO
+		QUERY_STRING PATH_INFO
 
 	GITWEB_CONFIG=$(pwd)/gitweb_config.perl
 	export GITWEB_CONFIG
-- 
1.7.2.1
Previous: Jakub NarebskiNext: Jakub Narebski
Message 3 of 4 in “Testing installed gitweb”
  1. 0/3 Testing installed gitwebJakub Narebski, Sep 22, 2010
  2. 1/3 gitweb/Makefile: Include gitweb/config.makJakub Narebski, Sep 22, 2010
  3. 2/3 t/gitweb-lib.sh: Add support for GITWEB_TEST_INSTALLEDJakub Narebski, Sep 22, 2010
  4. 3/3 gitweb/Makefile: Add test-installed targetJakub Narebski, Sep 22, 2010

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.