Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(72)

Side by Side Diff: webkit/tools/layout_tests/layout_package/http_server.py

Issue 149263: Remove old log files so they don't accumulate on try bots. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 11 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/bin/env python 1 #!/bin/env python
2 # Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """A class to help start/stop the lighttpd server used by layout tests.""" 6 """A class to help start/stop the lighttpd server used by layout tests."""
7 7
8 8
9 import logging 9 import logging
10 import optparse 10 import optparse
11 import os 11 import os
12 import platform_utils 12 import platform_utils
13 import subprocess 13 import subprocess
14 import sys 14 import sys
15 import tempfile 15 import tempfile
16 import time 16 import time
17 import urllib 17 import urllib
18 18
19 import google.path_utils 19 import google.path_utils
20 20
21 # This will be a native path to the directory this file resides in. 21 # This will be a native path to the directory this file resides in.
22 # It can either be relative or absolute depending how it's executed. 22 # It can either be relative or absolute depending how it's executed.
23 THISDIR = os.path.dirname(os.path.abspath(__file__)) 23 THISDIR = os.path.dirname(os.path.abspath(__file__))
24 24
25 def PathFromBase(*pathies): 25 def PathFromBase(*pathies):
26 return google.path_utils.FindUpward(THISDIR, *pathies) 26 return google.path_utils.FindUpward(THISDIR, *pathies)
27 27
28 def RemoveLogFiles(folder, starts_with):
29 files = os.listdir(folder)
30 for file in files:
31 if file.startswith(starts_with) :
32 full_path = os.path.join(folder, file)
33 os.remove(full_path)
34
28 class HttpdNotStarted(Exception): 35 class HttpdNotStarted(Exception):
29 pass 36 pass
30 37
31 class Lighttpd: 38 class Lighttpd:
32 # Webkit tests 39 # Webkit tests
33 try: 40 try:
34 _webkit_tests = PathFromBase('webkit', 'data', 'layout_tests', 41 _webkit_tests = PathFromBase('webkit', 'data', 'layout_tests',
35 'LayoutTests', 'http', 'tests') 42 'LayoutTests', 'http', 'tests')
36 except google.path_utils.PathNotFound: 43 except google.path_utils.PathNotFound:
37 # If webkit/data/layout_tests/LayoutTests/http/tests does not exist, assume 44 # If webkit/data/layout_tests/LayoutTests/http/tests does not exist, assume
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 raise 'Lighttpd already running' 104 raise 'Lighttpd already running'
98 105
99 base_conf_file = os.path.join(THISDIR, 'lighttpd.conf') 106 base_conf_file = os.path.join(THISDIR, 'lighttpd.conf')
100 out_conf_file = os.path.join(self._output_dir, 'lighttpd.conf') 107 out_conf_file = os.path.join(self._output_dir, 'lighttpd.conf')
101 time_str = time.strftime("%d%b%Y-%H%M%S") 108 time_str = time.strftime("%d%b%Y-%H%M%S")
102 access_file_name = "access.log-" + time_str + ".txt" 109 access_file_name = "access.log-" + time_str + ".txt"
103 access_log = os.path.join(self._output_dir, access_file_name) 110 access_log = os.path.join(self._output_dir, access_file_name)
104 log_file_name = "error.log-" + time_str + ".txt" 111 log_file_name = "error.log-" + time_str + ".txt"
105 error_log = os.path.join(self._output_dir, log_file_name) 112 error_log = os.path.join(self._output_dir, log_file_name)
106 113
114 # Remove old log files. We only need to keep the last ones.
115 RemoveLogFiles(self._output_dir, "access.log-")
116 RemoveLogFiles(self._output_dir, "error.log-")
117
107 # Write out the config 118 # Write out the config
108 f = file(base_conf_file, 'rb') 119 f = file(base_conf_file, 'rb')
109 base_conf = f.read() 120 base_conf = f.read()
110 f.close() 121 f.close()
111 122
112 f = file(out_conf_file, 'wb') 123 f = file(out_conf_file, 'wb')
113 f.write(base_conf) 124 f.write(base_conf)
114 125
115 # Write out our cgi handlers. Run perl through env so that it processes 126 # Write out our cgi handlers. Run perl through env so that it processes
116 # the #! line and runs perl with the proper command line arguments. 127 # the #! line and runs perl with the proper command line arguments.
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
263 # Specifying port but no root does not seem meaningful. 274 # Specifying port but no root does not seem meaningful.
264 raise 'Specifying port requires also a root.' 275 raise 'Specifying port requires also a root.'
265 httpd = Lighttpd(tempfile.gettempdir(), 276 httpd = Lighttpd(tempfile.gettempdir(),
266 port=options.port, 277 port=options.port,
267 root=options.root, 278 root=options.root,
268 register_cygwin=options.register_cygwin) 279 register_cygwin=options.register_cygwin)
269 if 'start' == options.server: 280 if 'start' == options.server:
270 httpd.Start() 281 httpd.Start()
271 else: 282 else:
272 httpd.Stop(force=True) 283 httpd.Stop(force=True)
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698