Björn Tillenius has proposed merging lp:~bjornt/txaws/allow-expires-bug-633580 into lp:txaws.
Requested reviews: txAWS Developers (txaws-dev) Related bugs: #633580 Can't use Expires parameter https://bugs.launchpad.net/bugs/633580 Allow Expires to be passed as a parameter in EC2 request. If Expires is passed, a Timestamp parameter shouldn't be automatically added. -- https://code.launchpad.net/~bjornt/txaws/allow-expires-bug-633580/+merge/34929 Your team txAWS Developers is requested to review the proposed merge of lp:~bjornt/txaws/allow-expires-bug-633580 into lp:txaws.
=== modified file 'txaws/ec2/client.py' --- txaws/ec2/client.py 2010-07-20 10:15:48 +0000 +++ txaws/ec2/client.py 2010-09-08 22:06:45 +0000 @@ -767,8 +767,11 @@ "SignatureVersion": "2", "Action": self.action, "AWSAccessKeyId": self.creds.access_key, - "Timestamp": iso8601time(time_tuple), } + if other_params is None or "Expires" not in other_params: + # Only add a Timestamp parameter, if Expires isn't used, + # since both can't be used in the same request. + self.params["Timestamp"] = iso8601time(time_tuple) if other_params: self.params.update(other_params) === modified file 'txaws/ec2/tests/test_client.py' --- txaws/ec2/tests/test_client.py 2010-07-20 10:15:48 +0000 +++ txaws/ec2/tests/test_client.py 2010-09-08 22:06:45 +0000 @@ -1471,6 +1471,24 @@ "Timestamp": "2007-11-12T13:14:15Z", "Version": "2008-12-01"}) + def test_no_timestamp_if_expires_in_other_params(self): + """ + If Expires is present in other_params, Timestamp won't be added, + since a request should contain either Expires or Timestamp, but + not both. + """ + query = client.Query( + action="DescribeInstances", creds=self.creds, + endpoint=self.endpoint, + other_params={"Expires": "2007-11-12T13:14:15Z"}) + self.assertEqual( + query.params, + {"AWSAccessKeyId": "foo", + "Action": "DescribeInstances", + "SignatureVersion": "2", + "Expires": "2007-11-12T13:14:15Z", + "Version": "2008-12-01"}) + def test_sorted_params(self): query = client.Query( action="DescribeInstances", creds=self.creds,
_______________________________________________ Mailing list: https://launchpad.net/~txaws-dev Post to : txaws-dev@lists.launchpad.net Unsubscribe : https://launchpad.net/~txaws-dev More help : https://help.launchpad.net/ListHelp