You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by bf...@apache.org on 2013/11/08 19:08:31 UTC
[15/76] [abbrv] CLOUSTACK-5099: Utils.py-has-wrong-reference,
cleaned it. As well added Uniform naming convention Signed-off-by:
SrikanteswaraRao Talluri
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listNics.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listNics.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listNics.py
new file mode 100644
index 0000000..d2a663a
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listNics.py
@@ -0,0 +1,72 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""list the vm nics IP to NIC"""
+from baseCmd import *
+from baseResponse import *
+class listNicsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """the ID of the vm"""
+ """Required"""
+ self.virtualmachineid = None
+ """List by keyword"""
+ self.keyword = None
+ """the ID of the nic to to list IPs"""
+ self.nicid = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ self.required = ["virtualmachineid",]
+
+class listNicsResponse (baseResponse):
+ def __init__(self):
+ """the ID of the nic"""
+ self.id = None
+ """the broadcast uri of the nic"""
+ self.broadcasturi = None
+ """the gateway of the nic"""
+ self.gateway = None
+ """the IPv6 address of network"""
+ self.ip6address = None
+ """the cidr of IPv6 network"""
+ self.ip6cidr = None
+ """the gateway of IPv6 network"""
+ self.ip6gateway = None
+ """the ip address of the nic"""
+ self.ipaddress = None
+ """true if nic is default, false otherwise"""
+ self.isdefault = None
+ """the isolation uri of the nic"""
+ self.isolationuri = None
+ """true if nic is default, false otherwise"""
+ self.macaddress = None
+ """the netmask of the nic"""
+ self.netmask = None
+ """the ID of the corresponding network"""
+ self.networkid = None
+ """the name of the corresponding network"""
+ self.networkname = None
+ """the Secondary ipv4 addr of nic"""
+ self.secondaryip = None
+ """the traffic type of the nic"""
+ self.traffictype = None
+ """the type of the nic"""
+ self.type = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listOsCategories.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listOsCategories.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listOsCategories.py
new file mode 100644
index 0000000..6289315
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listOsCategories.py
@@ -0,0 +1,43 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all supported OS categories for this cloud."""
+from baseCmd import *
+from baseResponse import *
+class listOsCategoriesCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list Os category by id"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """list os category by name"""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ self.required = []
+
+class listOsCategoriesResponse (baseResponse):
+ def __init__(self):
+ """the ID of the OS category"""
+ self.id = None
+ """the name of the OS category"""
+ self.name = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listOsTypes.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listOsTypes.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listOsTypes.py
new file mode 100644
index 0000000..426a32d
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listOsTypes.py
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all supported OS types for this cloud."""
+from baseCmd import *
+from baseResponse import *
+class listOsTypesCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list os by description"""
+ self.description = None
+ """list by Os type Id"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """list by Os Category id"""
+ self.oscategoryid = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ self.required = []
+
+class listOsTypesResponse (baseResponse):
+ def __init__(self):
+ """the ID of the OS type"""
+ self.id = None
+ """the name/description of the OS type"""
+ self.description = None
+ """the ID of the OS category"""
+ self.oscategoryid = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listPhysicalNetworks.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listPhysicalNetworks.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listPhysicalNetworks.py
new file mode 100644
index 0000000..4cc7164
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listPhysicalNetworks.py
@@ -0,0 +1,61 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists physical networks"""
+from baseCmd import *
+from baseResponse import *
+class listPhysicalNetworksCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list physical network by id"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """search by name"""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """the Zone ID for the physical network"""
+ self.zoneid = None
+ self.required = []
+
+class listPhysicalNetworksResponse (baseResponse):
+ def __init__(self):
+ """the uuid of the physical network"""
+ self.id = None
+ """Broadcast domain range of the physical network"""
+ self.broadcastdomainrange = None
+ """the domain id of the physical network owner"""
+ self.domainid = None
+ """isolation methods"""
+ self.isolationmethods = None
+ """name of the physical network"""
+ self.name = None
+ """the speed of the physical network"""
+ self.networkspeed = None
+ """state of the physical network"""
+ self.state = None
+ """comma separated tag"""
+ self.tags = None
+ """the vlan of the physical network"""
+ self.vlan = None
+ """zone id of the physical network"""
+ self.zoneid = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listPods.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listPods.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listPods.py
new file mode 100644
index 0000000..64868d9
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listPods.py
@@ -0,0 +1,88 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all Pods."""
+from baseCmd import *
+from baseResponse import *
+class listPodsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list pods by allocation state"""
+ self.allocationstate = None
+ """list Pods by ID"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """list Pods by name"""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """flag to display the capacity of the pods"""
+ self.showcapacities = None
+ """list Pods by Zone ID"""
+ self.zoneid = None
+ self.required = []
+
+class listPodsResponse (baseResponse):
+ def __init__(self):
+ """the ID of the Pod"""
+ self.id = None
+ """the allocation state of the Pod"""
+ self.allocationstate = None
+ """the ending IP for the Pod"""
+ self.endip = None
+ """the gateway of the Pod"""
+ self.gateway = None
+ """the name of the Pod"""
+ self.name = None
+ """the netmask of the Pod"""
+ self.netmask = None
+ """the starting IP for the Pod"""
+ self.startip = None
+ """the Zone ID of the Pod"""
+ self.zoneid = None
+ """the Zone name of the Pod"""
+ self.zonename = None
+ """the capacity of the Pod"""
+ self.capacity = []
+
+class capacity:
+ def __init__(self):
+ """"the total capacity available"""
+ self.capacitytotal = None
+ """"the capacity currently in use"""
+ self.capacityused = None
+ """"the Cluster ID"""
+ self.clusterid = None
+ """"the Cluster name"""
+ self.clustername = None
+ """"the percentage of capacity currently in use"""
+ self.percentused = None
+ """"the Pod ID"""
+ self.podid = None
+ """"the Pod name"""
+ self.podname = None
+ """"the capacity type"""
+ self.type = None
+ """"the Zone ID"""
+ self.zoneid = None
+ """"the Zone name"""
+ self.zonename = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listPortForwardingRules.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listPortForwardingRules.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listPortForwardingRules.py
new file mode 100644
index 0000000..02e9666
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listPortForwardingRules.py
@@ -0,0 +1,104 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all port forwarding rules for an IP address."""
+from baseCmd import *
+from baseResponse import *
+class listPortForwardingRulesCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """Lists rule with the specified ID."""
+ self.id = None
+ """the id of IP address of the port forwarding services"""
+ self.ipaddressid = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list objects by project"""
+ self.projectid = None
+ """List resources by tags (key/value pairs)"""
+ self.tags = []
+ self.required = []
+
+class listPortForwardingRulesResponse (baseResponse):
+ def __init__(self):
+ """the ID of the port forwarding rule"""
+ self.id = None
+ """the cidr list to forward traffic from"""
+ self.cidrlist = None
+ """the public ip address for the port forwarding rule"""
+ self.ipaddress = None
+ """the public ip address id for the port forwarding rule"""
+ self.ipaddressid = None
+ """the ending port of port forwarding rule's private port range"""
+ self.privateendport = None
+ """the starting port of port forwarding rule's private port range"""
+ self.privateport = None
+ """the protocol of the port forwarding rule"""
+ self.protocol = None
+ """the ending port of port forwarding rule's private port range"""
+ self.publicendport = None
+ """the starting port of port forwarding rule's public port range"""
+ self.publicport = None
+ """the state of the rule"""
+ self.state = None
+ """the VM display name for the port forwarding rule"""
+ self.virtualmachinedisplayname = None
+ """the VM ID for the port forwarding rule"""
+ self.virtualmachineid = None
+ """the VM name for the port forwarding rule"""
+ self.virtualmachinename = None
+ """the vm ip address for the port forwarding rule"""
+ self.vmguestip = None
+ """the list of resource tags associated with the rule"""
+ self.tags = []
+
+class tags:
+ def __init__(self):
+ """"the account associated with the tag"""
+ self.account = None
+ """"customer associated with the tag"""
+ self.customer = None
+ """"the domain associated with the tag"""
+ self.domain = None
+ """"the ID of the domain associated with the tag"""
+ self.domainid = None
+ """"tag key name"""
+ self.key = None
+ """"the project name where tag belongs to"""
+ self.project = None
+ """"the project id the tag belongs to"""
+ self.projectid = None
+ """"id of the resource"""
+ self.resourceid = None
+ """"resource type"""
+ self.resourcetype = None
+ """"tag value"""
+ self.value = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listPortableIpRanges.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listPortableIpRanges.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listPortableIpRanges.py
new file mode 100644
index 0000000..8f1c4d9
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listPortableIpRanges.py
@@ -0,0 +1,78 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""list portable IP ranges"""
+from baseCmd import *
+from baseResponse import *
+class listPortableIpRangesCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """Id of the portable ip range"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """Id of a Region"""
+ self.regionid = None
+ self.required = []
+
+class listPortableIpRangesResponse (baseResponse):
+ def __init__(self):
+ """portable IP range ID"""
+ self.id = None
+ """the end ip of the portable IP range"""
+ self.endip = None
+ """the gateway of the VLAN IP range"""
+ self.gateway = None
+ """the netmask of the VLAN IP range"""
+ self.netmask = None
+ """Region Id in which portable ip range is provisioned"""
+ self.regionid = None
+ """the start ip of the portable IP range"""
+ self.startip = None
+ """the ID or VID of the VLAN."""
+ self.vlan = None
+ """List of portable IP and association with zone/network/vpc details that are part of GSLB rule"""
+ self.portableipaddress = []
+
+class portableipaddress:
+ def __init__(self):
+ """"the account ID the portable IP address is associated with"""
+ self.accountid = None
+ """"date the portal IP address was acquired"""
+ self.allocated = None
+ """"the domain ID the portable IP address is associated with"""
+ self.domainid = None
+ """"public IP address"""
+ self.ipaddress = None
+ """"the ID of the Network where ip belongs to"""
+ self.networkid = None
+ """"the physical network this belongs to"""
+ self.physicalnetworkid = None
+ """"Region Id in which global load balancer is created"""
+ self.regionid = None
+ """"State of the ip address. Can be: Allocatin, Allocated and Releasing"""
+ self.state = None
+ """"VPC the ip belongs to"""
+ self.vpcid = None
+ """"the ID of the zone the public IP address belongs to"""
+ self.zoneid = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listPrivateGateways.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listPrivateGateways.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listPrivateGateways.py
new file mode 100644
index 0000000..86695f2
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listPrivateGateways.py
@@ -0,0 +1,89 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""List private gateways"""
+from baseCmd import *
+from baseResponse import *
+class listPrivateGatewaysCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """list private gateway by id"""
+ self.id = None
+ """list gateways by ip address"""
+ self.ipaddress = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list objects by project"""
+ self.projectid = None
+ """list gateways by state"""
+ self.state = None
+ """list gateways by vlan"""
+ self.vlan = None
+ """list gateways by vpc"""
+ self.vpcid = None
+ self.required = []
+
+class listPrivateGatewaysResponse (baseResponse):
+ def __init__(self):
+ """the id of the private gateway"""
+ self.id = None
+ """the account associated with the private gateway"""
+ self.account = None
+ """ACL Id set for private gateway"""
+ self.aclid = None
+ """the domain associated with the private gateway"""
+ self.domain = None
+ """the ID of the domain associated with the private gateway"""
+ self.domainid = None
+ """the gateway"""
+ self.gateway = None
+ """the private gateway's ip address"""
+ self.ipaddress = None
+ """the private gateway's netmask"""
+ self.netmask = None
+ """the physical network id"""
+ self.physicalnetworkid = None
+ """the project name of the private gateway"""
+ self.project = None
+ """the project id of the private gateway"""
+ self.projectid = None
+ """Souce Nat enable status"""
+ self.sourcenatsupported = None
+ """State of the gateway, can be Creating, Ready, Deleting"""
+ self.state = None
+ """the network implementation uri for the private gateway"""
+ self.vlan = None
+ """VPC the private gateaway belongs to"""
+ self.vpcid = None
+ """zone id of the private gateway"""
+ self.zoneid = None
+ """the name of the zone the private gateway belongs to"""
+ self.zonename = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listProjectAccounts.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listProjectAccounts.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listProjectAccounts.py
new file mode 100644
index 0000000..2b085c3
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listProjectAccounts.py
@@ -0,0 +1,151 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists project's accounts"""
+from baseCmd import *
+from baseResponse import *
+class listProjectAccountsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """id of the project"""
+ """Required"""
+ self.projectid = None
+ """list accounts of the project by account name"""
+ self.account = None
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list accounts of the project by role"""
+ self.role = None
+ self.required = ["projectid",]
+
+class listProjectAccountsResponse (baseResponse):
+ def __init__(self):
+ """the id of the project"""
+ self.id = None
+ """the account name of the project's owner"""
+ self.account = None
+ """the total number of cpu cores available to be created for this project"""
+ self.cpuavailable = None
+ """the total number of cpu cores the project can own"""
+ self.cpulimit = None
+ """the total number of cpu cores owned by project"""
+ self.cputotal = None
+ """the displaytext of the project"""
+ self.displaytext = None
+ """the domain name where the project belongs to"""
+ self.domain = None
+ """the domain id the project belongs to"""
+ self.domainid = None
+ """the total number of public ip addresses available for this project to acquire"""
+ self.ipavailable = None
+ """the total number of public ip addresses this project can acquire"""
+ self.iplimit = None
+ """the total number of public ip addresses allocated for this project"""
+ self.iptotal = None
+ """the total memory (in MB) available to be created for this project"""
+ self.memoryavailable = None
+ """the total memory (in MB) the project can own"""
+ self.memorylimit = None
+ """the total memory (in MB) owned by project"""
+ self.memorytotal = None
+ """the name of the project"""
+ self.name = None
+ """the total number of networks available to be created for this project"""
+ self.networkavailable = None
+ """the total number of networks the project can own"""
+ self.networklimit = None
+ """the total number of networks owned by project"""
+ self.networktotal = None
+ """the total primary storage space (in GiB) available to be used for this project"""
+ self.primarystorageavailable = None
+ """the total primary storage space (in GiB) the project can own"""
+ self.primarystoragelimit = None
+ """the total primary storage space (in GiB) owned by project"""
+ self.primarystoragetotal = None
+ """the total secondary storage space (in GiB) available to be used for this project"""
+ self.secondarystorageavailable = None
+ """the total secondary storage space (in GiB) the project can own"""
+ self.secondarystoragelimit = None
+ """the total secondary storage space (in GiB) owned by project"""
+ self.secondarystoragetotal = None
+ """the total number of snapshots available for this project"""
+ self.snapshotavailable = None
+ """the total number of snapshots which can be stored by this project"""
+ self.snapshotlimit = None
+ """the total number of snapshots stored by this project"""
+ self.snapshottotal = None
+ """the state of the project"""
+ self.state = None
+ """the total number of templates available to be created by this project"""
+ self.templateavailable = None
+ """the total number of templates which can be created by this project"""
+ self.templatelimit = None
+ """the total number of templates which have been created by this project"""
+ self.templatetotal = None
+ """the total number of virtual machines available for this project to acquire"""
+ self.vmavailable = None
+ """the total number of virtual machines that can be deployed by this project"""
+ self.vmlimit = None
+ """the total number of virtual machines running for this project"""
+ self.vmrunning = None
+ """the total number of virtual machines stopped for this project"""
+ self.vmstopped = None
+ """the total number of virtual machines deployed by this project"""
+ self.vmtotal = None
+ """the total volume available for this project"""
+ self.volumeavailable = None
+ """the total volume which can be used by this project"""
+ self.volumelimit = None
+ """the total volume being used by this project"""
+ self.volumetotal = None
+ """the total number of vpcs available to be created for this project"""
+ self.vpcavailable = None
+ """the total number of vpcs the project can own"""
+ self.vpclimit = None
+ """the total number of vpcs owned by project"""
+ self.vpctotal = None
+ """the list of resource tags associated with vm"""
+ self.tags = []
+
+class tags:
+ def __init__(self):
+ """"the account associated with the tag"""
+ self.account = None
+ """"customer associated with the tag"""
+ self.customer = None
+ """"the domain associated with the tag"""
+ self.domain = None
+ """"the ID of the domain associated with the tag"""
+ self.domainid = None
+ """"tag key name"""
+ self.key = None
+ """"the project name where tag belongs to"""
+ self.project = None
+ """"the project id the tag belongs to"""
+ self.projectid = None
+ """"id of the resource"""
+ self.resourceid = None
+ """"resource type"""
+ self.resourcetype = None
+ """"tag value"""
+ self.value = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listProjectInvitations.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listProjectInvitations.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listProjectInvitations.py
new file mode 100644
index 0000000..a5ef32b
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listProjectInvitations.py
@@ -0,0 +1,67 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists projects and provides detailed information for listed projects"""
+from baseCmd import *
+from baseResponse import *
+class listProjectInvitationsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """if true, list only active invitations - having Pending state and ones that are not timed out yet"""
+ self.activeonly = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """list invitations by id"""
+ self.id = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list by project id"""
+ self.projectid = None
+ """list invitations by state"""
+ self.state = None
+ self.required = []
+
+class listProjectInvitationsResponse (baseResponse):
+ def __init__(self):
+ """the id of the invitation"""
+ self.id = None
+ """the account name of the project's owner"""
+ self.account = None
+ """the domain name where the project belongs to"""
+ self.domain = None
+ """the domain id the project belongs to"""
+ self.domainid = None
+ """the email the invitation was sent to"""
+ self.email = None
+ """the name of the project"""
+ self.project = None
+ """the id of the project"""
+ self.projectid = None
+ """the invitation state"""
+ self.state = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listProjects.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listProjects.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listProjects.py
new file mode 100644
index 0000000..a60d355
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listProjects.py
@@ -0,0 +1,162 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists projects and provides detailed information for listed projects"""
+from baseCmd import *
+from baseResponse import *
+class listProjectsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """list projects by display text"""
+ self.displaytext = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """list projects by project ID"""
+ self.id = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """list projects by name"""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list projects by state"""
+ self.state = None
+ """List projects by tags (key/value pairs)"""
+ self.tags = []
+ self.required = []
+
+class listProjectsResponse (baseResponse):
+ def __init__(self):
+ """the id of the project"""
+ self.id = None
+ """the account name of the project's owner"""
+ self.account = None
+ """the total number of cpu cores available to be created for this project"""
+ self.cpuavailable = None
+ """the total number of cpu cores the project can own"""
+ self.cpulimit = None
+ """the total number of cpu cores owned by project"""
+ self.cputotal = None
+ """the displaytext of the project"""
+ self.displaytext = None
+ """the domain name where the project belongs to"""
+ self.domain = None
+ """the domain id the project belongs to"""
+ self.domainid = None
+ """the total number of public ip addresses available for this project to acquire"""
+ self.ipavailable = None
+ """the total number of public ip addresses this project can acquire"""
+ self.iplimit = None
+ """the total number of public ip addresses allocated for this project"""
+ self.iptotal = None
+ """the total memory (in MB) available to be created for this project"""
+ self.memoryavailable = None
+ """the total memory (in MB) the project can own"""
+ self.memorylimit = None
+ """the total memory (in MB) owned by project"""
+ self.memorytotal = None
+ """the name of the project"""
+ self.name = None
+ """the total number of networks available to be created for this project"""
+ self.networkavailable = None
+ """the total number of networks the project can own"""
+ self.networklimit = None
+ """the total number of networks owned by project"""
+ self.networktotal = None
+ """the total primary storage space (in GiB) available to be used for this project"""
+ self.primarystorageavailable = None
+ """the total primary storage space (in GiB) the project can own"""
+ self.primarystoragelimit = None
+ """the total primary storage space (in GiB) owned by project"""
+ self.primarystoragetotal = None
+ """the total secondary storage space (in GiB) available to be used for this project"""
+ self.secondarystorageavailable = None
+ """the total secondary storage space (in GiB) the project can own"""
+ self.secondarystoragelimit = None
+ """the total secondary storage space (in GiB) owned by project"""
+ self.secondarystoragetotal = None
+ """the total number of snapshots available for this project"""
+ self.snapshotavailable = None
+ """the total number of snapshots which can be stored by this project"""
+ self.snapshotlimit = None
+ """the total number of snapshots stored by this project"""
+ self.snapshottotal = None
+ """the state of the project"""
+ self.state = None
+ """the total number of templates available to be created by this project"""
+ self.templateavailable = None
+ """the total number of templates which can be created by this project"""
+ self.templatelimit = None
+ """the total number of templates which have been created by this project"""
+ self.templatetotal = None
+ """the total number of virtual machines available for this project to acquire"""
+ self.vmavailable = None
+ """the total number of virtual machines that can be deployed by this project"""
+ self.vmlimit = None
+ """the total number of virtual machines running for this project"""
+ self.vmrunning = None
+ """the total number of virtual machines stopped for this project"""
+ self.vmstopped = None
+ """the total number of virtual machines deployed by this project"""
+ self.vmtotal = None
+ """the total volume available for this project"""
+ self.volumeavailable = None
+ """the total volume which can be used by this project"""
+ self.volumelimit = None
+ """the total volume being used by this project"""
+ self.volumetotal = None
+ """the total number of vpcs available to be created for this project"""
+ self.vpcavailable = None
+ """the total number of vpcs the project can own"""
+ self.vpclimit = None
+ """the total number of vpcs owned by project"""
+ self.vpctotal = None
+ """the list of resource tags associated with vm"""
+ self.tags = []
+
+class tags:
+ def __init__(self):
+ """"the account associated with the tag"""
+ self.account = None
+ """"customer associated with the tag"""
+ self.customer = None
+ """"the domain associated with the tag"""
+ self.domain = None
+ """"the ID of the domain associated with the tag"""
+ self.domainid = None
+ """"tag key name"""
+ self.key = None
+ """"the project name where tag belongs to"""
+ self.project = None
+ """"the project id the tag belongs to"""
+ self.projectid = None
+ """"id of the resource"""
+ self.resourceid = None
+ """"resource type"""
+ self.resourcetype = None
+ """"tag value"""
+ self.value = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listPublicIpAddresses.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listPublicIpAddresses.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listPublicIpAddresses.py
new file mode 100644
index 0000000..79913f8
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listPublicIpAddresses.py
@@ -0,0 +1,156 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists all public ip addresses"""
+from baseCmd import *
+from baseResponse import *
+class listPublicIpAddressesCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """limits search results to allocated public IP addresses"""
+ self.allocatedonly = None
+ """lists all public IP addresses associated to the network specified"""
+ self.associatednetworkid = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """list only ips used for load balancing"""
+ self.forloadbalancing = None
+ """the virtual network for the IP address"""
+ self.forvirtualnetwork = None
+ """lists ip address by id"""
+ self.id = None
+ """lists the specified IP address"""
+ self.ipaddress = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """list only source nat ip addresses"""
+ self.issourcenat = None
+ """list only static nat ip addresses"""
+ self.isstaticnat = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """lists all public IP addresses by physical network id"""
+ self.physicalnetworkid = None
+ """list objects by project"""
+ self.projectid = None
+ """List resources by tags (key/value pairs)"""
+ self.tags = []
+ """lists all public IP addresses by VLAN ID"""
+ self.vlanid = None
+ """List ips belonging to the VPC"""
+ self.vpcid = None
+ """lists all public IP addresses by Zone ID"""
+ self.zoneid = None
+ self.required = []
+
+class listPublicIpAddressesResponse (baseResponse):
+ def __init__(self):
+ """public IP address id"""
+ self.id = None
+ """the account the public IP address is associated with"""
+ self.account = None
+ """date the public IP address was acquired"""
+ self.allocated = None
+ """the ID of the Network associated with the IP address"""
+ self.associatednetworkid = None
+ """the name of the Network associated with the IP address"""
+ self.associatednetworkname = None
+ """the domain the public IP address is associated with"""
+ self.domain = None
+ """the domain ID the public IP address is associated with"""
+ self.domainid = None
+ """the virtual network for the IP address"""
+ self.forvirtualnetwork = None
+ """public IP address"""
+ self.ipaddress = None
+ """is public IP portable across the zones"""
+ self.isportable = None
+ """true if the IP address is a source nat address, false otherwise"""
+ self.issourcenat = None
+ """true if this ip is for static nat, false otherwise"""
+ self.isstaticnat = None
+ """true if this ip is system ip (was allocated as a part of deployVm or createLbRule)"""
+ self.issystem = None
+ """the ID of the Network where ip belongs to"""
+ self.networkid = None
+ """the physical network this belongs to"""
+ self.physicalnetworkid = None
+ """the project name of the address"""
+ self.project = None
+ """the project id of the ipaddress"""
+ self.projectid = None
+ """purpose of the IP address. In Acton this value is not null for Ips with isSystem=true, and can have either StaticNat or LB value"""
+ self.purpose = None
+ """State of the ip address. Can be: Allocatin, Allocated and Releasing"""
+ self.state = None
+ """virutal machine display name the ip address is assigned to (not null only for static nat Ip)"""
+ self.virtualmachinedisplayname = None
+ """virutal machine id the ip address is assigned to (not null only for static nat Ip)"""
+ self.virtualmachineid = None
+ """virutal machine name the ip address is assigned to (not null only for static nat Ip)"""
+ self.virtualmachinename = None
+ """the ID of the VLAN associated with the IP address. This parameter is visible to ROOT admins only"""
+ self.vlanid = None
+ """the VLAN associated with the IP address"""
+ self.vlanname = None
+ """virutal machine (dnat) ip address (not null only for static nat Ip)"""
+ self.vmipaddress = None
+ """VPC the ip belongs to"""
+ self.vpcid = None
+ """the ID of the zone the public IP address belongs to"""
+ self.zoneid = None
+ """the name of the zone the public IP address belongs to"""
+ self.zonename = None
+ """the list of resource tags associated with ip address"""
+ self.tags = []
+ """the ID of the latest async job acting on this object"""
+ self.jobid = None
+ """the current status of the latest async job acting on this object"""
+ self.jobstatus = None
+
+class tags:
+ def __init__(self):
+ """"the account associated with the tag"""
+ self.account = None
+ """"customer associated with the tag"""
+ self.customer = None
+ """"the domain associated with the tag"""
+ self.domain = None
+ """"the ID of the domain associated with the tag"""
+ self.domainid = None
+ """"tag key name"""
+ self.key = None
+ """"the project name where tag belongs to"""
+ self.project = None
+ """"the project id the tag belongs to"""
+ self.projectid = None
+ """"id of the resource"""
+ self.resourceid = None
+ """"resource type"""
+ self.resourcetype = None
+ """"tag value"""
+ self.value = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listRegions.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listRegions.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listRegions.py
new file mode 100644
index 0000000..8549945
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listRegions.py
@@ -0,0 +1,49 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists Regions"""
+from baseCmd import *
+from baseResponse import *
+class listRegionsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """List Region by region ID."""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """List Region by region name."""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ self.required = []
+
+class listRegionsResponse (baseResponse):
+ def __init__(self):
+ """the ID of the region"""
+ self.id = None
+ """the end point of the region"""
+ self.endpoint = None
+ """true if GSLB service is enabled in the region, false otherwise"""
+ self.gslbserviceenabled = None
+ """the name of the region"""
+ self.name = None
+ """true if security groups support is enabled, false otherwise"""
+ self.portableipserviceenabled = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listRemoteAccessVpns.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listRemoteAccessVpns.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listRemoteAccessVpns.py
new file mode 100644
index 0000000..dfedf4a
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listRemoteAccessVpns.py
@@ -0,0 +1,70 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists remote access vpns"""
+from baseCmd import *
+from baseResponse import *
+class listRemoteAccessVpnsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """public ip address id of the vpn server"""
+ """Required"""
+ self.publicipid = None
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list objects by project"""
+ self.projectid = None
+ self.required = ["publicipid",]
+
+class listRemoteAccessVpnsResponse (baseResponse):
+ def __init__(self):
+ """the id of the remote access vpn"""
+ self.id = None
+ """the account of the remote access vpn"""
+ self.account = None
+ """the domain name of the account of the remote access vpn"""
+ self.domain = None
+ """the domain id of the account of the remote access vpn"""
+ self.domainid = None
+ """the range of ips to allocate to the clients"""
+ self.iprange = None
+ """the ipsec preshared key"""
+ self.presharedkey = None
+ """the project name of the vpn"""
+ self.project = None
+ """the project id of the vpn"""
+ self.projectid = None
+ """the public ip address of the vpn server"""
+ self.publicip = None
+ """the public ip address of the vpn server"""
+ self.publicipid = None
+ """the state of the rule"""
+ self.state = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listResourceDetails.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listResourceDetails.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listResourceDetails.py
new file mode 100644
index 0000000..133e489
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listResourceDetails.py
@@ -0,0 +1,71 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""List resource detail(s)"""
+from baseCmd import *
+from baseResponse import *
+class listResourceDetailsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """list by key"""
+ self.key = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list objects by project"""
+ self.projectid = None
+ """list by resource id"""
+ self.resourceid = None
+ """list by resource type"""
+ self.resourcetype = None
+ self.required = []
+
+class listResourceDetailsResponse (baseResponse):
+ def __init__(self):
+ """the account associated with the tag"""
+ self.account = None
+ """customer associated with the tag"""
+ self.customer = None
+ """the domain associated with the tag"""
+ self.domain = None
+ """the ID of the domain associated with the tag"""
+ self.domainid = None
+ """tag key name"""
+ self.key = None
+ """the project name where tag belongs to"""
+ self.project = None
+ """the project id the tag belongs to"""
+ self.projectid = None
+ """id of the resource"""
+ self.resourceid = None
+ """resource type"""
+ self.resourcetype = None
+ """tag value"""
+ self.value = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listResourceLimits.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listResourceLimits.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listResourceLimits.py
new file mode 100644
index 0000000..d608f34
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listResourceLimits.py
@@ -0,0 +1,63 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists resource limits."""
+from baseCmd import *
+from baseResponse import *
+class listResourceLimitsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """Lists resource limits by ID."""
+ self.id = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list objects by project"""
+ self.projectid = None
+ """Type of resource to update. Values are 0, 1, 2, 3, and 4.0 - Instance. Number of instances a user can create. 1 - IP. Number of public IP addresses an account can own. 2 - Volume. Number of disk volumes an account can own.3 - Snapshot. Number of snapshots an account can own.4 - Template. Number of templates an account can register/create.5 - Project. Number of projects an account can own.6 - Network. Number of networks an account can own.7 - VPC. Number of VPC an account can own.8 - CPU. Number of CPU an account can allocate for his resources.9 - Memory. Amount of RAM an account can allocate for his resources.10 - Primary Storage. Amount of Primary storage an account can allocate for his resoruces.11 - Secondary Storage. Amount of Secondary storage an account can allocate for his resources."""
+ self.resourcetype = None
+ self.required = []
+
+class listResourceLimitsResponse (baseResponse):
+ def __init__(self):
+ """the account of the resource limit"""
+ self.account = None
+ """the domain name of the resource limit"""
+ self.domain = None
+ """the domain ID of the resource limit"""
+ self.domainid = None
+ """the maximum number of the resource. A -1 means the resource currently has no limit."""
+ self.max = None
+ """the project name of the resource limit"""
+ self.project = None
+ """the project id of the resource limit"""
+ self.projectid = None
+ """resource type. Values include 0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11. See the resourceType parameter for more information on these values."""
+ self.resourcetype = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listRouters.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listRouters.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listRouters.py
new file mode 100644
index 0000000..a640aae
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listRouters.py
@@ -0,0 +1,182 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""List routers."""
+from baseCmd import *
+from baseResponse import *
+class listRoutersCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """if true is passed for this parameter, list only VPC routers"""
+ self.forvpc = None
+ """the host ID of the router"""
+ self.hostid = None
+ """the ID of the disk router"""
+ self.id = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """the name of the router"""
+ self.name = None
+ """list by network id"""
+ self.networkid = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """the Pod ID of the router"""
+ self.podid = None
+ """list objects by project"""
+ self.projectid = None
+ """the state of the router"""
+ self.state = None
+ """List networks by VPC"""
+ self.vpcid = None
+ """the Zone ID of the router"""
+ self.zoneid = None
+ self.required = []
+
+class listRoutersResponse (baseResponse):
+ def __init__(self):
+ """the id of the router"""
+ self.id = None
+ """the account associated with the router"""
+ self.account = None
+ """the date and time the router was created"""
+ self.created = None
+ """the first DNS for the router"""
+ self.dns1 = None
+ """the second DNS for the router"""
+ self.dns2 = None
+ """the domain associated with the router"""
+ self.domain = None
+ """the domain ID associated with the router"""
+ self.domainid = None
+ """the gateway for the router"""
+ self.gateway = None
+ """the guest IP address for the router"""
+ self.guestipaddress = None
+ """the guest MAC address for the router"""
+ self.guestmacaddress = None
+ """the guest netmask for the router"""
+ self.guestnetmask = None
+ """the ID of the corresponding guest network"""
+ self.guestnetworkid = None
+ """the host ID for the router"""
+ self.hostid = None
+ """the hostname for the router"""
+ self.hostname = None
+ """the first IPv6 DNS for the router"""
+ self.ip6dns1 = None
+ """the second IPv6 DNS for the router"""
+ self.ip6dns2 = None
+ """if this router is an redundant virtual router"""
+ self.isredundantrouter = None
+ """the link local IP address for the router"""
+ self.linklocalip = None
+ """the link local MAC address for the router"""
+ self.linklocalmacaddress = None
+ """the link local netmask for the router"""
+ self.linklocalnetmask = None
+ """the ID of the corresponding link local network"""
+ self.linklocalnetworkid = None
+ """the name of the router"""
+ self.name = None
+ """the network domain for the router"""
+ self.networkdomain = None
+ """the Pod ID for the router"""
+ self.podid = None
+ """the project name of the address"""
+ self.project = None
+ """the project id of the ipaddress"""
+ self.projectid = None
+ """the public IP address for the router"""
+ self.publicip = None
+ """the public MAC address for the router"""
+ self.publicmacaddress = None
+ """the public netmask for the router"""
+ self.publicnetmask = None
+ """the ID of the corresponding public network"""
+ self.publicnetworkid = None
+ """the state of redundant virtual router"""
+ self.redundantstate = None
+ """role of the domain router"""
+ self.role = None
+ """the version of scripts"""
+ self.scriptsversion = None
+ """the ID of the service offering of the virtual machine"""
+ self.serviceofferingid = None
+ """the name of the service offering of the virtual machine"""
+ self.serviceofferingname = None
+ """the state of the router"""
+ self.state = None
+ """the template ID for the router"""
+ self.templateid = None
+ """the version of template"""
+ self.templateversion = None
+ """VPC the router belongs to"""
+ self.vpcid = None
+ """the Zone ID for the router"""
+ self.zoneid = None
+ """the Zone name for the router"""
+ self.zonename = None
+ """the list of nics associated with the router"""
+ self.nic = []
+
+class nic:
+ def __init__(self):
+ """"the ID of the nic"""
+ self.id = None
+ """"the broadcast uri of the nic"""
+ self.broadcasturi = None
+ """"the gateway of the nic"""
+ self.gateway = None
+ """"the IPv6 address of network"""
+ self.ip6address = None
+ """"the cidr of IPv6 network"""
+ self.ip6cidr = None
+ """"the gateway of IPv6 network"""
+ self.ip6gateway = None
+ """"the ip address of the nic"""
+ self.ipaddress = None
+ """"true if nic is default, false otherwise"""
+ self.isdefault = None
+ """"the isolation uri of the nic"""
+ self.isolationuri = None
+ """"true if nic is default, false otherwise"""
+ self.macaddress = None
+ """"the netmask of the nic"""
+ self.netmask = None
+ """"the ID of the corresponding network"""
+ self.networkid = None
+ """"the name of the corresponding network"""
+ self.networkname = None
+ """"the Secondary ipv4 addr of nic"""
+ self.secondaryip = None
+ """"the traffic type of the nic"""
+ self.traffictype = None
+ """"the type of the nic"""
+ self.type = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listS3s.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listS3s.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listS3s.py
new file mode 100644
index 0000000..602411e
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listS3s.py
@@ -0,0 +1,53 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists S3s"""
+from baseCmd import *
+from baseResponse import *
+class listS3sCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ self.required = []
+
+class listS3sResponse (baseResponse):
+ def __init__(self):
+ """the ID of the image store"""
+ self.id = None
+ """the details of the image store"""
+ self.details = None
+ """the name of the image store"""
+ self.name = None
+ """the protocol of the image store"""
+ self.protocol = None
+ """the provider name of the image store"""
+ self.providername = None
+ """the scope of the image store"""
+ self.scope = None
+ """the url of the image store"""
+ self.url = None
+ """the Zone ID of the image store"""
+ self.zoneid = None
+ """the Zone name of the image store"""
+ self.zonename = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listSSHKeyPairs.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listSSHKeyPairs.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listSSHKeyPairs.py
new file mode 100644
index 0000000..8f38bec
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listSSHKeyPairs.py
@@ -0,0 +1,55 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""List registered keypairs"""
+from baseCmd import *
+from baseResponse import *
+class listSSHKeyPairsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """A public key fingerprint to look for"""
+ self.fingerprint = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """A key pair name to look for"""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list objects by project"""
+ self.projectid = None
+ self.required = []
+
+class listSSHKeyPairsResponse (baseResponse):
+ def __init__(self):
+ """Fingerprint of the public key"""
+ self.fingerprint = None
+ """Name of the keypair"""
+ self.name = None
+ """Private key"""
+ self.privatekey = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listSecondaryStagingStores.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listSecondaryStagingStores.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listSecondaryStagingStores.py
new file mode 100644
index 0000000..0fa0696
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listSecondaryStagingStores.py
@@ -0,0 +1,63 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists secondary staging stores."""
+from baseCmd import *
+from baseResponse import *
+class listSecondaryStagingStoresCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """the ID of the staging store"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """the name of the staging store"""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """the staging store protocol"""
+ self.protocol = None
+ """the staging store provider"""
+ self.provider = None
+ """the Zone ID for the staging store"""
+ self.zoneid = None
+ self.required = []
+
+class listSecondaryStagingStoresResponse (baseResponse):
+ def __init__(self):
+ """the ID of the image store"""
+ self.id = None
+ """the details of the image store"""
+ self.details = None
+ """the name of the image store"""
+ self.name = None
+ """the protocol of the image store"""
+ self.protocol = None
+ """the provider name of the image store"""
+ self.providername = None
+ """the scope of the image store"""
+ self.scope = None
+ """the url of the image store"""
+ self.url = None
+ """the Zone ID of the image store"""
+ self.zoneid = None
+ """the Zone name of the image store"""
+ self.zonename = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listSecurityGroups.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listSecurityGroups.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listSecurityGroups.py
new file mode 100644
index 0000000..d3cf2cd
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listSecurityGroups.py
@@ -0,0 +1,144 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+
+"""Lists security groups"""
+from baseCmd import *
+from baseResponse import *
+class listSecurityGroupsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """list the security group by the id provided"""
+ self.id = None
+ """defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves."""
+ self.isrecursive = None
+ """List by keyword"""
+ self.keyword = None
+ """If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false"""
+ self.listall = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list objects by project"""
+ self.projectid = None
+ """lists security groups by name"""
+ self.securitygroupname = None
+ """List resources by tags (key/value pairs)"""
+ self.tags = []
+ """lists security groups by virtual machine id"""
+ self.virtualmachineid = None
+ self.required = []
+
+class listSecurityGroupsResponse (baseResponse):
+ def __init__(self):
+ """the ID of the security group"""
+ self.id = None
+ """the account owning the security group"""
+ self.account = None
+ """the description of the security group"""
+ self.description = None
+ """the domain name of the security group"""
+ self.domain = None
+ """the domain ID of the security group"""
+ self.domainid = None
+ """the name of the security group"""
+ self.name = None
+ """the project name of the group"""
+ self.project = None
+ """the project id of the group"""
+ self.projectid = None
+ """the list of egress rules associated with the security group"""
+ self.egressrule = []
+ """the list of ingress rules associated with the security group"""
+ self.ingressrule = []
+ """the list of resource tags associated with the rule"""
+ self.tags = []
+ """the ID of the latest async job acting on this object"""
+ self.jobid = None
+ """the current status of the latest async job acting on this object"""
+ self.jobstatus = None
+
+class egressrule:
+ def __init__(self):
+ """"account owning the security group rule"""
+ self.account = None
+ """"the CIDR notation for the base IP address of the security group rule"""
+ self.cidr = None
+ """"the ending IP of the security group rule"""
+ self.endport = None
+ """"the code for the ICMP message response"""
+ self.icmpcode = None
+ """"the type of the ICMP message response"""
+ self.icmptype = None
+ """"the protocol of the security group rule"""
+ self.protocol = None
+ """"the id of the security group rule"""
+ self.ruleid = None
+ """"security group name"""
+ self.securitygroupname = None
+ """"the starting IP of the security group rule"""
+ self.startport = None
+
+class ingressrule:
+ def __init__(self):
+ """"account owning the security group rule"""
+ self.account = None
+ """"the CIDR notation for the base IP address of the security group rule"""
+ self.cidr = None
+ """"the ending IP of the security group rule"""
+ self.endport = None
+ """"the code for the ICMP message response"""
+ self.icmpcode = None
+ """"the type of the ICMP message response"""
+ self.icmptype = None
+ """"the protocol of the security group rule"""
+ self.protocol = None
+ """"the id of the security group rule"""
+ self.ruleid = None
+ """"security group name"""
+ self.securitygroupname = None
+ """"the starting IP of the security group rule"""
+ self.startport = None
+
+class tags:
+ def __init__(self):
+ """"the account associated with the tag"""
+ self.account = None
+ """"customer associated with the tag"""
+ self.customer = None
+ """"the domain associated with the tag"""
+ self.domain = None
+ """"the ID of the domain associated with the tag"""
+ self.domainid = None
+ """"tag key name"""
+ self.key = None
+ """"the project name where tag belongs to"""
+ self.project = None
+ """"the project id the tag belongs to"""
+ self.projectid = None
+ """"id of the resource"""
+ self.resourceid = None
+ """"resource type"""
+ self.resourcetype = None
+ """"tag value"""
+ self.value = None
+