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:34 UTC
[18/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/findHostsForMigration.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/findHostsForMigration.py b/tools/marvin/build/lib/marvin/cloudstackAPI/findHostsForMigration.py
new file mode 100644
index 0000000..cd6d34c
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/findHostsForMigration.py
@@ -0,0 +1,126 @@
+# 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.
+
+
+"""Find hosts suitable for migrating a virtual machine."""
+from baseCmd import *
+from baseResponse import *
+class findHostsForMigrationCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """find hosts to which this VM can be migrated and flag the hosts with enough CPU/RAM to host the VM"""
+ """Required"""
+ self.virtualmachineid = None
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ self.required = ["virtualmachineid",]
+
+class findHostsForMigrationResponse (baseResponse):
+ def __init__(self):
+ """the ID of the host"""
+ self.id = None
+ """the cpu average load on the host"""
+ self.averageload = None
+ """capabilities of the host"""
+ self.capabilities = None
+ """the cluster ID of the host"""
+ self.clusterid = None
+ """the cluster name of the host"""
+ self.clustername = None
+ """the cluster type of the cluster that host belongs to"""
+ self.clustertype = None
+ """the amount of the host's CPU currently allocated"""
+ self.cpuallocated = None
+ """the CPU number of the host"""
+ self.cpunumber = None
+ """the CPU speed of the host"""
+ self.cpuspeed = None
+ """the amount of the host's CPU currently used"""
+ self.cpuused = None
+ """the amount of the host's CPU after applying the cpu.overprovisioning.factor"""
+ self.cpuwithoverprovisioning = None
+ """the date and time the host was created"""
+ self.created = None
+ """true if the host is disconnected. False otherwise."""
+ self.disconnected = None
+ """the host's currently allocated disk size"""
+ self.disksizeallocated = None
+ """the total disk size of the host"""
+ self.disksizetotal = None
+ """events available for the host"""
+ self.events = None
+ """true if the host is Ha host (dedicated to vms started by HA process; false otherwise"""
+ self.hahost = None
+ """true if this host has enough CPU and RAM capacity to migrate a VM to it, false otherwise"""
+ self.hasenoughcapacity = None
+ """comma-separated list of tags for the host"""
+ self.hosttags = None
+ """the host hypervisor"""
+ self.hypervisor = None
+ """the hypervisor version"""
+ self.hypervisorversion = None
+ """the IP address of the host"""
+ self.ipaddress = None
+ """true if local storage is active, false otherwise"""
+ self.islocalstorageactive = None
+ """the date and time the host was last pinged"""
+ self.lastpinged = None
+ """the management server ID of the host"""
+ self.managementserverid = None
+ """the amount of the host's memory currently allocated"""
+ self.memoryallocated = None
+ """the memory total of the host"""
+ self.memorytotal = None
+ """the amount of the host's memory currently used"""
+ self.memoryused = None
+ """the name of the host"""
+ self.name = None
+ """the incoming network traffic on the host"""
+ self.networkkbsread = None
+ """the outgoing network traffic on the host"""
+ self.networkkbswrite = None
+ """the OS category ID of the host"""
+ self.oscategoryid = None
+ """the OS category name of the host"""
+ self.oscategoryname = None
+ """the Pod ID of the host"""
+ self.podid = None
+ """the Pod name of the host"""
+ self.podname = None
+ """the date and time the host was removed"""
+ self.removed = None
+ """true if migrating a vm to this host requires storage motion, false otherwise"""
+ self.requiresStorageMotion = None
+ """the resource state of the host"""
+ self.resourcestate = None
+ """the state of the host"""
+ self.state = None
+ """true if this host is suitable(has enough capacity and satisfies all conditions like hosttags, max guests vm limit etc) to migrate a VM to it , false otherwise"""
+ self.suitableformigration = None
+ """the host type"""
+ self.type = None
+ """the host version"""
+ self.version = None
+ """the Zone ID of the host"""
+ self.zoneid = None
+ """the Zone name of the host"""
+ self.zonename = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/findStoragePoolsForMigration.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/findStoragePoolsForMigration.py b/tools/marvin/build/lib/marvin/cloudstackAPI/findStoragePoolsForMigration.py
new file mode 100644
index 0000000..71fda44
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/findStoragePoolsForMigration.py
@@ -0,0 +1,84 @@
+# 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 storage pools available for migration of a volume."""
+from baseCmd import *
+from baseResponse import *
+class findStoragePoolsForMigrationCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """the ID of the volume"""
+ """Required"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ self.required = ["id",]
+
+class findStoragePoolsForMigrationResponse (baseResponse):
+ def __init__(self):
+ """the ID of the storage pool"""
+ self.id = None
+ """IOPS CloudStack can provision from this storage pool"""
+ self.capacityiops = None
+ """the ID of the cluster for the storage pool"""
+ self.clusterid = None
+ """the name of the cluster for the storage pool"""
+ self.clustername = None
+ """the date and time the storage pool was created"""
+ self.created = None
+ """the host's currently allocated disk size"""
+ self.disksizeallocated = None
+ """the total disk size of the storage pool"""
+ self.disksizetotal = None
+ """the host's currently used disk size"""
+ self.disksizeused = None
+ """the hypervisor type of the storage pool"""
+ self.hypervisor = None
+ """the IP address of the storage pool"""
+ self.ipaddress = None
+ """the name of the storage pool"""
+ self.name = None
+ """the storage pool path"""
+ self.path = None
+ """the Pod ID of the storage pool"""
+ self.podid = None
+ """the Pod name of the storage pool"""
+ self.podname = None
+ """the scope of the storage pool"""
+ self.scope = None
+ """the state of the storage pool"""
+ self.state = None
+ """true if this pool is suitable to migrate a volume, false otherwise"""
+ self.suitableformigration = None
+ """the tags for the storage pool"""
+ self.tags = None
+ """the storage pool type"""
+ self.type = None
+ """the Zone ID of the storage pool"""
+ self.zoneid = None
+ """the Zone name of the storage pool"""
+ self.zonename = None
+ """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
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/generateUsageRecords.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/generateUsageRecords.py b/tools/marvin/build/lib/marvin/cloudstackAPI/generateUsageRecords.py
new file mode 100644
index 0000000..26dbdbc
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/generateUsageRecords.py
@@ -0,0 +1,41 @@
+# 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.
+
+
+"""Generates usage records. This will generate records only if there any records to be generated, i.e if the scheduled usage job was not run or failed"""
+from baseCmd import *
+from baseResponse import *
+class generateUsageRecordsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """End date range for usage record query. Use yyyy-MM-dd as the date format, e.g. startDate=2009-06-03."""
+ """Required"""
+ self.enddate = None
+ """Start date range for usage record query. Use yyyy-MM-dd as the date format, e.g. startDate=2009-06-01."""
+ """Required"""
+ self.startdate = None
+ """List events for the specified domain."""
+ self.domainid = None
+ self.required = ["enddate","startdate",]
+
+class generateUsageRecordsResponse (baseResponse):
+ def __init__(self):
+ """any text associated with the success or failure"""
+ self.displaytext = None
+ """true if operation is executed successfully"""
+ self.success = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/getApiLimit.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/getApiLimit.py b/tools/marvin/build/lib/marvin/cloudstackAPI/getApiLimit.py
new file mode 100644
index 0000000..7b500fa
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/getApiLimit.py
@@ -0,0 +1,39 @@
+# 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.
+
+
+"""Get API limit count for the caller"""
+from baseCmd import *
+from baseResponse import *
+class getApiLimitCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ self.required = []
+
+class getApiLimitResponse (baseResponse):
+ def __init__(self):
+ """the account name of the api remaining count"""
+ self.account = None
+ """the account uuid of the api remaining count"""
+ self.accountid = None
+ """currently allowed number of apis"""
+ self.apiAllowed = None
+ """number of api already issued"""
+ self.apiIssued = None
+ """seconds left to reset counters"""
+ self.expireAfter = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/getCloudIdentifier.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/getCloudIdentifier.py b/tools/marvin/build/lib/marvin/cloudstackAPI/getCloudIdentifier.py
new file mode 100644
index 0000000..42823a5
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/getCloudIdentifier.py
@@ -0,0 +1,38 @@
+# 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.
+
+
+"""Retrieves a cloud identifier."""
+from baseCmd import *
+from baseResponse import *
+class getCloudIdentifierCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """the user ID for the cloud identifier"""
+ """Required"""
+ self.userid = None
+ self.required = ["userid",]
+
+class getCloudIdentifierResponse (baseResponse):
+ def __init__(self):
+ """the cloud identifier"""
+ self.cloudidentifier = None
+ """the signed response for the cloud identifier"""
+ self.signature = None
+ """the user ID for the cloud identifier"""
+ self.userid = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/getUser.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/getUser.py b/tools/marvin/build/lib/marvin/cloudstackAPI/getUser.py
new file mode 100644
index 0000000..88a5c33
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/getUser.py
@@ -0,0 +1,66 @@
+# 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.
+
+
+"""Find user account by API key"""
+from baseCmd import *
+from baseResponse import *
+class getUserCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """API key of the user"""
+ """Required"""
+ self.userapikey = None
+ self.required = ["userapikey",]
+
+class getUserResponse (baseResponse):
+ def __init__(self):
+ """the user ID"""
+ self.id = None
+ """the account name of the user"""
+ self.account = None
+ """the account ID of the user"""
+ self.accountid = None
+ """the account type of the user"""
+ self.accounttype = None
+ """the api key of the user"""
+ self.apikey = None
+ """the date and time the user account was created"""
+ self.created = None
+ """the domain name of the user"""
+ self.domain = None
+ """the domain ID of the user"""
+ self.domainid = None
+ """the user email address"""
+ self.email = None
+ """the user firstname"""
+ self.firstname = None
+ """the boolean value representing if the updating target is in caller's child domain"""
+ self.iscallerchilddomain = None
+ """true if user is default, false otherwise"""
+ self.isdefault = None
+ """the user lastname"""
+ self.lastname = None
+ """the secret key of the user"""
+ self.secretkey = None
+ """the user state"""
+ self.state = None
+ """the timezone user was created in"""
+ self.timezone = None
+ """the user name"""
+ self.username = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/getVMPassword.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/getVMPassword.py b/tools/marvin/build/lib/marvin/cloudstackAPI/getVMPassword.py
new file mode 100644
index 0000000..e4c519b
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/getVMPassword.py
@@ -0,0 +1,34 @@
+# 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.
+
+
+"""Returns an encrypted password for the VM"""
+from baseCmd import *
+from baseResponse import *
+class getVMPasswordCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """The ID of the virtual machine"""
+ """Required"""
+ self.id = None
+ self.required = ["id",]
+
+class getVMPasswordResponse (baseResponse):
+ def __init__(self):
+ """The encrypted password of the VM"""
+ self.encryptedpassword = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/ldapCreateAccount.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/ldapCreateAccount.py b/tools/marvin/build/lib/marvin/cloudstackAPI/ldapCreateAccount.py
new file mode 100644
index 0000000..d7c1286
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/ldapCreateAccount.py
@@ -0,0 +1,190 @@
+# 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.
+
+
+"""Creates an account from an LDAP user"""
+from baseCmd import *
+from baseResponse import *
+class ldapCreateAccountCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """Type of the account. Specify 0 for user, 1 for root admin, and 2 for domain admin"""
+ """Required"""
+ self.accounttype = None
+ """Unique username."""
+ """Required"""
+ self.username = None
+ """Creates the user under the specified account. If no account is specified, the username will be used as the account name."""
+ self.account = None
+ """details for account used to store specific parameters"""
+ self.accountdetails = []
+ """Account UUID, required for adding account from external provisioning system"""
+ self.accountid = None
+ """Creates the user under the specified domain."""
+ self.domainid = None
+ """Network domain for the account's networks"""
+ self.networkdomain = None
+ """Specifies a timezone for this command. For more information on the timezone parameter, see Time Zone Format."""
+ self.timezone = None
+ """User UUID, required for adding account from external provisioning system"""
+ self.userid = None
+ self.required = ["accounttype","username",]
+
+class ldapCreateAccountResponse (baseResponse):
+ def __init__(self):
+ """the id of the account"""
+ self.id = None
+ """details for the account"""
+ self.accountdetails = None
+ """account type (admin, domain-admin, user)"""
+ self.accounttype = None
+ """the total number of cpu cores available to be created for this account"""
+ self.cpuavailable = None
+ """the total number of cpu cores the account can own"""
+ self.cpulimit = None
+ """the total number of cpu cores owned by account"""
+ self.cputotal = None
+ """the default zone of the account"""
+ self.defaultzoneid = None
+ """name of the Domain the account belongs too"""
+ self.domain = None
+ """id of the Domain the account belongs too"""
+ self.domainid = None
+ """the total number of public ip addresses available for this account to acquire"""
+ self.ipavailable = None
+ """the total number of public ip addresses this account can acquire"""
+ self.iplimit = None
+ """the total number of public ip addresses allocated for this account"""
+ self.iptotal = None
+ """true if the account requires cleanup"""
+ self.iscleanuprequired = None
+ """true if account is default, false otherwise"""
+ self.isdefault = None
+ """the total memory (in MB) available to be created for this account"""
+ self.memoryavailable = None
+ """the total memory (in MB) the account can own"""
+ self.memorylimit = None
+ """the total memory (in MB) owned by account"""
+ self.memorytotal = None
+ """the name of the account"""
+ self.name = None
+ """the total number of networks available to be created for this account"""
+ self.networkavailable = None
+ """the network domain"""
+ self.networkdomain = None
+ """the total number of networks the account can own"""
+ self.networklimit = None
+ """the total number of networks owned by account"""
+ self.networktotal = None
+ """the total primary storage space (in GiB) available to be used for this account"""
+ self.primarystorageavailable = None
+ """the total primary storage space (in GiB) the account can own"""
+ self.primarystoragelimit = None
+ """the total primary storage space (in GiB) owned by account"""
+ self.primarystoragetotal = None
+ """the total number of projects available for administration by this account"""
+ self.projectavailable = None
+ """the total number of projects the account can own"""
+ self.projectlimit = None
+ """the total number of projects being administrated by this account"""
+ self.projecttotal = None
+ """the total number of network traffic bytes received"""
+ self.receivedbytes = None
+ """the total secondary storage space (in GiB) available to be used for this account"""
+ self.secondarystorageavailable = None
+ """the total secondary storage space (in GiB) the account can own"""
+ self.secondarystoragelimit = None
+ """the total secondary storage space (in GiB) owned by account"""
+ self.secondarystoragetotal = None
+ """the total number of network traffic bytes sent"""
+ self.sentbytes = None
+ """the total number of snapshots available for this account"""
+ self.snapshotavailable = None
+ """the total number of snapshots which can be stored by this account"""
+ self.snapshotlimit = None
+ """the total number of snapshots stored by this account"""
+ self.snapshottotal = None
+ """the state of the account"""
+ self.state = None
+ """the total number of templates available to be created by this account"""
+ self.templateavailable = None
+ """the total number of templates which can be created by this account"""
+ self.templatelimit = None
+ """the total number of templates which have been created by this account"""
+ self.templatetotal = None
+ """the total number of virtual machines available for this account to acquire"""
+ self.vmavailable = None
+ """the total number of virtual machines that can be deployed by this account"""
+ self.vmlimit = None
+ """the total number of virtual machines running for this account"""
+ self.vmrunning = None
+ """the total number of virtual machines stopped for this account"""
+ self.vmstopped = None
+ """the total number of virtual machines deployed by this account"""
+ self.vmtotal = None
+ """the total volume available for this account"""
+ self.volumeavailable = None
+ """the total volume which can be used by this account"""
+ self.volumelimit = None
+ """the total volume being used by this account"""
+ self.volumetotal = None
+ """the total number of vpcs available to be created for this account"""
+ self.vpcavailable = None
+ """the total number of vpcs the account can own"""
+ self.vpclimit = None
+ """the total number of vpcs owned by account"""
+ self.vpctotal = None
+ """the list of users associated with account"""
+ self.user = []
+
+class user:
+ def __init__(self):
+ """"the user ID"""
+ self.id = None
+ """"the account name of the user"""
+ self.account = None
+ """"the account ID of the user"""
+ self.accountid = None
+ """"the account type of the user"""
+ self.accounttype = None
+ """"the api key of the user"""
+ self.apikey = None
+ """"the date and time the user account was created"""
+ self.created = None
+ """"the domain name of the user"""
+ self.domain = None
+ """"the domain ID of the user"""
+ self.domainid = None
+ """"the user email address"""
+ self.email = None
+ """"the user firstname"""
+ self.firstname = None
+ """"the boolean value representing if the updating target is in caller's child domain"""
+ self.iscallerchilddomain = None
+ """"true if user is default, false otherwise"""
+ self.isdefault = None
+ """"the user lastname"""
+ self.lastname = None
+ """"the secret key of the user"""
+ self.secretkey = None
+ """"the user state"""
+ self.state = None
+ """"the timezone user was created in"""
+ self.timezone = None
+ """"the user name"""
+ self.username = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listAccounts.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listAccounts.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listAccounts.py
new file mode 100644
index 0000000..85a75a6
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listAccounts.py
@@ -0,0 +1,192 @@
+# 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 accounts and provides detailed account information for listed accounts"""
+from baseCmd import *
+from baseResponse import *
+class listAccountsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list accounts by account type. Valid account types are 1 (admin), 2 (domain-admin), and 0 (user)."""
+ self.accounttype = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """list account by account ID"""
+ self.id = None
+ """list accounts by cleanuprequred attribute (values are true or false)"""
+ self.iscleanuprequired = 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 account by account name"""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list accounts by state. Valid states are enabled, disabled, and locked."""
+ self.state = None
+ self.required = []
+
+class listAccountsResponse (baseResponse):
+ def __init__(self):
+ """the id of the account"""
+ self.id = None
+ """details for the account"""
+ self.accountdetails = None
+ """account type (admin, domain-admin, user)"""
+ self.accounttype = None
+ """the total number of cpu cores available to be created for this account"""
+ self.cpuavailable = None
+ """the total number of cpu cores the account can own"""
+ self.cpulimit = None
+ """the total number of cpu cores owned by account"""
+ self.cputotal = None
+ """the default zone of the account"""
+ self.defaultzoneid = None
+ """name of the Domain the account belongs too"""
+ self.domain = None
+ """id of the Domain the account belongs too"""
+ self.domainid = None
+ """the total number of public ip addresses available for this account to acquire"""
+ self.ipavailable = None
+ """the total number of public ip addresses this account can acquire"""
+ self.iplimit = None
+ """the total number of public ip addresses allocated for this account"""
+ self.iptotal = None
+ """true if the account requires cleanup"""
+ self.iscleanuprequired = None
+ """true if account is default, false otherwise"""
+ self.isdefault = None
+ """the total memory (in MB) available to be created for this account"""
+ self.memoryavailable = None
+ """the total memory (in MB) the account can own"""
+ self.memorylimit = None
+ """the total memory (in MB) owned by account"""
+ self.memorytotal = None
+ """the name of the account"""
+ self.name = None
+ """the total number of networks available to be created for this account"""
+ self.networkavailable = None
+ """the network domain"""
+ self.networkdomain = None
+ """the total number of networks the account can own"""
+ self.networklimit = None
+ """the total number of networks owned by account"""
+ self.networktotal = None
+ """the total primary storage space (in GiB) available to be used for this account"""
+ self.primarystorageavailable = None
+ """the total primary storage space (in GiB) the account can own"""
+ self.primarystoragelimit = None
+ """the total primary storage space (in GiB) owned by account"""
+ self.primarystoragetotal = None
+ """the total number of projects available for administration by this account"""
+ self.projectavailable = None
+ """the total number of projects the account can own"""
+ self.projectlimit = None
+ """the total number of projects being administrated by this account"""
+ self.projecttotal = None
+ """the total number of network traffic bytes received"""
+ self.receivedbytes = None
+ """the total secondary storage space (in GiB) available to be used for this account"""
+ self.secondarystorageavailable = None
+ """the total secondary storage space (in GiB) the account can own"""
+ self.secondarystoragelimit = None
+ """the total secondary storage space (in GiB) owned by account"""
+ self.secondarystoragetotal = None
+ """the total number of network traffic bytes sent"""
+ self.sentbytes = None
+ """the total number of snapshots available for this account"""
+ self.snapshotavailable = None
+ """the total number of snapshots which can be stored by this account"""
+ self.snapshotlimit = None
+ """the total number of snapshots stored by this account"""
+ self.snapshottotal = None
+ """the state of the account"""
+ self.state = None
+ """the total number of templates available to be created by this account"""
+ self.templateavailable = None
+ """the total number of templates which can be created by this account"""
+ self.templatelimit = None
+ """the total number of templates which have been created by this account"""
+ self.templatetotal = None
+ """the total number of virtual machines available for this account to acquire"""
+ self.vmavailable = None
+ """the total number of virtual machines that can be deployed by this account"""
+ self.vmlimit = None
+ """the total number of virtual machines running for this account"""
+ self.vmrunning = None
+ """the total number of virtual machines stopped for this account"""
+ self.vmstopped = None
+ """the total number of virtual machines deployed by this account"""
+ self.vmtotal = None
+ """the total volume available for this account"""
+ self.volumeavailable = None
+ """the total volume which can be used by this account"""
+ self.volumelimit = None
+ """the total volume being used by this account"""
+ self.volumetotal = None
+ """the total number of vpcs available to be created for this account"""
+ self.vpcavailable = None
+ """the total number of vpcs the account can own"""
+ self.vpclimit = None
+ """the total number of vpcs owned by account"""
+ self.vpctotal = None
+ """the list of users associated with account"""
+ self.user = []
+
+class user:
+ def __init__(self):
+ """"the user ID"""
+ self.id = None
+ """"the account name of the user"""
+ self.account = None
+ """"the account ID of the user"""
+ self.accountid = None
+ """"the account type of the user"""
+ self.accounttype = None
+ """"the api key of the user"""
+ self.apikey = None
+ """"the date and time the user account was created"""
+ self.created = None
+ """"the domain name of the user"""
+ self.domain = None
+ """"the domain ID of the user"""
+ self.domainid = None
+ """"the user email address"""
+ self.email = None
+ """"the user firstname"""
+ self.firstname = None
+ """"the boolean value representing if the updating target is in caller's child domain"""
+ self.iscallerchilddomain = None
+ """"true if user is default, false otherwise"""
+ self.isdefault = None
+ """"the user lastname"""
+ self.lastname = None
+ """"the secret key of the user"""
+ self.secretkey = None
+ """"the user state"""
+ self.state = None
+ """"the timezone user was created in"""
+ self.timezone = None
+ """"the user name"""
+ self.username = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listAffinityGroupTypes.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listAffinityGroupTypes.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listAffinityGroupTypes.py
new file mode 100644
index 0000000..091d391
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listAffinityGroupTypes.py
@@ -0,0 +1,37 @@
+# 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 affinity group types available"""
+from baseCmd import *
+from baseResponse import *
+class listAffinityGroupTypesCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ self.required = []
+
+class listAffinityGroupTypesResponse (baseResponse):
+ def __init__(self):
+ """the type of the affinity group"""
+ self.type = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listAffinityGroups.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listAffinityGroups.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listAffinityGroups.py
new file mode 100644
index 0000000..b74791e
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listAffinityGroups.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 affinity groups"""
+from baseCmd import *
+from baseResponse import *
+class listAffinityGroupsCmd (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 affinity 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
+ """lists affinity groups by name"""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """lists affinity groups by type"""
+ self.type = None
+ """lists affinity groups by virtual machine id"""
+ self.virtualmachineid = None
+ self.required = []
+
+class listAffinityGroupsResponse (baseResponse):
+ def __init__(self):
+ """the ID of the affinity group"""
+ self.id = None
+ """the account owning the affinity group"""
+ self.account = None
+ """the description of the affinity group"""
+ self.description = None
+ """the domain name of the affinity group"""
+ self.domain = None
+ """the domain ID of the affinity group"""
+ self.domainid = None
+ """the name of the affinity group"""
+ self.name = None
+ """the type of the affinity group"""
+ self.type = None
+ """virtual machine Ids associated with this affinity group"""
+ self.virtualmachineIds = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listAlerts.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listAlerts.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listAlerts.py
new file mode 100644
index 0000000..bcbd1cf
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listAlerts.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 alerts."""
+from baseCmd import *
+from baseResponse import *
+class listAlertsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """the ID of the alert"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list by alert type"""
+ self.type = None
+ self.required = []
+
+class listAlertsResponse (baseResponse):
+ def __init__(self):
+ """the id of the alert"""
+ self.id = None
+ """description of the alert"""
+ self.description = None
+ """the date and time the alert was sent"""
+ self.sent = None
+ """One of the following alert types: MEMORY = 0, CPU = 1, STORAGE = 2, STORAGE_ALLOCATED = 3, PUBLIC_IP = 4, PRIVATE_IP = 5, HOST = 6, USERVM = 7, DOMAIN_ROUTER = 8, CONSOLE_PROXY = 9, ROUTING = 10: lost connection to default route (to the gateway), STORAGE_MISC = 11: lost connection to default route (to the gateway), USAGE_SERVER = 12: lost connection to default route (to the gateway), MANAGMENT_NODE = 13: lost connection to default route (to the gateway), DOMAIN_ROUTER_MIGRATE = 14, CONSOLE_PROXY_MIGRATE = 15, USERVM_MIGRATE = 16, VLAN = 17, SSVM = 18, USAGE_SERVER_RESULT = 19"""
+ self.type = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listApis.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listApis.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listApis.py
new file mode 100644
index 0000000..9926969
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listApis.py
@@ -0,0 +1,75 @@
+# 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 available apis on the server, provided by the Api Discovery plugin"""
+from baseCmd import *
+from baseResponse import *
+class listApisCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """API name"""
+ self.name = None
+ self.required = []
+
+class listApisResponse (baseResponse):
+ def __init__(self):
+ """description of the api"""
+ self.description = None
+ """true if api is asynchronous"""
+ self.isasync = None
+ """the name of the api command"""
+ self.name = None
+ """comma separated related apis"""
+ self.related = None
+ """version of CloudStack the api was introduced in"""
+ self.since = None
+ """response field type"""
+ self.type = None
+ """the list params the api accepts"""
+ self.params = []
+ """api response fields"""
+ self.response = []
+
+class params:
+ def __init__(self):
+ """"description of the api parameter"""
+ self.description = None
+ """"length of the parameter"""
+ self.length = None
+ """"the name of the api parameter"""
+ self.name = None
+ """"comma separated related apis to get the parameter"""
+ self.related = None
+ """"true if this parameter is required for the api request"""
+ self.required = None
+ """"version of CloudStack the api was introduced in"""
+ self.since = None
+ """"parameter type"""
+ self.type = None
+
+class response:
+ def __init__(self):
+ """"description of the api response field"""
+ self.description = None
+ """"the name of the api response field"""
+ self.name = None
+ """"api response fields"""
+ self.response = None
+ """"response field type"""
+ self.type = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listAsyncJobs.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listAsyncJobs.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listAsyncJobs.py
new file mode 100644
index 0000000..7670845
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listAsyncJobs.py
@@ -0,0 +1,69 @@
+# 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 pending asynchronous jobs for the account."""
+from baseCmd import *
+from baseResponse import *
+class listAsyncJobsCmd (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 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
+ """the start date of the async job"""
+ self.startdate = None
+ self.required = []
+
+class listAsyncJobsResponse (baseResponse):
+ def __init__(self):
+ """the account that executed the async command"""
+ self.accountid = None
+ """the async command executed"""
+ self.cmd = None
+ """the created date of the job"""
+ self.created = None
+ """the unique ID of the instance/entity object related to the job"""
+ self.jobinstanceid = None
+ """the instance/entity object related to the job"""
+ self.jobinstancetype = None
+ """the progress information of the PENDING job"""
+ self.jobprocstatus = None
+ """the result reason"""
+ self.jobresult = None
+ """the result code for the job"""
+ self.jobresultcode = None
+ """the result type"""
+ self.jobresulttype = None
+ """the current job status-should be 0 for PENDING"""
+ self.jobstatus = None
+ """the user that executed the async command"""
+ self.userid = None
+ """the ID of the async job"""
+ self.jobid = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScalePolicies.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScalePolicies.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScalePolicies.py
new file mode 100644
index 0000000..a579b5c
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScalePolicies.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.
+
+
+"""Lists autoscale policies."""
+from baseCmd import *
+from baseResponse import *
+class listAutoScalePoliciesCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """the action to be executed if all the conditions evaluate to true for the specified duration."""
+ self.action = None
+ """the ID of the condition of the policy"""
+ self.conditionid = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """the ID of the autoscale policy"""
+ 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
+ """the ID of the autoscale vm group"""
+ self.vmgroupid = None
+ self.required = []
+
+class listAutoScalePoliciesResponse (baseResponse):
+ def __init__(self):
+ """the autoscale policy ID"""
+ self.id = None
+ """the account owning the autoscale policy"""
+ self.account = None
+ """the action to be executed if all the conditions evaluate to true for the specified duration."""
+ self.action = None
+ """the list of IDs of the conditions that are being evaluated on every interval"""
+ self.conditions = None
+ """the domain name of the autoscale policy"""
+ self.domain = None
+ """the domain ID of the autoscale policy"""
+ self.domainid = None
+ """the duration for which the conditions have to be true before action is taken"""
+ self.duration = None
+ """the project name of the autoscale policy"""
+ self.project = None
+ """the project id autoscale policy"""
+ self.projectid = None
+ """the cool down period for which the policy should not be evaluated after the action has been taken"""
+ self.quiettime = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScaleVmGroups.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScaleVmGroups.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScaleVmGroups.py
new file mode 100644
index 0000000..04e79e4
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScaleVmGroups.py
@@ -0,0 +1,83 @@
+# 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 autoscale vm groups."""
+from baseCmd import *
+from baseResponse import *
+class listAutoScaleVmGroupsCmd (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
+ """the ID of the autoscale vm group"""
+ 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
+ """the ID of the loadbalancer"""
+ self.lbruleid = 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
+ """the ID of the policy"""
+ self.policyid = None
+ """list objects by project"""
+ self.projectid = None
+ """the ID of the profile"""
+ self.vmprofileid = None
+ """the availability zone ID"""
+ self.zoneid = None
+ self.required = []
+
+class listAutoScaleVmGroupsResponse (baseResponse):
+ def __init__(self):
+ """the autoscale vm group ID"""
+ self.id = None
+ """the account owning the instance group"""
+ self.account = None
+ """the domain name of the vm profile"""
+ self.domain = None
+ """the domain ID of the vm profile"""
+ self.domainid = None
+ """the frequency at which the conditions have to be evaluated"""
+ self.interval = None
+ """the load balancer rule ID"""
+ self.lbruleid = None
+ """the maximum number of members in the vmgroup, The number of instances in the vm group will be equal to or less than this number."""
+ self.maxmembers = None
+ """the minimum number of members in the vmgroup, the number of instances in the vm group will be equal to or more than this number."""
+ self.minmembers = None
+ """the project name of the vm profile"""
+ self.project = None
+ """the project id vm profile"""
+ self.projectid = None
+ """list of scaledown autoscale policies"""
+ self.scaledownpolicies = None
+ """list of scaleup autoscale policies"""
+ self.scaleuppolicies = None
+ """the current state of the AutoScale Vm Group"""
+ self.state = None
+ """the autoscale profile that contains information about the vms in the vm group."""
+ self.vmprofileid = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScaleVmProfiles.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScaleVmProfiles.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScaleVmProfiles.py
new file mode 100644
index 0000000..6e3244d
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listAutoScaleVmProfiles.py
@@ -0,0 +1,75 @@
+# 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 autoscale vm profiles."""
+from baseCmd import *
+from baseResponse import *
+class listAutoScaleVmProfilesCmd (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
+ """the ID of the autoscale vm profile"""
+ 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 otherdeployparameters of the autoscale vm profile"""
+ self.otherdeployparams = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """list objects by project"""
+ self.projectid = None
+ """the templateid of the autoscale vm profile"""
+ self.templateid = None
+ self.required = []
+
+class listAutoScaleVmProfilesResponse (baseResponse):
+ def __init__(self):
+ """the autoscale vm profile ID"""
+ self.id = None
+ """the account owning the instance group"""
+ self.account = None
+ """the ID of the user used to launch and destroy the VMs"""
+ self.autoscaleuserid = None
+ """the time allowed for existing connections to get closed before a vm is destroyed"""
+ self.destroyvmgraceperiod = None
+ """the domain name of the vm profile"""
+ self.domain = None
+ """the domain ID of the vm profile"""
+ self.domainid = None
+ """parameters other than zoneId/serviceOfferringId/templateId to be used while deploying a virtual machine"""
+ self.otherdeployparams = None
+ """the project name of the vm profile"""
+ self.project = None
+ """the project id vm profile"""
+ self.projectid = None
+ """the service offering to be used while deploying a virtual machine"""
+ self.serviceofferingid = None
+ """the template to be used while deploying a virtual machine"""
+ self.templateid = None
+ """the availability zone to be used while deploying a virtual machine"""
+ self.zoneid = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listBaremetalDhcp.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listBaremetalDhcp.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listBaremetalDhcp.py
new file mode 100644
index 0000000..073706d
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listBaremetalDhcp.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.
+
+
+"""list baremetal dhcp servers"""
+from baseCmd import *
+from baseResponse import *
+class listBaremetalDhcpCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """Type of DHCP device"""
+ self.dhcpservertype = None
+ """DHCP server device ID"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ self.required = []
+
+class listBaremetalDhcpResponse (baseResponse):
+ def __init__(self):
+ """device id of"""
+ self.id = None
+ """name of the provider"""
+ self.dhcpservertype = None
+ """the physical network to which this external dhcp device belongs to"""
+ self.physicalnetworkid = None
+ """name of the provider"""
+ self.provider = None
+ """url"""
+ self.url = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listBaremetalPxeServers.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listBaremetalPxeServers.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listBaremetalPxeServers.py
new file mode 100644
index 0000000..5b9bb22
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listBaremetalPxeServers.py
@@ -0,0 +1,45 @@
+# 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 baremetal pxe server"""
+from baseCmd import *
+from baseResponse import *
+class listBaremetalPxeServersCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """Pxe server device ID"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ self.required = []
+
+class listBaremetalPxeServersResponse (baseResponse):
+ def __init__(self):
+ """device id of"""
+ self.id = None
+ """the physical network to which this external dhcp device belongs to"""
+ self.physicalnetworkid = None
+ """name of the provider"""
+ self.provider = None
+ """url"""
+ self.url = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listBigSwitchVnsDevices.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listBigSwitchVnsDevices.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listBigSwitchVnsDevices.py
new file mode 100644
index 0000000..6f7bc81
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listBigSwitchVnsDevices.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 BigSwitch Vns devices"""
+from baseCmd import *
+from baseResponse import *
+class listBigSwitchVnsDevicesCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """the Physical Network ID"""
+ self.physicalnetworkid = None
+ """bigswitch vns device ID"""
+ self.vnsdeviceid = None
+ self.required = []
+
+class listBigSwitchVnsDevicesResponse (baseResponse):
+ def __init__(self):
+ """device name"""
+ self.bigswitchdevicename = None
+ """the controller Ip address"""
+ self.hostname = None
+ """the physical network to which this BigSwitch Vns belongs to"""
+ self.physicalnetworkid = None
+ """name of the provider"""
+ self.provider = None
+ """device id of the BigSwitch Vns"""
+ self.vnsdeviceid = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listCapabilities.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listCapabilities.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listCapabilities.py
new file mode 100644
index 0000000..317ff24
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listCapabilities.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 capabilities"""
+from baseCmd import *
+from baseResponse import *
+class listCapabilitiesCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ self.required = []
+
+class listCapabilitiesResponse (baseResponse):
+ def __init__(self):
+ """true if regular user is allowed to create projects"""
+ self.allowusercreateprojects = None
+ """time interval (in seconds) to reset api count"""
+ self.apilimitinterval = None
+ """Max allowed number of api requests within the specified interval"""
+ self.apilimitmax = None
+ """version of the cloud stack"""
+ self.cloudstackversion = None
+ """maximum size that can be specified when create disk from disk offering with custom size"""
+ self.customdiskofferingmaxsize = None
+ """If invitation confirmation is required when add account to project"""
+ self.projectinviterequired = None
+ """true if region wide secondary is enabled, false otherwise"""
+ self.regionsecondaryenabled = None
+ """true if security groups support is enabled, false otherwise"""
+ self.securitygroupsenabled = None
+ """true if region supports elastic load balancer on basic zones"""
+ self.supportELB = None
+ """true if user and domain admins can set templates to be shared, false otherwise"""
+ self.userpublictemplateenabled = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listCapacity.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listCapacity.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listCapacity.py
new file mode 100644
index 0000000..adf6452
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listCapacity.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 all the system wide capacities."""
+from baseCmd import *
+from baseResponse import *
+class listCapacityCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """lists capacity by the Cluster ID"""
+ self.clusterid = None
+ """recalculate capacities and fetch the latest"""
+ self.fetchlatest = None
+ """List by keyword"""
+ self.keyword = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """lists capacity by the Pod ID"""
+ self.podid = None
+ """Sort the results. Available values: Usage"""
+ self.sortby = None
+ """lists capacity by type* CAPACITY_TYPE_MEMORY = 0* CAPACITY_TYPE_CPU = 1* CAPACITY_TYPE_STORAGE = 2* CAPACITY_TYPE_STORAGE_ALLOCATED = 3* CAPACITY_TYPE_VIRTUAL_NETWORK_PUBLIC_IP = 4* CAPACITY_TYPE_PRIVATE_IP = 5* CAPACITY_TYPE_SECONDARY_STORAGE = 6* CAPACITY_TYPE_VLAN = 7* CAPACITY_TYPE_DIRECT_ATTACHED_PUBLIC_IP = 8* CAPACITY_TYPE_LOCAL_STORAGE = 9."""
+ self.type = None
+ """lists capacity by the Zone ID"""
+ self.zoneid = None
+ self.required = []
+
+class listCapacityResponse (baseResponse):
+ 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/listClusters.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listClusters.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listClusters.py
new file mode 100644
index 0000000..c0cc067
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listClusters.py
@@ -0,0 +1,102 @@
+# 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 clusters."""
+from baseCmd import *
+from baseResponse import *
+class listClustersCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """lists clusters by allocation state"""
+ self.allocationstate = None
+ """lists clusters by cluster type"""
+ self.clustertype = None
+ """lists clusters by hypervisor type"""
+ self.hypervisor = None
+ """lists clusters by the cluster ID"""
+ self.id = None
+ """List by keyword"""
+ self.keyword = None
+ """whether this cluster is managed by cloudstack"""
+ self.managedstate = None
+ """lists clusters by the cluster name"""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """lists clusters by Pod ID"""
+ self.podid = None
+ """flag to display the capacity of the clusters"""
+ self.showcapacities = None
+ """lists clusters by Zone ID"""
+ self.zoneid = None
+ self.required = []
+
+class listClustersResponse (baseResponse):
+ def __init__(self):
+ """the cluster ID"""
+ self.id = None
+ """the allocation state of the cluster"""
+ self.allocationstate = None
+ """the type of the cluster"""
+ self.clustertype = None
+ """The cpu overcommit ratio of the cluster"""
+ self.cpuovercommitratio = None
+ """the hypervisor type of the cluster"""
+ self.hypervisortype = None
+ """whether this cluster is managed by cloudstack"""
+ self.managedstate = None
+ """The memory overcommit ratio of the cluster"""
+ self.memoryovercommitratio = None
+ """the cluster name"""
+ self.name = None
+ """the Pod ID of the cluster"""
+ self.podid = None
+ """the Pod name of the cluster"""
+ self.podname = None
+ """the Zone ID of the cluster"""
+ self.zoneid = None
+ """the Zone name of the cluster"""
+ self.zonename = None
+ """the capacity of the Cluster"""
+ 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/listConditions.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listConditions.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listConditions.py
new file mode 100644
index 0000000..f19c205
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listConditions.py
@@ -0,0 +1,69 @@
+# 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 Conditions for the specific user"""
+from baseCmd import *
+from baseResponse import *
+class listConditionsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """list resources by account. Must be used with the domainId parameter."""
+ self.account = None
+ """Counter-id of the condition."""
+ self.counterid = None
+ """list only resources belonging to the domain specified"""
+ self.domainid = None
+ """ID of the Condition."""
+ 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
+ """the ID of the policy"""
+ self.policyid = None
+ self.required = []
+
+class listConditionsResponse (baseResponse):
+ def __init__(self):
+ """the id of the Condition"""
+ self.id = None
+ """the owner of the Condition."""
+ self.account = None
+ """Details of the Counter."""
+ self.counter = None
+ """the domain name of the owner."""
+ self.domain = None
+ """the domain id of the Condition owner"""
+ self.domainid = None
+ """the project name of the Condition"""
+ self.project = None
+ """the project id of the Condition."""
+ self.projectid = None
+ """Relational Operator to be used with threshold."""
+ self.relationaloperator = None
+ """Threshold Value for the counter."""
+ self.threshold = None
+ """zone id of counter"""
+ self.zoneid = None
+
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/ec00a6fb/tools/marvin/build/lib/marvin/cloudstackAPI/listConfigurations.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/listConfigurations.py b/tools/marvin/build/lib/marvin/cloudstackAPI/listConfigurations.py
new file mode 100644
index 0000000..5382323
--- /dev/null
+++ b/tools/marvin/build/lib/marvin/cloudstackAPI/listConfigurations.py
@@ -0,0 +1,59 @@
+# 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 configurations."""
+from baseCmd import *
+from baseResponse import *
+class listConfigurationsCmd (baseCmd):
+ def __init__(self):
+ self.isAsync = "false"
+ """the ID of the Account to update the parameter value for corresponding account"""
+ self.accountid = None
+ """lists configurations by category"""
+ self.category = None
+ """the ID of the Cluster to update the parameter value for corresponding cluster"""
+ self.clusterid = None
+ """List by keyword"""
+ self.keyword = None
+ """lists configuration by name"""
+ self.name = None
+ """"""
+ self.page = None
+ """"""
+ self.pagesize = None
+ """the ID of the Storage pool to update the parameter value for corresponding storage pool"""
+ self.storageid = None
+ """the ID of the Zone to update the parameter value for corresponding zone"""
+ self.zoneid = None
+ self.required = []
+
+class listConfigurationsResponse (baseResponse):
+ def __init__(self):
+ """the value of the configuration"""
+ self.id = None
+ """the category of the configuration"""
+ self.category = None
+ """the description of the configuration"""
+ self.description = None
+ """the name of the configuration"""
+ self.name = None
+ """scope(zone/cluster/pool/account) of the parameter that needs to be updated"""
+ self.scope = None
+ """the value of the configuration"""
+ self.value = None
+