Upgrade to 2.0 (#723088)
parent
73b1fdc38b
commit
2216c62ce6
@ -1 +1 @@
|
||||
boto-1.9b.tar.gz
|
||||
boto-2.0.tar.gz
|
||||
|
@ -1,42 +0,0 @@
|
||||
Don't require Name param on RegisterImage (even though EC2 docs say it is required)
|
||||
and change Image to ImageLocation. Fixes issue 323:
|
||||
|
||||
- http://code.google.com/p/boto/issues/detail?id=323
|
||||
- http://code.google.com/p/boto/source/detail?r=1448
|
||||
|
||||
--- boto-1.9b/boto/ec2/connection.py 2009-12-21 14:59:03.000000000 +0100
|
||||
+++ boto-1.9b/boto/ec2/connection.py.image 2010-02-09 01:36:11.000000000 +0100
|
||||
@@ -176,11 +176,11 @@
|
||||
except IndexError: # None of those images available
|
||||
return None
|
||||
|
||||
- def register_image(self, name, description=None, image_location=None,
|
||||
+ def register_image(self, name=None, description=None, image_location=None,
|
||||
architecture=None, kernel_id=None, ramdisk_id=None,
|
||||
root_device_name=None, block_device_map=None):
|
||||
"""
|
||||
- Register an image.
|
||||
+ Register an image. Valid only for EBS-based images.
|
||||
|
||||
:type name: string
|
||||
:param name: The name of the AMI.
|
||||
@@ -210,7 +210,9 @@
|
||||
:rtype: string
|
||||
:return: The new image id
|
||||
"""
|
||||
- params = {'Name': name}
|
||||
+ params = {}
|
||||
+ if name:
|
||||
+ params['Name'] = name
|
||||
if description:
|
||||
params['Description'] = description
|
||||
if architecture:
|
||||
@@ -220,7 +222,7 @@
|
||||
if ramdisk_id:
|
||||
params['RamdiskId'] = ramdisk_id
|
||||
if image_location:
|
||||
- params['Location'] = image_location
|
||||
+ params['ImageLocation'] = image_location
|
||||
if root_device_name:
|
||||
params['RootDeviceName'] = root_device_name
|
||||
if block_device_map:
|
@ -1,15 +0,0 @@
|
||||
The build_list_parameters function only contains half of the fix applied by upstream
|
||||
commit 79f6a6cc7b2420440091. Specifically, line 78 refers to a function parameter that
|
||||
was renamed. More details at: https://bugzilla.redhat.com/show_bug.cgi?id=647005
|
||||
|
||||
--- boto-1.9b/boto/ec2/blockdevicemapping.py 2009-12-16 17:21:40.000000000 +0100
|
||||
+++ boto-1.9b/boto/ec2/blockdevicemapping.py.prefix 2010-11-18 21:59:07.000000000 +0100
|
||||
@@ -75,7 +75,7 @@
|
||||
def build_list_params(self, params, prefix=''):
|
||||
i = 1
|
||||
for dev_name in self:
|
||||
- pre = '%sBlockDeviceMapping.%d' % (pre, i)
|
||||
+ pre = '%sBlockDeviceMapping.%d' % (prefix, i)
|
||||
params['%s.DeviceName' % pre] = dev_name
|
||||
ebs = self[dev_name]
|
||||
if ebs.snapshot_id:
|
@ -1,121 +0,0 @@
|
||||
Patch by Robert Scheck <robert@fedoraproject.org> for boto >= 1.9b, which replaces
|
||||
ternary operator and with-statement context usages by python 2.4 compatible stuff.
|
||||
It also works around PEP 341 (Unifying try-except and try-finally).
|
||||
|
||||
--- boto-1.9b/boto/manage/server.py 2009-12-13 16:32:54.000000000 +0100
|
||||
+++ boto-1.9b/boto/manage/server.py.python24 2011-01-02 23:36:53.000000000 +0100
|
||||
@@ -22,7 +22,6 @@
|
||||
"""
|
||||
High-level abstraction of an EC2 server
|
||||
"""
|
||||
-from __future__ import with_statement
|
||||
import boto.ec2
|
||||
from boto.mashups.iobject import IObject
|
||||
from boto.pyami.config import BotoConfigPath, Config
|
||||
@@ -328,7 +327,10 @@
|
||||
for instance in instances:
|
||||
s = cls()
|
||||
s.ec2 = ec2
|
||||
- s.name = params.get('name') + '' if i==0 else str(i)
|
||||
+ if i == 0:
|
||||
+ s.name = params.get('name') + ''
|
||||
+ else:
|
||||
+ s.name = str(i)
|
||||
s.description = params.get('description')
|
||||
s.region_name = region.name
|
||||
s.instance_id = instance.id
|
||||
@@ -522,8 +524,11 @@
|
||||
self._cmdshell = None
|
||||
|
||||
def run(self, command):
|
||||
- with closing(self.get_cmdshell()) as cmd:
|
||||
+ try:
|
||||
+ cmd = self.get_cmdshell()
|
||||
status = cmd.run(command)
|
||||
+ finally:
|
||||
+ cmd.close()
|
||||
return status
|
||||
|
||||
def get_bundler(self, uname='root'):
|
||||
--- boto-1.9b/boto/manage/volume.py 2009-11-24 04:47:51.000000000 +0100
|
||||
+++ boto-1.9b/boto/manage/volume.py.python24 2011-01-02 23:55:51.000000000 +0100
|
||||
@@ -19,7 +19,6 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
# IN THE SOFTWARE.
|
||||
|
||||
-from __future__ import with_statement
|
||||
from boto.sdb.db.model import Model
|
||||
from boto.sdb.db.property import *
|
||||
from boto.manage.server import Server
|
||||
@@ -232,28 +231,33 @@
|
||||
def wait(self):
|
||||
if self.server == None:
|
||||
raise ValueError, 'server attribute must be set to run this command'
|
||||
- with closing(self.server.get_cmdshell()) as cmd:
|
||||
+ try:
|
||||
# wait for the volume device to appear
|
||||
cmd = self.server.get_cmdshell()
|
||||
while not cmd.exists(self.device):
|
||||
boto.log.info('%s still does not exist, waiting 10 seconds' % self.device)
|
||||
time.sleep(10)
|
||||
+ finally:
|
||||
+ cmd.close()
|
||||
|
||||
def format(self):
|
||||
if self.server == None:
|
||||
raise ValueError, 'server attribute must be set to run this command'
|
||||
status = None
|
||||
- with closing(self.server.get_cmdshell()) as cmd:
|
||||
+ try:
|
||||
+ cmd = self.server.get_cmdshell()
|
||||
if not self.checkfs(cmd):
|
||||
boto.log.info('make_fs...')
|
||||
status = cmd.run('mkfs -t xfs %s' % self.device)
|
||||
+ finally:
|
||||
+ cmd.close()
|
||||
return status
|
||||
|
||||
def mount(self):
|
||||
if self.server == None:
|
||||
raise ValueError, 'server attribute must be set to run this command'
|
||||
boto.log.info('handle_mount_point')
|
||||
- with closing(self.server.get_cmdshell()) as cmd:
|
||||
+ try:
|
||||
cmd = self.server.get_cmdshell()
|
||||
if not cmd.isdir(self.mount_point):
|
||||
boto.log.info('making directory')
|
||||
@@ -276,6 +280,8 @@
|
||||
# Mount up our new EBS volume onto mount_point
|
||||
cmd.run("mount %s %s" % (self.device, self.mount_point))
|
||||
cmd.run('xfs_growfs %s' % self.mount_point)
|
||||
+ finally:
|
||||
+ cmd.close()
|
||||
|
||||
def make_ready(self, server):
|
||||
self.server = server
|
||||
@@ -298,15 +304,16 @@
|
||||
# if this volume is attached to a server
|
||||
# we need to freeze the XFS file system
|
||||
try:
|
||||
- self.freeze()
|
||||
- if self.server == None:
|
||||
- snapshot = self.get_ec2_connection().create_snapshot(self.volume_id)
|
||||
- else:
|
||||
- snapshot = self.server.ec2.create_snapshot(self.volume_id)
|
||||
- boto.log.info('Snapshot of Volume %s created: %s' % (self.name, snapshot))
|
||||
- except Exception, e:
|
||||
- boto.log.info('Snapshot error')
|
||||
- boto.log.info(traceback.format_exc())
|
||||
+ try:
|
||||
+ self.freeze()
|
||||
+ if self.server == None:
|
||||
+ snapshot = self.get_ec2_connection().create_snapshot(self.volume_id)
|
||||
+ else:
|
||||
+ snapshot = self.server.ec2.create_snapshot(self.volume_id)
|
||||
+ boto.log.info('Snapshot of Volume %s created: %s' % (self.name, snapshot))
|
||||
+ except Exception, e:
|
||||
+ boto.log.info('Snapshot error')
|
||||
+ boto.log.info(traceback.format_exc())
|
||||
finally:
|
||||
status = self.unfreeze()
|
||||
return status
|
@ -1,27 +0,0 @@
|
||||
From 6760075073c34d6dddb7e13b80dfa8d09f0f4f79 Mon Sep 17 00:00:00 2001
|
||||
From: Mitch.Garnaat <Mitch.Garnaat@604d75c7-a419-0410-a38f-bde1a0bd1dbf>
|
||||
Date: Tue, 6 Jul 2010 22:33:07 +0000
|
||||
Subject: [PATCH] Kludge the existing kludge to handle httplib differences. Fixes issue 408.
|
||||
|
||||
---
|
||||
boto/connection.py | 3 ++-
|
||||
1 files changed, 2 insertions(+), 1 deletions(-)
|
||||
|
||||
diff --git a/boto/connection.py b/boto/connection.py
|
||||
index c5779e2..71942f1 100644
|
||||
--- a/boto/connection.py
|
||||
+++ b/boto/connection.py
|
||||
@@ -252,8 +252,9 @@ class AWSAuthConnection(object):
|
||||
# versions, it would append ":443" to the hostname sent
|
||||
# in the Host header and so we needed to make sure we
|
||||
# did the same when calculating the V2 signature. In 2.6
|
||||
+ # (and higher!)
|
||||
# it no longer does that. Hence, this kludge.
|
||||
- if sys.version[:3] == "2.6" and port == 443:
|
||||
+ if sys.version[:3] in ('2.6', '2.7') and port == 443:
|
||||
signature_host = self.host
|
||||
else:
|
||||
signature_host = '%s:%d' % (self.host, port)
|
||||
--
|
||||
1.7.3.1
|
||||
|
Loading…
Reference in new issue