Chromium Code Reviews| Index: bin/au_test_harness/dev_server_wrapper.py |
| diff --git a/bin/au_test_harness/dev_server_wrapper.py b/bin/au_test_harness/dev_server_wrapper.py |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..01b52d4d7d93f5500e4cc375370b112b1fe35a50 |
| --- /dev/null |
| +++ b/bin/au_test_harness/dev_server_wrapper.py |
| @@ -0,0 +1,50 @@ |
| +# Copyright (c) 2011 The Chromium OS Authors. All rights reserved. |
| +# Use of this source code is governed by a BSD-style license that can be |
| +# found in the LICENSE file. |
| + |
| +"""Module containing methods and classes to interact with a devserver instance. |
| +""" |
| + |
| +import threading |
| + |
| +import cros_build_lib as cros_lib |
| + |
| +def GenerateUpdateId(target, src, key): |
| + """Returns a simple representation id of target and src paths.""" |
| + update_id = target |
| + if src: update_id = '->'.join([update_id, src]) |
| + if key: update_id = '+'.join([update_id, key]) |
| + return update_id |
| + |
| +class DevServerWrapper(threading.Thread): |
| + """A Simple wrapper around a dev server instance.""" |
| + |
| + def __init__(self): |
| + self.proc = None |
| + threading.Thread.__init__(self) |
| + |
| + def run(self): |
| + # Kill previous running instance of devserver if it exists. |
| + cros_lib.RunCommand(['sudo', 'pkill', '-f', 'devserver.py'], error_ok=True, |
| + print_cmd=False) |
| + cros_lib.RunCommand(['sudo', |
| + 'start_devserver', |
| + '--archive_dir=./static', |
| + '--client_prefix=ChromeOSUpdateEngine', |
| + '--production', |
| + ], enter_chroot=True, print_cmd=False) |
| + |
| + def Stop(self): |
| + """Kills the devserver instance.""" |
| + cros_lib.RunCommand(['sudo', 'pkill', '-f', 'devserver.py'], error_ok=True, |
| + print_cmd=False) |
| + |
| + @classmethod |
|
dgarrett
2011/03/03 02:17:21
Again, not a problem, I'm just curious.
sosa
2011/03/03 03:11:41
Static method. Doesn't use any specific variables
|
| + def GetDevServerURL(cls, port, sub_dir): |
| + """Returns the dev server url for a given port and sub directory.""" |
| + ip_addr = cros_lib.GetIPAddress() |
| + if not port: port = 8080 |
| + url = 'http://%(ip)s:%(port)s/%(dir)s' % {'ip': ip_addr, |
| + 'port': str(port), |
| + 'dir': sub_dir} |
| + return url |