Author: stsp
Date: Wed Jun 7 10:40:57 2017
New Revision: 1797908
URL: http://svn.apache.org/viewvc?rev=1797908&view=rev
Log:
* tools/dev/unix-build/Makefile.svn: Add a way to start a write-through proxy.
Modified:
subversion/trunk/tools/dev/unix-build/Makefile.svn
Modified: subversion/trunk/tools/dev/unix-build/Makefile.svn
URL:
http://svn.apache.org/viewvc/subversion/trunk/tools/dev/unix-build/Makefile.svn?rev=1797908&r1=1797907&r2=1797908&view=diff
==============================================================================
--- subversion/trunk/tools/dev/unix-build/Makefile.svn (original)
+++ subversion/trunk/tools/dev/unix-build/Makefile.svn Wed Jun 7 10:40:57 2017
@@ -710,6 +710,7 @@ $(HTTPD_OBJDIR)/.configured: $(HTTPD_OBJ
--enable-maintainer-mode \
--enable-ssl \
--enable-dav \
+ --enable-proxy \
--with-mpm=prefork \
--with-apr="$(PREFIX)/apr" \
--with-apr-util="$(PREFIX)/apr"
@@ -1519,9 +1520,11 @@ $(SVN_OBJDIR)/.bindings-installed: $(SVN
# run svn regression tests
HTTPD_CHECK_CONF=$(PREFIX)/httpd/conf/httpd-svn-check-$(WC).conf
+HTTPD_PROXY_CONF=$(PREFIX)/httpd/conf/httpd-svn-proxy-$(WC).conf
HTTPD_CHECK_USERS=$(PREFIX)/httpd/conf/httpd-svn-check-users
HTTPD_CHECK_GROUPS=$(PREFIX)/httpd/conf/httpd-svn-check-groups
HTTPD_CHECK_PORT=8081
+HTTPD_PROXY_PORT=8082
MOD_DONTDOTHAT_CONF=$(PREFIX)/httpd/conf/dontdothat
$(MOD_DONTDOTHAT_CONF):
@@ -1788,6 +1791,40 @@ endif
echo >> [email protected] '#SVNCacheRevProps Off'
mv -f [email protected] $@
+$(HTTPD_PROXY_CONF): $(HTTPD_CHECK_CONF)
+ mkdir -p $(dir $@)
+ echo > [email protected] '# httpd config for a write-through proxy'
+ echo >>[email protected] 'ServerRoot "$(PREFIX)/httpd"'
+ echo >>[email protected] 'Listen localhost:$(HTTPD_PROXY_PORT)'
+ echo >>[email protected] 'LoadModule dav_svn_module $(MOD_DAV_SVN)'
+ echo >>[email protected] 'LoadModule authz_svn_module $(MOD_AUTHZ_SVN)'
+ echo >>[email protected] 'LoadModule dontdothat_module $(MOD_DONTDOTHAT)'
+ echo >>[email protected] 'DocumentRoot "$(PREFIX)/httpd/htdocs"'
+ echo >>[email protected] '# This Location lets you access repositories dropped in
/tmp/svn-$(BRANCH)-proxy'
+ echo >>[email protected] '<Location /svn>'
+ echo >>[email protected] ' DAV svn'
+ echo >>[email protected] ' SVNParentPath /tmp/svn-$(BRANCH)-proxy'
+ echo >>[email protected] ' SVNMasterURI
http://localhost:$(HTTPD_CHECK_PORT)/svn/'
+ echo >>[email protected] ' Allow from all'
+ echo >>[email protected] ' #AuthType Basic'
+ echo >>[email protected] ' #AuthName "Subversion Repository"'
+ echo >>[email protected] ' #AuthUserFile $(HTTPD_CHECK_USERS)'
+ echo >>[email protected] ' #Require valid-user'
+ifeq ($(USE_HTTPV1),yes)
+ echo >> [email protected] ' SVNAdvertiseV2Protocol off'
+endif
+ifeq ($(USE_AUTHZ_SHORT_CIRCUIT),yes)
+ echo >> [email protected] ' SVNPathAuthz short_circuit'
+endif
+ echo >>[email protected] '</Location>'
+ echo >>[email protected] '# This Location allows repositories to be synced'
+ echo >>[email protected] '<Location /svn-proxy-sync>'
+ echo >>[email protected] 'DAV svn'
+ echo >>[email protected] 'SVNParentPath /tmp/svn-$(BRANCH)-proxy'
+ echo >>[email protected] 'Allow from all'
+ echo >>[email protected] '</Location>'
+ mv -f [email protected] $@
+
.PHONY: libpath
libpath:
@echo export LD_LIBRARY_PATH="$(LD_LIBRARY_PATH):$$LD_LIBRARY_PATH" \
@@ -1803,10 +1840,11 @@ endif
.PHONY: start-svnserve stop-svnserve start-httpd stop-httpd
HTTPD_CMD = env LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) $(LIB_PTHREAD_HACK) \
- $(PREFIX)/httpd/bin/apachectl -f $(HTTPD_CHECK_CONF)
-HTTPD_START_CMD = $(HTTPD_CMD) -k start
+ $(PREFIX)/httpd/bin/apachectl
+HTTPD_START_CMD = $(HTTPD_CMD) -f $(HTTPD_CHECK_CONF) -k start
+HTTPD_START_CMD_PROXY = $(HTTPD_CMD) -f $(HTTPD_PROXY_CONF)
HTTPD_START_CMD_DEBUG = $(HTTPD_START_CMD) -X
-HTTPD_STOP_CMD = $(HTTPD_CMD) -k stop; sleep 3
+HTTPD_STOP_CMD = $(HTTPD_CMD) -f $(HTTPD_CHECK_CONF) -k stop; sleep 3
SVNSERVE_START_CMD = (test -e $(PWD)/svnserve-*.pid && \
ls $(PWD)/svnserve-*.pid | while read pidfile; do \
@@ -1837,9 +1875,17 @@ start-httpd-debug: $(HTTPD_CHECK_CONF)
@sleep 1
gdb $(PREFIX)/httpd/bin/httpd `cat $(PREFIX)/httpd/logs/httpd.pid`
+start-httpd-proxy: $(HTTPD_PROXY_CONF)
+ $(HTTPD_START_CMD_PROXY)
+ @echo "The URL http://localhost:$(HTTPD_PROXY_PORT)/svn/"
+ @echo "lets you access repositories dropped into
/tmp/svn-$(BRANCH)-proxy"
+
stop-httpd: $(HTTPD_CHECK_CONF)
$(HTTPD_STOP_CMD)
+stop-httpd-proxy: $(HTTPD_PROXY_CONF)
+ pkill -f '$(PREFIX)/httpd/bin/httpd -f $(HTTPD_PROXY_CONF)'
+
start-svnserve: $(SVN_OBJDIR)/.compiled
$(SVNSERVE_START_CMD)