[Kimchi-devel] [PATCH] python 2.6 compatibility: Use 'with' statement only with one context
Wen Wang
wenwang at linux.vnet.ibm.com
Fri Sep 12 03:11:52 UTC 2014
Tested-by: Wen Wang <wenwang at linux.vnet.ibm.com>
On 09/12/2014 12:36 AM, Aline Manera wrote:
> python 2.6 does not allow specifying multiple contexts in one 'with'
> statement. And it is used by RHEL6.5
> Fix it by specifying just one context per 'with' statement.
>
> Signed-off-by: Aline Manera <alinefm at linux.vnet.ibm.com>
> ---
> src/kimchi/model/storagevolumes.py | 34 +++++++++++++++++-----------------
> 1 file changed, 17 insertions(+), 17 deletions(-)
>
> diff --git a/src/kimchi/model/storagevolumes.py b/src/kimchi/model/storagevolumes.py
> index 4d0c231..50055a3 100644
> --- a/src/kimchi/model/storagevolumes.py
> +++ b/src/kimchi/model/storagevolumes.py
> @@ -168,24 +168,24 @@ class StorageVolumesModel(object):
> pool = pool_model.lookup(pool_name)
> file_path = os.path.join(pool['path'], name)
>
> - with contextlib.closing(urllib2.urlopen(url)) as response,\
> - open(file_path, 'w') as volume_file:
> - remote_size = response.info().getheader('Content-Length', '-')
> - downloaded_size = 0
> + with contextlib.closing(urllib2.urlopen(url)) as response:
> + with open(file_path, 'w') as volume_file:
> + remote_size = response.info().getheader('Content-Length', '-')
> + downloaded_size = 0
>
> - try:
> - while True:
> - chunk_data = response.read(READ_CHUNK_SIZE)
> - if not chunk_data:
> - break
> -
> - volume_file.write(chunk_data)
> - downloaded_size += len(chunk_data)
> - cb('%s/%s' % (downloaded_size, remote_size))
> - except Exception, e:
> - raise OperationFailed('KCHVOL0007E', {'name': name,
> - 'pool': pool_name,
> - 'err': e.message})
> + try:
> + while True:
> + chunk_data = response.read(READ_CHUNK_SIZE)
> + if not chunk_data:
> + break
> +
> + volume_file.write(chunk_data)
> + downloaded_size += len(chunk_data)
> + cb('%s/%s' % (downloaded_size, remote_size))
> + except Exception, e:
> + raise OperationFailed('KCHVOL0007E', {'name': name,
> + 'pool': pool_name,
> + 'err': e.message})
>
> StoragePoolModel.get_storagepool(pool_name, self.conn).refresh()
> cb('OK', True)
More information about the Kimchi-devel
mailing list