From 28835054e63432f170c8723a4967d1f480a3c4da Mon Sep 17 00:00:00 2001 From: Prasanna Santhanam Date: Tue, 30 Jul 2013 15:01:34 +0530 Subject: [PATCH] CLOUDSTACK-3921: AssociateIpAddress fails When you have a method with named parameters, all calls to it should explicitly pass name=value pairs. Not doing so can result in the wrong params being passed in the method call. This is a result of the "services" dictionary being passed into the isportable flag failing the API signature generation and hence the API call. Signed-off-by: Prasanna Santhanam --- tools/marvin/marvin/integration/lib/base.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/tools/marvin/marvin/integration/lib/base.py b/tools/marvin/marvin/integration/lib/base.py index b552aba068c..48c49ab4b3f 100755 --- a/tools/marvin/marvin/integration/lib/base.py +++ b/tools/marvin/marvin/integration/lib/base.py @@ -275,14 +275,14 @@ class VirtualMachine: @return: """ public_ip = PublicIPAddress.create( - apiclient, - virtual_machine.account, - virtual_machine.zoneid, - virtual_machine.domainid, - services + apiclient=apiclient, + accountid=virtual_machine.account, + zoneid=virtual_machine.zoneid, + domainid=virtual_machine.domainid, + services=services ) FireWallRule.create( - apiclient, + apiclient=apiclient, ipaddressid=public_ip.ipaddress.id, protocol='TCP', cidrlist=['0.0.0.0/0'], @@ -290,9 +290,9 @@ class VirtualMachine: endport=22 ) nat_rule = NATRule.create( - apiclient, - virtual_machine, - services, + apiclient=apiclient, + virtual_machine=virtual_machine, + services=services, ipaddressid=public_ip.ipaddress.id ) virtual_machine.ssh_ip = nat_rule.ipaddress