Unreviewed, rolling out r130596.

http://trac.webkit.org/changeset/130596
https://bugs.webkit.org/show_bug.cgi?id=98616

Broke build bots without IPV6 support

Patch by Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com> on 2012-10-07

Tools:

* Scripts/webkitpy/common/system/platforminfo_mock.py:
(MockPlatformInfo.is_cygwin):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.baseline_version_dir):
(Port.to.start_websocket_server):
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_operating_system):
(PortTest.test_build_path):
* Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
(LayoutTestApacheHttpd):
(LayoutTestApacheHttpd.__init__):

LayoutTests:

* http/conf/apache2-debian-httpd.conf:
* http/conf/apache2-httpd.conf:
* http/conf/cygwin-httpd.conf:
* http/conf/fedora-httpd.conf:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@130597 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent e1f08160
2012-10-07 Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
Unreviewed, rolling out r130596.
http://trac.webkit.org/changeset/130596
https://bugs.webkit.org/show_bug.cgi?id=98616
Broke build bots without IPV6 support
* http/conf/apache2-debian-httpd.conf:
* http/conf/apache2-httpd.conf:
* http/conf/cygwin-httpd.conf:
* http/conf/fedora-httpd.conf:
2012-10-07 Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
webkitpy: Pass the `Listen' Apache directive from Apache, not the httpd.conf files.
......
......@@ -13,8 +13,24 @@ MinSpareServers 1
MaxSpareServers 5
StartServers 1
MaxClients 150
#
MaxRequestsPerChild 100000
# Configured from the httpd command line for WebKit layout tests.
# Port 8443 is hard-coded as it is needed for the HTTPS configuration later on.
Listen 127.0.0.1:8080
Listen 127.0.0.1:8443
# We listen to both IPv4 and IPv6 loop-back addresses, but ignore
# requests to 8000 from random users on network.
# See https://bugs.webkit.org/show_bug.cgi?id=37104
# FIXME: This breaks the GTK-Debug and Chromium-Linux bots.
# Starting up apache fails on this line with a syntax error.
# Need a way to detect if the machine supports ipv6 and then
# only do this binding in that case.
#Listen [::1]:8000
#Listen [::1]:8080
#Listen [::1]:8443
LoadModule mime_module /usr/lib/apache2/modules/mod_mime.so
LoadModule negotiation_module /usr/lib/apache2/modules/mod_negotiation.so
LoadModule include_module /usr/lib/apache2/modules/mod_include.so
......
......@@ -15,6 +15,19 @@ StartServers 1
MaxClients 150
MaxRequestsPerChild 100000
# Configured from the httpd command line for WebKit layout tests.
# Port 8443 is hard-coded as it is needed for the HTTPS configuration later on.
#
#Listen 3000
Listen 127.0.0.1:8080
Listen 127.0.0.1:8443
# We listen to both IPv4 and IPv6 loop-back addresses, but ignore
# requests to 8000 from random users on network.
# See https://bugs.webkit.org/show_bug.cgi?id=37104
Listen [::1]:8000
Listen [::1]:8080
Listen [::1]:8443
LoadModule authz_host_module libexec/apache2/mod_authz_host.so
LoadModule include_module libexec/apache2/mod_include.so
LoadModule log_config_module libexec/apache2/mod_log_config.so
......
......@@ -19,6 +19,13 @@ StartServers 1
MaxClients 150
MaxRequestsPerChild 100000
# Configured from the httpd command line for WebKit layout tests.
Listen 127.0.0.1:8080
# Apache 1.3 only supports IPv4, so we do not listen on ::1 (IPv6 loopback).
# This may cause flaky tests on systems which support IPv6 if localhost resolves
# to ::1 in addition to 127.0.0.1.
# See https://bugs.webkit.org/show_bug.cgi?id=37104
LoadModule config_log_module lib/apache/mod_log_config.dll
LoadModule mime_module lib/apache/mod_mime.dll
LoadModule negotiation_module lib/apache/mod_negotiation.dll
......
......@@ -16,6 +16,15 @@ StartServers 1
MaxClients 150
MaxRequestsPerChild 100000
Listen 127.0.0.1:8080
Listen 127.0.0.1:8443
# We listen to both IPv4 and IPv6 loop-back addresses, but ignore
# requests to 8000 from random users on network.
# See https://bugs.webkit.org/show_bug.cgi?id=37104
Listen [::1]:8000
Listen [::1]:8080
Listen [::1]:8443
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
......
2012-10-07 Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
Unreviewed, rolling out r130596.
http://trac.webkit.org/changeset/130596
https://bugs.webkit.org/show_bug.cgi?id=98616
Broke build bots without IPV6 support
* Scripts/webkitpy/common/system/platforminfo_mock.py:
(MockPlatformInfo.is_cygwin):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.baseline_version_dir):
(Port.to.start_websocket_server):
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_operating_system):
(PortTest.test_build_path):
* Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
(LayoutTestApacheHttpd):
(LayoutTestApacheHttpd.__init__):
2012-10-07 Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
webkitpy: Pass the `Listen' Apache directive from Apache, not the httpd.conf files.
......
......@@ -42,7 +42,7 @@ class MockPlatformInfo(object):
return self.os_name == 'win'
def is_cygwin(self):
return self.os_name == 'cygwin'
return False
def is_freebsd(self):
return self.os_name == 'freebsd'
......
......@@ -39,7 +39,6 @@ import os
import operator
import optparse
import re
import socket
import sys
try:
......@@ -204,6 +203,7 @@ class Port(object):
baseline_search_paths = self.baseline_search_path()
return baseline_search_paths[0]
def baseline_search_path(self):
return self.get_option('additional_platform_directory', []) + self._compare_baseline() + self.default_baseline_search_path()
......@@ -923,12 +923,6 @@ class Port(object):
server.start()
self._websocket_server = server
def http_server_supports_ipv6(self):
# Cygwin is the only platform to still use Apache 1.3, which only supports IPV4.
if self.host.platform.is_cygwin():
return False
return socket.has_ipv6
def acquire_http_lock(self):
self._http_lock = http_lock.HttpLock(None, filesystem=self._filesystem, executive=self._executive)
self._http_lock.wait_for_httpd_lock()
......
......@@ -379,14 +379,6 @@ class PortTest(unittest.TestCase):
def test_operating_system(self):
self.assertEqual('mac', self.make_port().operating_system())
def test_http_server_supports_ipv6(self):
port = self.make_port()
self.assertTrue(port.http_server_supports_ipv6())
port.host.platform.os_name = 'cygwin'
self.assertFalse(port.http_server_supports_ipv6())
port.host.platform.os_name = 'win'
self.assertTrue(port.http_server_supports_ipv6())
def test_check_httpd_success(self):
port = self.make_port(executive=MockExecutive2())
port._path_to_apache = lambda: '/usr/sbin/httpd'
......@@ -459,5 +451,6 @@ class PortTest(unittest.TestCase):
port = self.make_port(options=optparse.Values({'build_directory': '/my-build-directory/'}))
self.assertEqual(port._build_path(), '/my-build-directory/Release')
if __name__ == '__main__':
unittest.main()
......@@ -42,6 +42,7 @@ _log = logging.getLogger(__name__)
class LayoutTestApacheHttpd(http_server_base.HttpServerBase):
def __init__(self, port_obj, output_dir, additional_dirs=None, number_of_servers=None):
"""Args:
port_obj: handle to the platform-specific routines
......@@ -76,6 +77,7 @@ class LayoutTestApacheHttpd(http_server_base.HttpServerBase):
'-C', "\'DocumentRoot \"%s\"\'" % document_root,
'-c', "\'Alias /js-test-resources \"%s\"'" % js_test_resources_dir,
'-c', "\'Alias /media-resources \"%s\"'" % media_resources_dir,
'-C', "\'Listen %s\'" % "127.0.0.1:8000",
'-c', "\'TypesConfig \"%s\"\'" % mime_types_path,
'-c', "\'CustomLog \"%s\" common\'" % access_log,
'-c', "\'ErrorLog \"%s\"\'" % error_log,
......@@ -83,16 +85,6 @@ class LayoutTestApacheHttpd(http_server_base.HttpServerBase):
'-c', "\'PidFile %s'" % self._pid_file,
'-k', "start"]
for mapping in self._mappings:
port = mapping['port']
start_cmd += ['-C', "\'Listen 127.0.0.1:%d\'" % port]
# We listen to both IPv4 and IPv6 loop-back addresses, but ignore
# requests to 8000 from random users on network.
# See https://bugs.webkit.org/show_bug.cgi?id=37104
if self._port_obj.http_server_supports_ipv6():
start_cmd += ['-C', "\'Listen [::1]:%d\'" % port]
if additional_dirs:
for alias, path in additional_dirs.iteritems():
start_cmd += ['-c', "\'Alias %s \"%s\"\'" % (alias, path),
......@@ -106,6 +98,7 @@ class LayoutTestApacheHttpd(http_server_base.HttpServerBase):
'-c', "\'MinSpareServers %d\'" % self._number_of_servers,
'-c', "\'MaxSpareServers %d\'" % self._number_of_servers]
stop_cmd = [executable,
'-f', "\"%s\"" % self._get_apache_config_file_path(test_dir, output_dir),
'-c', "\'PidFile %s'" % self._pid_file,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment