aboutsummaryrefslogtreecommitdiffstats
path: root/docker/vnf/cloudify-rest-client-py3.patch
diff options
context:
space:
mode:
Diffstat (limited to 'docker/vnf/cloudify-rest-client-py3.patch')
-rw-r--r--docker/vnf/cloudify-rest-client-py3.patch234
1 files changed, 234 insertions, 0 deletions
diff --git a/docker/vnf/cloudify-rest-client-py3.patch b/docker/vnf/cloudify-rest-client-py3.patch
new file mode 100644
index 000000000..ef47e1aa3
--- /dev/null
+++ b/docker/vnf/cloudify-rest-client-py3.patch
@@ -0,0 +1,234 @@
+diff --git a/cloudify_rest_client/aria/mapi/mapi.py b/cloudify_rest_client/aria/mapi/mapi.py
+index 401c9de..5c4fa76 100644
+--- a/cloudify_rest_client/aria/mapi/mapi.py
++++ b/cloudify_rest_client/aria/mapi/mapi.py
+@@ -88,7 +88,7 @@ class RESTMAPI(api.ModelAPI):
+ wrapper = wrappers.DictWrapper
+ kw = dict(
+ (key, self._wrap(value, '/'.join([attribute_path, key])))
+- for key, value in value.items()
++ for key, value in list(value.items())
+ )
+ elif isinstance(value, list):
+ wrapper = wrappers.ListWrapper
+diff --git a/cloudify_rest_client/aria/mapi/wrappers.py b/cloudify_rest_client/aria/mapi/wrappers.py
+index bdee6de..13af062 100644
+--- a/cloudify_rest_client/aria/mapi/wrappers.py
++++ b/cloudify_rest_client/aria/mapi/wrappers.py
+@@ -71,7 +71,7 @@ class DictWrapper(dict, WrapperBase):
+ )
+
+ def itervalues(self):
+- return iter(self.values())
++ return iter(list(self.values()))
+
+ def items(self):
+ return [
+@@ -81,7 +81,7 @@ class DictWrapper(dict, WrapperBase):
+ ]
+
+ def iteritems(self):
+- return iter(self.items())
++ return iter(list(self.items()))
+
+ def keys(self):
+ return [
+@@ -91,10 +91,10 @@ class DictWrapper(dict, WrapperBase):
+ ]
+
+ def iterkeys(self):
+- return iter(self.keys())
++ return iter(list(self.keys()))
+
+ def __iter__(self):
+- return self.iterkeys()
++ return iter(self.keys())
+
+
+ class ListWrapper(list, WrapperBase):
+diff --git a/cloudify_rest_client/aria/service_templates.py b/cloudify_rest_client/aria/service_templates.py
+index 05b86df..d49a91f 100644
+--- a/cloudify_rest_client/aria/service_templates.py
++++ b/cloudify_rest_client/aria/service_templates.py
+@@ -14,8 +14,8 @@
+ # * limitations under the License.
+
+ import os
+-import urllib
+-import urlparse
++import urllib.request, urllib.parse, urllib.error
++import urllib.parse
+ from functools import partial
+
+ from .. import bytes_stream_utils
+@@ -41,14 +41,14 @@ class ServiceTemplateClient(BlueprintsClient):
+
+ if application_file_name is not None:
+ query_params['application_file_name'] = \
+- urllib.quote(application_file_name)
++ urllib.parse.quote(application_file_name)
+
+ uri = '/{self._uri_prefix}/{id}'.format(self=self,
+ id=service_template_id)
+
+ # For a Windows path (e.g. "C:\aaa\bbb.zip") scheme is the
+ # drive letter and therefore the 2nd condition is present
+- if urlparse.urlparse(archive_location).scheme and \
++ if urllib.parse.urlparse(archive_location).scheme and \
+ not os.path.exists(archive_location):
+ # archive location is URL
+ query_params['service_template_csar_url'] = archive_location
+diff --git a/cloudify_rest_client/blueprints.py b/cloudify_rest_client/blueprints.py
+index 5d19325..5f533cc 100644
+--- a/cloudify_rest_client/blueprints.py
++++ b/cloudify_rest_client/blueprints.py
+@@ -16,8 +16,8 @@
+ import os
+ import tempfile
+ import shutil
+-import urllib
+-import urlparse
++import urllib.request, urllib.parse, urllib.error
++import urllib.parse
+ import contextlib
+
+ from cloudify_rest_client import utils
+@@ -95,13 +95,13 @@ class BlueprintsClient(object):
+ query_params = {'visibility': visibility}
+ if application_file_name is not None:
+ query_params['application_file_name'] = \
+- urllib.quote(application_file_name)
++ urllib.parse.quote(application_file_name)
+
+ uri = '/{self._uri_prefix}/{id}'.format(self=self, id=blueprint_id)
+
+ # For a Windows path (e.g. "C:\aaa\bbb.zip") scheme is the
+ # drive letter and therefore the 2nd condition is present
+- if urlparse.urlparse(archive_location).scheme and \
++ if urllib.parse.urlparse(archive_location).scheme and \
+ not os.path.exists(archive_location):
+ # archive location is URL
+ query_params['blueprint_archive_url'] = archive_location
+diff --git a/cloudify_rest_client/client.py b/cloudify_rest_client/client.py
+index 84641d2..0528e66 100644
+--- a/cloudify_rest_client/client.py
++++ b/cloudify_rest_client/client.py
+@@ -144,13 +144,13 @@ class HTTPClient(object):
+ verify=verify,
+ timeout=timeout or self.default_timeout_sec)
+ if self.logger.isEnabledFor(logging.DEBUG):
+- for hdr, hdr_content in response.request.headers.iteritems():
++ for hdr, hdr_content in response.request.headers.items():
+ self.logger.debug('request header: %s: %s'
+ % (hdr, hdr_content))
+ self.logger.debug('reply: "%s %s" %s'
+ % (response.status_code,
+ response.reason, response.content))
+- for hdr, hdr_content in response.headers.iteritems():
++ for hdr, hdr_content in response.headers.items():
+ self.logger.debug('response header: %s: %s'
+ % (hdr, hdr_content))
+
+@@ -209,7 +209,7 @@ class HTTPClient(object):
+ body = json.dumps(data) if is_dict_data else data
+ if self.logger.isEnabledFor(logging.DEBUG):
+ log_message = 'Sending request: {0} {1}'.format(
+- requests_method.func_name.upper(),
++ requests_method.__name__.upper(),
+ request_url)
+ if is_dict_data:
+ log_message += '; body: {0}'.format(body)
+@@ -299,8 +299,8 @@ class HTTPClient(object):
+ if not username or not password:
+ return None
+ credentials = '{0}:{1}'.format(username, password)
+- encoded_credentials = urlsafe_b64encode(credentials)
+- return BASIC_AUTH_PREFIX + ' ' + encoded_credentials
++ encoded_credentials = urlsafe_b64encode(credentials.encode("utf-8"))
++ return BASIC_AUTH_PREFIX + ' ' + str(encoded_credentials, "utf-8")
+
+ def _set_header(self, key, value, log_value=True):
+ if not value:
+diff --git a/cloudify_rest_client/deployment_updates.py b/cloudify_rest_client/deployment_updates.py
+index 5010d86..d7db897 100644
+--- a/cloudify_rest_client/deployment_updates.py
++++ b/cloudify_rest_client/deployment_updates.py
+@@ -14,9 +14,9 @@
+ # * limitations under the License.
+ import os
+ import json
+-import urllib
++import urllib.request, urllib.parse, urllib.error
+ import shutil
+-import urlparse
++import urllib.parse
+ import tempfile
+ from mimetypes import MimeTypes
+
+@@ -129,11 +129,11 @@ class DeploymentUpdatesClient(object):
+
+ if application_file_name:
+ params['application_file_name'] = \
+- urllib.quote(application_file_name)
++ urllib.parse.quote(application_file_name)
+
+ # For a Windows path (e.g. "C:\aaa\bbb.zip") scheme is the
+ # drive letter and therefore the 2nd condition is present
+- if all([urlparse.urlparse(archive_path).scheme,
++ if all([urllib.parse.urlparse(archive_path).scheme,
+ not os.path.exists(archive_path)]):
+ # archive location is URL
+ params['blueprint_archive_url'] = archive_path
+@@ -142,7 +142,7 @@ class DeploymentUpdatesClient(object):
+ os.path.basename(archive_path),
+ open(archive_path, 'rb'),
+ # Guess the archive mime type
+- mime_types.guess_type(urllib.pathname2url(archive_path)))
++ mime_types.guess_type(urllib.request.pathname2url(archive_path)))
+
+ return data_form, params
+
+diff --git a/cloudify_rest_client/plugins.py b/cloudify_rest_client/plugins.py
+index 76171b4..32e3e47 100644
+--- a/cloudify_rest_client/plugins.py
++++ b/cloudify_rest_client/plugins.py
+@@ -14,7 +14,7 @@
+ # * limitations under the License.
+
+ import os
+-import urlparse
++import urllib.parse
+ import contextlib
+
+ from cloudify_rest_client import bytes_stream_utils
+@@ -222,7 +222,7 @@ class PluginsClient(object):
+ assert plugin_path
+ query_params = {'visibility': visibility}
+ timeout = self.api.default_timeout_sec
+- if urlparse.urlparse(plugin_path).scheme and \
++ if urllib.parse.urlparse(plugin_path).scheme and \
+ not os.path.exists(plugin_path):
+ query_params['plugin_archive_url'] = plugin_path
+ data = None
+diff --git a/cloudify_rest_client/snapshots.py b/cloudify_rest_client/snapshots.py
+index 851c3a3..0c40ceb 100644
+--- a/cloudify_rest_client/snapshots.py
++++ b/cloudify_rest_client/snapshots.py
+@@ -14,7 +14,7 @@
+ # * limitations under the License.
+
+ import os
+-import urlparse
++import urllib.parse
+ import contextlib
+
+ from cloudify_rest_client import bytes_stream_utils
+@@ -192,7 +192,7 @@ class SnapshotsClient(object):
+ uri = '/snapshots/{0}/archive'.format(snapshot_id)
+ query_params = {}
+
+- if urlparse.urlparse(snapshot_path).scheme and \
++ if urllib.parse.urlparse(snapshot_path).scheme and \
+ not os.path.exists(snapshot_path):
+ query_params['snapshot_archive_url'] = snapshot_path
+ data = None