[Autotest][PY3] Migrating site_utils (log_socket_server to server_manager)
BUG=chromium:990593
TEST=dummy_pass, suite:dummy
Change-Id: I3dc1d7347d0a4533e53952c1e4a6729e53ef6811
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/autotest/+/2551384
Commit-Queue: Derek Beckett <dbeckett@chromium.org>
Tested-by: Derek Beckett <dbeckett@chromium.org>
Reviewed-by: Greg Edelston <gredelston@google.com>
diff --git a/site_utils/log_socket_server.py b/site_utils/log_socket_server.py
index 9de8080..ac948ae 100644
--- a/site_utils/log_socket_server.py
+++ b/site_utils/log_socket_server.py
@@ -1,3 +1,4 @@
+# Lint as: python2, python3
# The source code is from following Python documentation:
# https://docs.python.org/2/howto/logging-cookbook.html#network-logging
@@ -10,19 +11,23 @@
# logging.handlers.DEFAULT_TCP_LOGGING_PORT)
# logging.getLogger().addHandler(socketHandler)
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+
import ctypes
import pickle
import logging
import multiprocessing
import select
-import SocketServer
+import six.moves.socketserver
import struct
import time
import common
from autotest_lib.client.common_lib import utils
-class LogRecordStreamHandler(SocketServer.StreamRequestHandler):
+class LogRecordStreamHandler(six.moves.socketserver.StreamRequestHandler):
"""Handler for a streaming logging request.
This basically logs the record using whatever logging policy is
@@ -76,7 +81,7 @@
logger.handle(record)
-class LogRecordSocketReceiver(SocketServer.ThreadingTCPServer):
+class LogRecordSocketReceiver(six.moves.socketserver.ThreadingTCPServer):
"""Simple TCP socket-based logging receiver.
"""
@@ -86,7 +91,7 @@
handler=LogRecordStreamHandler):
if not port:
port = utils.get_unused_port()
- SocketServer.ThreadingTCPServer.__init__(self, (host, port), handler)
+ six.moves.socketserver.ThreadingTCPServer.__init__(self, (host, port), handler)
self.abort = 0
self.timeout = 1
self.logname = None
@@ -95,7 +100,7 @@
def serve_until_stopped(self):
"""Run the socket receiver until aborted."""
- print 'Log Record Socket Receiver is started.'
+ print('Log Record Socket Receiver is started.')
abort = 0
while not abort:
rd, wr, ex = select.select([self.socket.fileno()], [], [],
@@ -103,7 +108,7 @@
if rd:
self.handle_request()
abort = self.abort
- print 'Log Record Socket Receiver is stopped.'
+ print('Log Record Socket Receiver is stopped.')
class LogSocketServer:
@@ -132,7 +137,7 @@
while not server_started.value:
time.sleep(0.1)
LogSocketServer.port = port.value
- print 'Log Record Socket Server is started at port %d.' % port.value
+ print('Log Record Socket Server is started at port %d.' % port.value)
@staticmethod
diff --git a/site_utils/log_socket_server_unittest.py b/site_utils/log_socket_server_unittest.py
index 58c9403..a289670 100644
--- a/site_utils/log_socket_server_unittest.py
+++ b/site_utils/log_socket_server_unittest.py
@@ -1,7 +1,12 @@
+# Lint as: python2, python3
# Copyright (c) 2014 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.
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+
import logging
import logging.handlers
import mox
@@ -11,7 +16,8 @@
import os
import unittest
-import log_socket_server
+from autotest_lib.site_utils import log_socket_server
+from six.moves import range
class TestLogSocketServer(mox.MoxTestBase):
diff --git a/site_utils/perf_compare.py b/site_utils/perf_compare.py
index b303413..0318d25 100644
--- a/site_utils/perf_compare.py
+++ b/site_utils/perf_compare.py
@@ -58,6 +58,9 @@
"""
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
import json
import logging
import math
@@ -67,6 +70,7 @@
import shutil
import subprocess
import sys
+from six.moves import input
_ITERATIONS = 5
@@ -150,7 +154,7 @@
else benchmark_to_add['iterations'])
else:
benchmark_to_add['iterations'] = iter_num
- benchmarks_to_run = identified_benchmarks.values()
+ benchmarks_to_run = list(identified_benchmarks.values())
return benchmarks_to_run, perf_keys_requested
diff --git a/site_utils/rpc_flight_recorder.py b/site_utils/rpc_flight_recorder.py
index 7462f5b..f86f980 100755
--- a/site_utils/rpc_flight_recorder.py
+++ b/site_utils/rpc_flight_recorder.py
@@ -10,7 +10,7 @@
import time
import logging
import multiprocessing
-import urllib2
+from six.moves import urllib
import common
from autotest_lib.client.common_lib import global_config
@@ -224,7 +224,7 @@
if expected is not None and expected != result:
_failed(f, msg_str, 'IncorrectResponse')
- except urllib2.HTTPError as e:
+ except urllib.error.HTTPError as e:
_failed(f, msg_str, 'HTTPError:%d' % e.code)
except Exception as e:
diff --git a/site_utils/rpc_logserver.py b/site_utils/rpc_logserver.py
index ce7518e..4e225aa 100755
--- a/site_utils/rpc_logserver.py
+++ b/site_utils/rpc_logserver.py
@@ -5,6 +5,10 @@
# found in the LICENSE file.
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+
import argparse
import ctypes
import logging
@@ -51,7 +55,7 @@
LogServer.process.start()
while not server_started.value:
time.sleep(0.1)
- print 'LogServer is started at port %d.' % port
+ print('LogServer is started at port %d.' % port)
@staticmethod
diff --git a/site_utils/server_manager.py b/site_utils/server_manager.py
index 5a7d183..90c8430 100644
--- a/site_utils/server_manager.py
+++ b/site_utils/server_manager.py
@@ -1,3 +1,4 @@
+# Lint as: python2, python3
# Copyright 2014 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.
@@ -30,6 +31,10 @@
"""
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+
import datetime
import common
@@ -74,7 +79,7 @@
server_manager_actions.try_execute(server, [role], enable=True,
post_change=True, do_action=action)
- print 'Role %s is added to server %s.' % (role, server.hostname)
+ print('Role %s is added to server %s.' % (role, server.hostname))
def _delete_role(server, role, action=False):
@@ -100,7 +105,7 @@
server_manager_actions.try_execute(server, [role], enable=False,
post_change=False, do_action=action)
- print 'Deleting role %s from server %s...' % (role, server.hostname)
+ print('Deleting role %s from server %s...' % (role, server.hostname))
server.roles.get(role=role).delete()
# Apply actions to disable the role for the server after the role is
@@ -112,7 +117,7 @@
server.status == server_models.Server.STATUS.PRIMARY):
print ('Server %s has no role.')
- print 'Role %s is deleted from server %s.' % (role, server.hostname)
+ print('Role %s is deleted from server %s.' % (role, server.hostname))
def _change_status(server, status, action):
@@ -175,9 +180,9 @@
prev_status=prev_status,
do_action=action)
- print ('Status of server %s is changed from %s to %s. Affected roles: %s' %
- (server.hostname, prev_status, status,
- ', '.join(server.get_role_names())))
+ print('Status of server %s is changed from %s to %s. Affected roles: %s' %
+ (server.hostname, prev_status, status,
+ ', '.join(server.get_role_names())))
@server_manager_utils.verify_server(exist=False)
@@ -211,17 +216,17 @@
@raise ServerActionError: If delete server action failed, e.g., server is
not found in database.
"""
- print 'Deleting server %s from server database.' % hostname
+ print('Deleting server %s from server database.' % hostname)
if (server_manager_utils.use_server_db() and
server.status == server_models.Server.STATUS.PRIMARY):
- print ('Server %s is in status primary, need to disable its '
- 'current roles first.' % hostname)
+ print('Server %s is in status primary, need to disable its '
+ 'current roles first.' % hostname)
for role in server.roles.all():
_delete_role(server, role.role)
server.delete()
- print 'Server %s is deleted from server database.' % hostname
+ print('Server %s is deleted from server database.' % hostname)
@server_manager_utils.verify_server()