Python 3 Fix: use six.moves.urillib

Use six.moves.urllib instead of urllib2 for python 3 compatability.

Change-Id: Ia12a91d6164cd32080bafdeb5f4829e2d35f5e83
This commit is contained in:
Morgan Fainberg 2016-05-30 14:01:22 -07:00
parent 4c6a774419
commit 293f7f839b
5 changed files with 27 additions and 27 deletions

View File

@ -22,6 +22,7 @@ import logging
import os
import pprint
from six.moves import queue as Queue
from six.moves import urllib
import random
import re
import select
@ -32,12 +33,10 @@ import subprocess
import swiftclient
import threading
import time
import urllib2
import git
import gear
import fixtures
import six.moves.urllib.parse as urlparse
import statsd
import testtools
from git import GitCommandError
@ -479,7 +478,7 @@ class FakeURLOpener(object):
self.url = url
def read(self):
res = urlparse.urlparse(self.url)
res = urllib.parse.urlparse(self.url)
path = res.path
project = '/'.join(path.split('/')[2:-2])
ret = '001e# service=git-upload-pack\n'
@ -947,12 +946,12 @@ class ZuulTestCase(BaseTestCase):
self.sched.registerConnections(self.connections)
def URLOpenerFactory(*args, **kw):
if isinstance(args[0], urllib2.Request):
if isinstance(args[0], urllib.request.Request):
return old_urlopen(*args, **kw)
return FakeURLOpener(self.upstream_root, *args, **kw)
old_urlopen = urllib2.urlopen
urllib2.urlopen = URLOpenerFactory
old_urlopen = urllib.request.urlopen
urllib.request.urlopen = URLOpenerFactory
self.merge_server = zuul.merger.server.MergeServer(self.config,
self.connections)

View File

@ -20,11 +20,10 @@ import os
import re
import shutil
import time
import urllib
import urllib2
import yaml
import git
from six.moves import urllib
import testtools
import zuul.change_matcher
@ -2275,8 +2274,8 @@ jobs:
port = self.webapp.server.socket.getsockname()[1]
req = urllib2.Request("http://localhost:%s/status.json" % port)
f = urllib2.urlopen(req)
req = urllib.request.Request("http://localhost:%s/status.json" % port)
f = urllib.request.urlopen(req)
headers = f.info()
self.assertIn('Content-Length', headers)
self.assertIn('Content-Type', headers)
@ -2881,7 +2880,8 @@ jobs:
port = self.webapp.server.socket.getsockname()[1]
f = urllib.urlopen("http://localhost:%s/status.json" % port)
req = urllib.request.Request("http://localhost:%s/status.json" % port)
f = urllib.request.urlopen(req)
data = f.read()
self.worker.hold_jobs_in_build = False

View File

@ -16,7 +16,8 @@
# under the License.
import json
import urllib2
from six.moves import urllib
from tests.base import ZuulTestCase
@ -44,41 +45,41 @@ class TestWebapp(ZuulTestCase):
def test_webapp_status(self):
"Test that we can filter to only certain changes in the webapp."
req = urllib2.Request(
req = urllib.request.Request(
"http://localhost:%s/status" % self.port)
f = urllib2.urlopen(req)
f = urllib.request.urlopen(req)
data = json.loads(f.read())
self.assertIn('pipelines', data)
def test_webapp_status_compat(self):
# testing compat with status.json
req = urllib2.Request(
req = urllib.request.Request(
"http://localhost:%s/status.json" % self.port)
f = urllib2.urlopen(req)
f = urllib.request.urlopen(req)
data = json.loads(f.read())
self.assertIn('pipelines', data)
def test_webapp_bad_url(self):
# do we 404 correctly
req = urllib2.Request(
req = urllib.request.Request(
"http://localhost:%s/status/foo" % self.port)
self.assertRaises(urllib2.HTTPError, urllib2.urlopen, req)
self.assertRaises(urllib.error.HTTPError, urllib.request.urlopen, req)
def test_webapp_find_change(self):
# can we filter by change id
req = urllib2.Request(
req = urllib.request.Request(
"http://localhost:%s/status/change/1,1" % self.port)
f = urllib2.urlopen(req)
f = urllib.request.urlopen(req)
data = json.loads(f.read())
self.assertEqual(1, len(data), data)
self.assertEqual("org/project", data[0]['project'])
req = urllib2.Request(
req = urllib.request.Request(
"http://localhost:%s/status/change/2,1" % self.port)
f = urllib2.urlopen(req)
f = urllib.request.urlopen(req)
data = json.loads(f.read())
self.assertEqual(1, len(data), data)

View File

@ -18,11 +18,11 @@ import select
import json
import time
from six.moves import queue as Queue
from six.moves import urllib
import paramiko
import logging
import pprint
import voluptuous as v
import urllib2
from zuul.connection import BaseConnection
from zuul.model import TriggerEvent
@ -388,10 +388,10 @@ class GerritConnection(BaseConnection):
url = "%s/p/%s/info/refs?service=git-upload-pack" % (
self.baseurl, project)
try:
data = urllib2.urlopen(url).read()
data = urllib.request.urlopen(url).read()
except:
self.log.error("Cannot get references from %s" % url)
raise # keeps urllib2 error informations
raise # keeps urllib error informations
ret = {}
read_headers = False
read_advertisement = False

View File

@ -19,8 +19,8 @@ from time import time
import os
import random
import six
from six.moves import urllib
import string
import urlparse
class Swift(object):
@ -156,7 +156,7 @@ class Swift(object):
url = os.path.join(self.storage_url, settings['container'],
settings['file_path_prefix'],
destination_prefix)
u = urlparse.urlparse(url)
u = urllib.parse.urlparse(url)
hmac_body = '%s\n%s\n%s\n%s\n%s' % (u.path, redirect,
settings['max_file_size'],