You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ta...@apache.org on 2013/11/08 11:36:47 UTC
[28/29] Revert "CLOUSTACK-5099: Utils.py-has-wrong-reference,
cleaned it. As well added Uniform naming convention"
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/test/integration/smoke/test_network.py
----------------------------------------------------------------------
diff --git a/test/integration/smoke/test_network.py b/test/integration/smoke/test_network.py
index 09d6437..f204595 100644
--- a/test/integration/smoke/test_network.py
+++ b/test/integration/smoke/test_network.py
@@ -21,7 +21,7 @@ import marvin
from marvin.cloudstackException import cloudstackAPIException
from marvin.cloudstackTestCase import *
from marvin.cloudstackAPI import *
-from marvin.sshClient import SshClient
+from marvin import remoteSSHClient
from marvin.integration.lib.utils import *
from marvin.integration.lib.base import *
from marvin.integration.lib.common import *
@@ -460,7 +460,7 @@ class TestPortForwarding(cloudstackTestCase):
"SSHing into VM with IP address %s after NAT rule deletion" %
self.virtual_machine.ipaddress)
- SshClient(
+ remoteSSHClient(
src_nat_ip_addr.ipaddress,
self.virtual_machine.ssh_port,
self.virtual_machine.username,
@@ -578,7 +578,7 @@ class TestPortForwarding(cloudstackTestCase):
"SSHing into VM with IP address %s after NAT rule deletion" %
self.virtual_machine.ipaddress)
- SshClient(
+ remoteSSHClient(
ip_address.ipaddress.ipaddress,
self.virtual_machine.ssh_port,
self.virtual_machine.username,
@@ -741,7 +741,7 @@ class TestRebootRouter(cloudstackTestCase):
try:
self.debug("SSH into VM (ID : %s ) after reboot" % self.vm_1.id)
- SshClient(
+ remoteSSHClient(
self.public_ip.ipaddress.ipaddress,
self.services["natrule"]["publicport"],
self.vm_1.username,
@@ -883,7 +883,7 @@ class TestReleaseIP(cloudstackTestCase):
# SSH Attempt though public IP should fail
with self.assertRaises(Exception):
- ssh_2 = SshClient(
+ ssh_2 = remoteSSHClient(
self.ip_addr.ipaddress,
self.services["natrule"]["publicport"],
self.virtual_machine.username,
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/test/integration/smoke/test_nic.py
----------------------------------------------------------------------
diff --git a/test/integration/smoke/test_nic.py b/test/integration/smoke/test_nic.py
index ac95685..583fc29 100644
--- a/test/integration/smoke/test_nic.py
+++ b/test/integration/smoke/test_nic.py
@@ -18,7 +18,7 @@
import marvin
from marvin.cloudstackTestCase import *
from marvin.cloudstackAPI import *
-from marvin.sshClient import SshClient
+from marvin.remoteSSHClient import remoteSSHClient
from marvin.integration.lib.utils import *
from marvin.integration.lib.base import *
from marvin.integration.lib.common import *
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/test/integration/smoke/test_pvlan.py
----------------------------------------------------------------------
diff --git a/test/integration/smoke/test_pvlan.py b/test/integration/smoke/test_pvlan.py
index aeb47f9..0a427ba 100644
--- a/test/integration/smoke/test_pvlan.py
+++ b/test/integration/smoke/test_pvlan.py
@@ -20,7 +20,7 @@
import marvin
from marvin.cloudstackTestCase import *
from marvin.cloudstackAPI import *
-from marvin.sshClient import SshClient
+from marvin import remoteSSHClient
from marvin.integration.lib.utils import *
from marvin.integration.lib.base import *
from marvin.integration.lib.common import *
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/test/integration/smoke/test_resource_detail.py
----------------------------------------------------------------------
diff --git a/test/integration/smoke/test_resource_detail.py b/test/integration/smoke/test_resource_detail.py
index 00a7b5c..93bc2ff 100644
--- a/test/integration/smoke/test_resource_detail.py
+++ b/test/integration/smoke/test_resource_detail.py
@@ -20,7 +20,7 @@
import marvin
from marvin.cloudstackTestCase import *
from marvin.cloudstackAPI import *
-from marvin.sshClient import SshClient
+from marvin.remoteSSHClient import remoteSSHClient
from marvin.integration.lib.utils import *
from marvin.integration.lib.base import *
from marvin.integration.lib.common import *
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/test/integration/smoke/test_routers.py
----------------------------------------------------------------------
diff --git a/test/integration/smoke/test_routers.py b/test/integration/smoke/test_routers.py
index 7d32413..0f32e27 100644
--- a/test/integration/smoke/test_routers.py
+++ b/test/integration/smoke/test_routers.py
@@ -20,7 +20,7 @@
import marvin
from marvin.cloudstackTestCase import *
from marvin.cloudstackAPI import *
-from marvin.sshClient import SshClient
+from marvin import remoteSSHClient
from marvin.integration.lib.utils import *
from marvin.integration.lib.base import *
from marvin.integration.lib.common import *
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/test/integration/smoke/test_ssvm.py
----------------------------------------------------------------------
diff --git a/test/integration/smoke/test_ssvm.py b/test/integration/smoke/test_ssvm.py
index a2b9eab..9fa59a9 100644
--- a/test/integration/smoke/test_ssvm.py
+++ b/test/integration/smoke/test_ssvm.py
@@ -20,7 +20,7 @@
import marvin
from marvin.cloudstackTestCase import *
from marvin.cloudstackAPI import *
-from marvin.sshClient import SshClient
+from marvin import remoteSSHClient
from marvin.integration.lib.utils import *
from marvin.integration.lib.base import *
from marvin.integration.lib.common import *
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/test/integration/smoke/test_templates.py
----------------------------------------------------------------------
diff --git a/test/integration/smoke/test_templates.py b/test/integration/smoke/test_templates.py
index e371ad4..9478440 100644
--- a/test/integration/smoke/test_templates.py
+++ b/test/integration/smoke/test_templates.py
@@ -20,7 +20,7 @@
import marvin
from marvin.cloudstackTestCase import *
from marvin.cloudstackAPI import *
-from marvin.sshClient import SshClient
+from marvin.remoteSSHClient import remoteSSHClient
from marvin.integration.lib.utils import *
from marvin.integration.lib.base import *
from marvin.integration.lib.common import *
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/test/integration/smoke/test_volumes.py
----------------------------------------------------------------------
diff --git a/test/integration/smoke/test_volumes.py b/test/integration/smoke/test_volumes.py
index 816ae03..b60b70e 100644
--- a/test/integration/smoke/test_volumes.py
+++ b/test/integration/smoke/test_volumes.py
@@ -21,7 +21,7 @@ import marvin
from marvin.cloudstackTestCase import *
from marvin.cloudstackException import *
from marvin.cloudstackAPI import *
-from marvin.sshClient import SshClient
+from marvin.remoteSSHClient import remoteSSHClient
from marvin.integration.lib.utils import *
from marvin.integration.lib.base import *
from marvin.integration.lib.common import *
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/tools/marvin/build/lib/marvin/TestCaseExecuteEngine.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/TestCaseExecuteEngine.py b/tools/marvin/build/lib/marvin/TestCaseExecuteEngine.py
deleted file mode 100644
index f5af1fe..0000000
--- a/tools/marvin/build/lib/marvin/TestCaseExecuteEngine.py
+++ /dev/null
@@ -1,102 +0,0 @@
-# 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.
-
-import unittest
-import os
-import sys
-import logging
-from functools import partial
-
-
-def testCaseLogger(message, logger=None):
- if logger is not None:
- logger.debug(message)
-
-
-class TestCaseExecuteEngine(object):
- def __init__(self, testclient, config, testcaseLogFile=None,
- testResultLogFile=None):
- """
- Initialize the testcase execution engine, just the basics here
- @var testcaseLogFile: client log file
- @var testResultLogFile: summary report file
- """
- self.testclient = testclient
- self.config = config
- self.logformat =\
- logging.Formatter(
- "%(asctime)s - %(levelname)s - %(name)s - %(message)s")
- self.loader = unittest.loader.TestLoader()
- self.suite = None
-
- if testcaseLogFile is not None:
- self.logfile = testcaseLogFile
- self.logger = logging.getLogger("TestCaseExecuteEngine")
- fh = logging.FileHandler(self.logfile)
- fh.setFormatter(self.logformat)
- self.logger.addHandler(fh)
- self.logger.setLevel(logging.DEBUG)
- if testResultLogFile is not None:
- ch = logging.StreamHandler()
- ch.setLevel(logging.ERROR)
- ch.setFormatter(self.logformat)
- self.logger.addHandler(ch)
- fp = open(testResultLogFile, "w")
- self.testResultLogFile = fp
- else:
- self.testResultLogFile = sys.stdout
-
- def loadTestsFromDir(self, testDirectory):
- """ Load the test suites from a package with multiple test files """
- self.suite = self.loader.discover(testDirectory)
- self.injectTestCase(self.suite)
-
- def loadTestsFromFile(self, file_name):
- """ Load the tests from a single script/module """
- if os.path.isfile(file_name):
- self.suite = self.loader.discover(os.path.dirname(file_name),
- os.path.basename(file_name))
- self.injectTestCase(self.suite)
-
- def injectTestCase(self, testSuites):
- for test in testSuites:
- if isinstance(test, unittest.BaseTestSuite):
- self.injectTestCase(test)
- else:
- #logger bears the name of the test class
- testcaselogger = logging.getLogger("%s" % (test))
- fh = logging.FileHandler(self.logfile)
- fh.setFormatter(self.logformat)
- testcaselogger.addHandler(fh)
- testcaselogger.setLevel(logging.DEBUG)
-
- #inject testclient and logger into each unittest
- setattr(test, "testClient", self.testclient)
- setattr(test, "config", self.config)
- setattr(test, "debug", partial(testCaseLogger,
- logger=testcaselogger))
- setattr(test.__class__, "clstestclient", self.testclient)
- if hasattr(test, "user"):
- # attribute when test is entirely executed as user
- self.testclient.createUserApiClient(test.UserName,
- test.DomainName,
- test.AcctType)
-
- def run(self):
- if self.suite:
- unittest.TextTestRunner(stream=self.testResultLogFile,
- verbosity=2).run(self.suite)
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/tools/marvin/build/lib/marvin/__init__.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/__init__.py b/tools/marvin/build/lib/marvin/__init__.py
deleted file mode 100644
index 7af168e..0000000
--- a/tools/marvin/build/lib/marvin/__init__.py
+++ /dev/null
@@ -1,18 +0,0 @@
-# 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.
-
-#Marvin - The cloudstack test client
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/tools/marvin/build/lib/marvin/asyncJobMgr.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/asyncJobMgr.py b/tools/marvin/build/lib/marvin/asyncJobMgr.py
deleted file mode 100644
index 25818a6..0000000
--- a/tools/marvin/build/lib/marvin/asyncJobMgr.py
+++ /dev/null
@@ -1,261 +0,0 @@
-# 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.
-
-import threading
-import cloudstackException
-import time
-import Queue
-import copy
-import sys
-import jsonHelper
-import datetime
-
-
-class job(object):
- def __init__(self):
- self.id = None
- self.cmd = None
-
-
-class jobStatus(object):
- def __init__(self):
- self.result = None
- self.status = None
- self.startTime = None
- self.endTime = None
- self.duration = None
- self.jobId = None
- self.responsecls = None
-
- def __str__(self):
- return '{%s}' % str(', '.join('%s : %s' % (k, repr(v)) for (k, v)
- in self.__dict__.iteritems()))
-
-
-class workThread(threading.Thread):
- def __init__(self, in_queue, outqueue, apiClient, db=None, lock=None):
- threading.Thread.__init__(self)
- self.inqueue = in_queue
- self.output = outqueue
- self.connection = apiClient.connection.__copy__()
- self.db = None
- self.lock = lock
-
- def queryAsynJob(self, job):
- if job.jobId is None:
- return job
-
- try:
- self.lock.acquire()
- result = self.connection.poll(job.jobId, job.responsecls).jobresult
- except cloudstackException.cloudstackAPIException, e:
- result = str(e)
- finally:
- self.lock.release()
-
- job.result = result
- return job
-
- def executeCmd(self, job):
- cmd = job.cmd
-
- jobstatus = jobStatus()
- jobId = None
- try:
- self.lock.acquire()
-
- if cmd.isAsync == "false":
- jobstatus.startTime = datetime.datetime.now()
-
- result = self.connection.make_request(cmd)
- jobstatus.result = result
- jobstatus.endTime = datetime.datetime.now()
- jobstatus.duration =\
- time.mktime(jobstatus.endTime.timetuple()) - time.mktime(
- jobstatus.startTime.timetuple())
- else:
- result = self.connection.make_request(cmd, None, True)
- if result is None:
- jobstatus.status = False
- else:
- jobId = result.jobid
- jobstatus.jobId = jobId
- try:
- responseName =\
- cmd.__class__.__name__.replace("Cmd", "Response")
- jobstatus.responsecls =\
- jsonHelper.getclassFromName(cmd, responseName)
- except:
- pass
- jobstatus.status = True
- except cloudstackException.cloudstackAPIException, e:
- jobstatus.result = str(e)
- jobstatus.status = False
- except:
- jobstatus.status = False
- jobstatus.result = sys.exc_info()
- finally:
- self.lock.release()
-
- return jobstatus
-
- def run(self):
- while self.inqueue.qsize() > 0:
- job = self.inqueue.get()
- if isinstance(job, jobStatus):
- jobstatus = self.queryAsynJob(job)
- else:
- jobstatus = self.executeCmd(job)
-
- self.output.put(jobstatus)
- self.inqueue.task_done()
-
- '''release the resource'''
- self.connection.close()
-
-
-class jobThread(threading.Thread):
- def __init__(self, inqueue, interval):
- threading.Thread.__init__(self)
- self.inqueue = inqueue
- self.interval = interval
-
- def run(self):
- while self.inqueue.qsize() > 0:
- job = self.inqueue.get()
- try:
- job.run()
- '''release the api connection'''
- job.apiClient.connection.close()
- except:
- pass
-
- self.inqueue.task_done()
- time.sleep(self.interval)
-
-
-class outputDict(object):
- def __init__(self):
- self.lock = threading.Condition()
- self.dict = {}
-
-
-class asyncJobMgr(object):
- def __init__(self, apiClient, db):
- self.inqueue = Queue.Queue()
- self.output = outputDict()
- self.outqueue = Queue.Queue()
- self.apiClient = apiClient
- self.db = db
-
- def submitCmds(self, cmds):
- if not self.inqueue.empty():
- return False
- id = 0
- ids = []
- for cmd in cmds:
- asyncjob = job()
- asyncjob.id = id
- asyncjob.cmd = cmd
- self.inqueue.put(asyncjob)
- id += 1
- ids.append(id)
- return ids
-
- def updateTimeStamp(self, jobstatus):
- jobId = jobstatus.jobId
- if jobId is not None and self.db is not None:
- result = self.db.execute(
- "select job_status, created, last_updated from async_job where\
- id='%s'" % str(jobId))
- if result is not None and len(result) > 0:
- if result[0][0] == 1:
- jobstatus.status = True
- else:
- jobstatus.status = False
- jobstatus.startTime = result[0][1]
- jobstatus.endTime = result[0][2]
- delta = jobstatus.endTime - jobstatus.startTime
- jobstatus.duration = delta.total_seconds()
-
- def waitForComplete(self, workers=10):
- self.inqueue.join()
- lock = threading.Lock()
- resultQueue = Queue.Queue()
- '''intermediate result is stored in self.outqueue'''
- for i in range(workers):
- worker = workThread(self.outqueue, resultQueue, self.apiClient,
- self.db, lock)
- worker.start()
-
- self.outqueue.join()
-
- asyncJobResult = []
- while resultQueue.qsize() > 0:
- jobstatus = resultQueue.get()
- self.updateTimeStamp(jobstatus)
- asyncJobResult.append(jobstatus)
-
- return asyncJobResult
-
- def submitCmdsAndWait(self, cmds, workers=10):
- '''
- put commands into a queue at first, then start workers numbers
- threads to execute this commands
- '''
- self.submitCmds(cmds)
- lock = threading.Lock()
- for i in range(workers):
- worker = workThread(self.inqueue, self.outqueue, self.apiClient,
- self.db, lock)
- worker.start()
-
- return self.waitForComplete(workers)
-
- def submitJobExecuteNtimes(self, job, ntimes=1, nums_threads=1,
- interval=1):
- '''
- submit one job and execute the same job ntimes, with nums_threads
- of threads
- '''
- inqueue1 = Queue.Queue()
- lock = threading.Condition()
- for i in range(ntimes):
- newjob = copy.copy(job)
- setattr(newjob, "apiClient", copy.copy(self.apiClient))
- setattr(newjob, "lock", lock)
- inqueue1.put(newjob)
-
- for i in range(nums_threads):
- work = jobThread(inqueue1, interval)
- work.start()
- inqueue1.join()
-
- def submitJobs(self, jobs, nums_threads=1, interval=1):
- '''submit n jobs, execute them with nums_threads of threads'''
- inqueue1 = Queue.Queue()
- lock = threading.Condition()
-
- for job in jobs:
- setattr(job, "apiClient", copy.copy(self.apiClient))
- setattr(job, "lock", lock)
- inqueue1.put(job)
-
- for i in range(nums_threads):
- work = jobThread(inqueue1, interval)
- work.start()
- inqueue1.join()
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/__init__.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/__init__.py b/tools/marvin/build/lib/marvin/cloudstackAPI/__init__.py
deleted file mode 100644
index ad0c1e5..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/__init__.py
+++ /dev/null
@@ -1,18 +0,0 @@
-# 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.
-
-__all__ = ["createAccount","deleteAccount","updateAccount","disableAccount","enableAccount","lockAccount","listAccounts","markDefaultZoneForAccount","createUser","deleteUser","updateUser","listUsers","lockUser","disableUser","enableUser","getUser","createDomain","updateDomain","deleteDomain","listDomains","listDomainChildren","getCloudIdentifier","updateResourceLimit","updateResourceCount","listResourceLimits","deployVirtualMachine","destroyVirtualMachine","rebootVirtualMachine","startVirtualMachine","stopVirtualMachine","resetPasswordForVirtualMachine","resetSSHKeyForVirtualMachine","updateVirtualMachine","listVirtualMachines","getVMPassword","restoreVirtualMachine","changeServiceForVirtualMachine","scaleVirtualMachine","assignVirtualMachine","migrateVirtualMachine","migrateVirtualMachineWithVolume","recoverVirtualMachine","createSnapshot","listSnapshots","deleteSnapshot","createSnapshotPolicy","deleteSnapshotPolicies","listSnapshotPolicies","revertSnapshot","createTemplate","regis
terTemplate","updateTemplate","copyTemplate","deleteTemplate","listTemplates","updateTemplatePermissions","listTemplatePermissions","extractTemplate","prepareTemplate","attachIso","detachIso","listIsos","registerIso","updateIso","deleteIso","copyIso","updateIsoPermissions","listIsoPermissions","extractIso","listOsTypes","listOsCategories","createServiceOffering","deleteServiceOffering","updateServiceOffering","listServiceOfferings","createDiskOffering","updateDiskOffering","deleteDiskOffering","listDiskOfferings","createVlanIpRange","deleteVlanIpRange","listVlanIpRanges","dedicatePublicIpRange","releasePublicIpRange","dedicateGuestVlanRange","releaseDedicatedGuestVlanRange","listDedicatedGuestVlanRanges","associateIpAddress","disassociateIpAddress","listPublicIpAddresses","listPortForwardingRules","createPortForwardingRule","deletePortForwardingRule","updatePortForwardingRule","enableStaticNat","createIpForwardingRule","deleteIpForwardingRule","listIpForwardingRules","disableStaticN
at","createLoadBalancerRule","deleteLoadBalancerRule","removeFromLoadBalancerRule","assignToLoadBalancerRule","createLBStickinessPolicy","deleteLBStickinessPolicy","listLoadBalancerRules","listLBStickinessPolicies","listLBHealthCheckPolicies","createLBHealthCheckPolicy","deleteLBHealthCheckPolicy","listLoadBalancerRuleInstances","updateLoadBalancerRule","createCounter","createCondition","createAutoScalePolicy","createAutoScaleVmProfile","createAutoScaleVmGroup","deleteCounter","deleteCondition","deleteAutoScalePolicy","deleteAutoScaleVmProfile","deleteAutoScaleVmGroup","listCounters","listConditions","listAutoScalePolicies","listAutoScaleVmProfiles","listAutoScaleVmGroups","enableAutoScaleVmGroup","disableAutoScaleVmGroup","updateAutoScalePolicy","updateAutoScaleVmProfile","updateAutoScaleVmGroup","startRouter","rebootRouter","stopRouter","destroyRouter","changeServiceForRouter","listRouters","listVirtualRouterElements","configureVirtualRouterElement","createVirtualRouterElement","s
tartSystemVm","rebootSystemVm","stopSystemVm","destroySystemVm","listSystemVms","migrateSystemVm","changeServiceForSystemVm","scaleSystemVm","updateConfiguration","listConfigurations","listCapabilities","listDeploymentPlanners","cleanVMReservations","createPod","updatePod","deletePod","listPods","createZone","updateZone","deleteZone","listZones","listEvents","listEventTypes","archiveEvents","deleteEvents","listAlerts","archiveAlerts","deleteAlerts","listCapacity","addSwift","listSwifts","addS3","listS3s","addImageStore","listImageStores","deleteImageStore","createSecondaryStagingStore","listSecondaryStagingStores","deleteSecondaryStagingStore","addHost","addCluster","deleteCluster","updateCluster","reconnectHost","updateHost","deleteHost","prepareHostForMaintenance","cancelHostMaintenance","listHosts","findHostsForMigration","addSecondaryStorage","updateHostPassword","releaseHostReservation","attachVolume","uploadVolume","detachVolume","createVolume","deleteVolume","listVolumes","ex
tractVolume","migrateVolume","resizeVolume","updateVolume","registerUserKeys","queryAsyncJobResult","listAsyncJobs","listStoragePools","listStorageProviders","createStoragePool","updateStoragePool","deleteStoragePool","listClusters","enableStorageMaintenance","cancelStorageMaintenance","findStoragePoolsForMigration","createSecurityGroup","deleteSecurityGroup","authorizeSecurityGroupIngress","revokeSecurityGroupIngress","authorizeSecurityGroupEgress","revokeSecurityGroupEgress","listSecurityGroups","createInstanceGroup","deleteInstanceGroup","updateInstanceGroup","listInstanceGroups","uploadCustomCertificate","listHypervisors","createRemoteAccessVpn","deleteRemoteAccessVpn","listRemoteAccessVpns","addVpnUser","removeVpnUser","listVpnUsers","createNetworkOffering","updateNetworkOffering","deleteNetworkOffering","listNetworkOfferings","createNetwork","deleteNetwork","listNetworks","restartNetwork","updateNetwork","addNicToVirtualMachine","removeNicFromVirtualMachine","updateDefaultNicF
orVirtualMachine","addIpToNic","removeIpFromNic","listNics","registerSSHKeyPair","createSSHKeyPair","deleteSSHKeyPair","listSSHKeyPairs","createProject","deleteProject","updateProject","activateProject","suspendProject","listProjects","addAccountToProject","deleteAccountFromProject","listProjectAccounts","listProjectInvitations","updateProjectInvitation","deleteProjectInvitation","createFirewallRule","deleteFirewallRule","listFirewallRules","createEgressFirewallRule","deleteEgressFirewallRule","listEgressFirewallRules","updateHypervisorCapabilities","listHypervisorCapabilities","createPhysicalNetwork","deletePhysicalNetwork","listPhysicalNetworks","updatePhysicalNetwork","listSupportedNetworkServices","addNetworkServiceProvider","deleteNetworkServiceProvider","listNetworkServiceProviders","updateNetworkServiceProvider","addTrafficType","deleteTrafficType","listTrafficTypes","updateTrafficType","listTrafficTypeImplementors","createStorageNetworkIpRange","deleteStorageNetworkIpRange",
"listStorageNetworkIpRange","updateStorageNetworkIpRange","addNetworkDevice","listNetworkDevice","deleteNetworkDevice","createVPC","listVPCs","deleteVPC","updateVPC","restartVPC","createVPCOffering","updateVPCOffering","deleteVPCOffering","listVPCOfferings","createPrivateGateway","listPrivateGateways","deletePrivateGateway","createNetworkACL","updateNetworkACLItem","deleteNetworkACL","listNetworkACLs","createNetworkACLList","deleteNetworkACLList","replaceNetworkACLList","listNetworkACLLists","createStaticRoute","deleteStaticRoute","listStaticRoutes","createTags","deleteTags","listTags","addResourceDetail","removeResourceDetail","listResourceDetails","createVpnCustomerGateway","createVpnGateway","createVpnConnection","deleteVpnCustomerGateway","deleteVpnGateway","deleteVpnConnection","updateVpnCustomerGateway","resetVpnConnection","listVpnCustomerGateways","listVpnGateways","listVpnConnections","generateUsageRecords","listUsageRecords","listUsageTypes","addTrafficMonitor","deleteTraf
ficMonitor","listTrafficMonitors","addNiciraNvpDevice","deleteNiciraNvpDevice","listNiciraNvpDevices","listNiciraNvpDeviceNetworks","addBigSwitchVnsDevice","deleteBigSwitchVnsDevice","listBigSwitchVnsDevices","listApis","getApiLimit","resetApiLimit","addRegion","updateRegion","removeRegion","listRegions","createGlobalLoadBalancerRule","deleteGlobalLoadBalancerRule","updateGlobalLoadBalancerRule","listGlobalLoadBalancerRules","assignToGlobalLoadBalancerRule","removeFromGlobalLoadBalancerRule","listVMSnapshot","createVMSnapshot","deleteVMSnapshot","revertToVMSnapshot","addBaremetalHost","addBaremetalPxeKickStartServer","addBaremetalPxePingServer","addBaremetalDhcp","listBaremetalDhcp","listBaremetalPxeServers","addUcsManager","listUcsManagers","listUcsProfiles","listUcsBlades","associateUcsProfileToBlade","createLoadBalancer","listLoadBalancers","deleteLoadBalancer","configureInternalLoadBalancerElement","createInternalLoadBalancerElement","listInternalLoadBalancerElements","createAff
inityGroup","deleteAffinityGroup","listAffinityGroups","updateVMAffinityGroup","listAffinityGroupTypes","createPortableIpRange","deletePortableIpRange","listPortableIpRanges","stopInternalLoadBalancerVM","startInternalLoadBalancerVM","listInternalLoadBalancerVMs","listNetworkIsolationMethods","dedicateZone","dedicatePod","dedicateCluster","dedicateHost","releaseDedicatedZone","releaseDedicatedPod","releaseDedicatedCluster","releaseDedicatedHost","listDedicatedZones","listDedicatedPods","listDedicatedClusters","listDedicatedHosts","listLdapConfigurations","addLdapConfiguration","deleteLdapConfiguration","listLdapUsers","ldapCreateAccount","login","logout","cloudstackAPIClient"]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/activateProject.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/activateProject.py b/tools/marvin/build/lib/marvin/cloudstackAPI/activateProject.py
deleted file mode 100644
index cd7c7a7..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/activateProject.py
+++ /dev/null
@@ -1,141 +0,0 @@
-# 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.
-
-
-"""Activates a project"""
-from baseCmd import *
-from baseResponse import *
-class activateProjectCmd (baseCmd):
- def __init__(self):
- self.isAsync = "true"
- """id of the project to be modified"""
- """Required"""
- self.id = None
- self.required = ["id",]
-
-class activateProjectResponse (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/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addAccountToProject.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addAccountToProject.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addAccountToProject.py
deleted file mode 100644
index 211c58d..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addAccountToProject.py
+++ /dev/null
@@ -1,40 +0,0 @@
-# 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.
-
-
-"""Adds acoount to a project"""
-from baseCmd import *
-from baseResponse import *
-class addAccountToProjectCmd (baseCmd):
- def __init__(self):
- self.isAsync = "true"
- """id of the project to add the account to"""
- """Required"""
- self.projectid = None
- """name of the account to be added to the project"""
- self.account = None
- """email to which invitation to the project is going to be sent"""
- self.email = None
- self.required = ["projectid",]
-
-class addAccountToProjectResponse (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/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalDhcp.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalDhcp.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalDhcp.py
deleted file mode 100644
index fa8b095..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalDhcp.py
+++ /dev/null
@@ -1,54 +0,0 @@
-# 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.
-
-
-"""adds a baremetal dhcp server"""
-from baseCmd import *
-from baseResponse import *
-class addBaremetalDhcpCmd (baseCmd):
- def __init__(self):
- self.isAsync = "true"
- """Type of dhcp device"""
- """Required"""
- self.dhcpservertype = None
- """Credentials to reach external dhcp device"""
- """Required"""
- self.password = None
- """the Physical Network ID"""
- """Required"""
- self.physicalnetworkid = None
- """URL of the external dhcp appliance."""
- """Required"""
- self.url = None
- """Credentials to reach external dhcp device"""
- """Required"""
- self.username = None
- self.required = ["dhcpservertype","password","physicalnetworkid","url","username",]
-
-class addBaremetalDhcpResponse (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/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalHost.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalHost.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalHost.py
deleted file mode 100644
index 6fb003e..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalHost.py
+++ /dev/null
@@ -1,147 +0,0 @@
-# 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.
-
-
-"""add a baremetal host"""
-from baseCmd import *
-from baseResponse import *
-class addBaremetalHostCmd (baseCmd):
- def __init__(self):
- self.isAsync = "false"
- """hypervisor type of the host"""
- """Required"""
- self.hypervisor = None
- """the password for the host"""
- """Required"""
- self.password = None
- """the Pod ID for the host"""
- """Required"""
- self.podid = None
- """the host URL"""
- """Required"""
- self.url = None
- """the username for the host"""
- """Required"""
- self.username = None
- """the Zone ID for the host"""
- """Required"""
- self.zoneid = None
- """Allocation state of this Host for allocation of new resources"""
- self.allocationstate = None
- """the cluster ID for the host"""
- self.clusterid = None
- """the cluster name for the host"""
- self.clustername = None
- """list of tags to be added to the host"""
- self.hosttags = []
- """ip address intentionally allocated to this host after provisioning"""
- self.ipaddress = None
- self.required = ["hypervisor","password","podid","url","username","zoneid",]
-
-class addBaremetalHostResponse (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
- """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
- """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/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalPxeKickStartServer.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalPxeKickStartServer.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalPxeKickStartServer.py
deleted file mode 100644
index 14a1237..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalPxeKickStartServer.py
+++ /dev/null
@@ -1,51 +0,0 @@
-# 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.
-
-
-"""add a baremetal pxe server"""
-from baseCmd import *
-from baseResponse import *
-class addBaremetalPxeKickStartServerCmd (baseCmd):
- def __init__(self):
- self.isAsync = "true"
- """Credentials to reach external pxe device"""
- """Required"""
- self.password = None
- """the Physical Network ID"""
- """Required"""
- self.physicalnetworkid = None
- """type of pxe device"""
- """Required"""
- self.pxeservertype = None
- """Tftp root directory of PXE server"""
- """Required"""
- self.tftpdir = None
- """URL of the external pxe device"""
- """Required"""
- self.url = None
- """Credentials to reach external pxe device"""
- """Required"""
- self.username = None
- """Pod Id"""
- self.podid = None
- self.required = ["password","physicalnetworkid","pxeservertype","tftpdir","url","username",]
-
-class addBaremetalPxeKickStartServerResponse (baseResponse):
- def __init__(self):
- """Tftp root directory of PXE server"""
- self.tftpdir = None
-
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalPxePingServer.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalPxePingServer.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalPxePingServer.py
deleted file mode 100644
index 6e3d6bf..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addBaremetalPxePingServer.py
+++ /dev/null
@@ -1,65 +0,0 @@
-# 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.
-
-
-"""add a baremetal ping pxe server"""
-from baseCmd import *
-from baseResponse import *
-class addBaremetalPxePingServerCmd (baseCmd):
- def __init__(self):
- self.isAsync = "true"
- """Credentials to reach external pxe device"""
- """Required"""
- self.password = None
- """the Physical Network ID"""
- """Required"""
- self.physicalnetworkid = None
- """Root directory on PING storage server"""
- """Required"""
- self.pingdir = None
- """PING storage server ip"""
- """Required"""
- self.pingstorageserverip = None
- """type of pxe device"""
- """Required"""
- self.pxeservertype = None
- """Tftp root directory of PXE server"""
- """Required"""
- self.tftpdir = None
- """URL of the external pxe device"""
- """Required"""
- self.url = None
- """Credentials to reach external pxe device"""
- """Required"""
- self.username = None
- """Password of PING storage server"""
- self.pingcifspassword = None
- """Username of PING storage server"""
- self.pingcifsusername = None
- """Pod Id"""
- self.podid = None
- self.required = ["password","physicalnetworkid","pingdir","pingstorageserverip","pxeservertype","tftpdir","url","username",]
-
-class addBaremetalPxePingServerResponse (baseResponse):
- def __init__(self):
- """Root directory on PING storage server"""
- self.pingdir = None
- """PING storage server ip"""
- self.pingstorageserverip = None
- """Tftp root directory of PXE server"""
- self.tftpdir = None
-
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addBigSwitchVnsDevice.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addBigSwitchVnsDevice.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addBigSwitchVnsDevice.py
deleted file mode 100644
index 77a7476..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addBigSwitchVnsDevice.py
+++ /dev/null
@@ -1,45 +0,0 @@
-# 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.
-
-
-"""Adds a BigSwitch VNS device"""
-from baseCmd import *
-from baseResponse import *
-class addBigSwitchVnsDeviceCmd (baseCmd):
- def __init__(self):
- self.isAsync = "true"
- """Hostname of ip address of the BigSwitch VNS Controller."""
- """Required"""
- self.hostname = None
- """the Physical Network ID"""
- """Required"""
- self.physicalnetworkid = None
- self.required = ["hostname","physicalnetworkid",]
-
-class addBigSwitchVnsDeviceResponse (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/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addCluster.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addCluster.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addCluster.py
deleted file mode 100644
index 26d7f6c..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addCluster.py
+++ /dev/null
@@ -1,115 +0,0 @@
-# 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.
-
-
-"""Adds a new cluster"""
-from baseCmd import *
-from baseResponse import *
-class addClusterCmd (baseCmd):
- def __init__(self):
- self.isAsync = "false"
- """the cluster name"""
- """Required"""
- self.clustername = None
- """type of the cluster: CloudManaged, ExternalManaged"""
- """Required"""
- self.clustertype = None
- """hypervisor type of the cluster: XenServer,KVM,VMware,Hyperv,BareMetal,Simulator"""
- """Required"""
- self.hypervisor = None
- """the Pod ID for the host"""
- """Required"""
- self.podid = None
- """the Zone ID for the cluster"""
- """Required"""
- self.zoneid = None
- """Allocation state of this cluster for allocation of new resources"""
- self.allocationstate = None
- """Name of virtual switch used for guest traffic in the cluster. This would override zone wide traffic label setting."""
- self.guestvswitchname = None
- """Type of virtual switch used for guest traffic in the cluster. Allowed values are, vmwaresvs (for VMware standard vSwitch) and vmwaredvs (for VMware distributed vSwitch)"""
- self.guestvswitchtype = None
- """the password for the host"""
- self.password = None
- """Name of virtual switch used for public traffic in the cluster. This would override zone wide traffic label setting."""
- self.publicvswitchname = None
- """Type of virtual switch used for public traffic in the cluster. Allowed values are, vmwaresvs (for VMware standard vSwitch) and vmwaredvs (for VMware distributed vSwitch)"""
- self.publicvswitchtype = None
- """the URL"""
- self.url = None
- """the username for the cluster"""
- self.username = None
- """the ipaddress of the VSM associated with this cluster"""
- self.vsmipaddress = None
- """the password for the VSM associated with this cluster"""
- self.vsmpassword = None
- """the username for the VSM associated with this cluster"""
- self.vsmusername = None
- self.required = ["clustername","clustertype","hypervisor","podid","zoneid",]
-
-class addClusterResponse (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/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addHost.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addHost.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addHost.py
deleted file mode 100644
index c1a96e0..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addHost.py
+++ /dev/null
@@ -1,145 +0,0 @@
-# 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.
-
-
-"""Adds a new host."""
-from baseCmd import *
-from baseResponse import *
-class addHostCmd (baseCmd):
- def __init__(self):
- self.isAsync = "false"
- """hypervisor type of the host"""
- """Required"""
- self.hypervisor = None
- """the password for the host"""
- """Required"""
- self.password = None
- """the Pod ID for the host"""
- """Required"""
- self.podid = None
- """the host URL"""
- """Required"""
- self.url = None
- """the username for the host"""
- """Required"""
- self.username = None
- """the Zone ID for the host"""
- """Required"""
- self.zoneid = None
- """Allocation state of this Host for allocation of new resources"""
- self.allocationstate = None
- """the cluster ID for the host"""
- self.clusterid = None
- """the cluster name for the host"""
- self.clustername = None
- """list of tags to be added to the host"""
- self.hosttags = []
- self.required = ["hypervisor","password","podid","url","username","zoneid",]
-
-class addHostResponse (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
- """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
- """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/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addImageStore.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addImageStore.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addImageStore.py
deleted file mode 100644
index c8ea3e2..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addImageStore.py
+++ /dev/null
@@ -1,58 +0,0 @@
-# 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.
-
-
-"""Adds backup image store."""
-from baseCmd import *
-from baseResponse import *
-class addImageStoreCmd (baseCmd):
- def __init__(self):
- self.isAsync = "false"
- """the image store provider name"""
- """Required"""
- self.provider = None
- """the details for the image store. Example: details[0].key=accesskey&details[0].value=s389ddssaa&details[1].key=secretkey&details[1].value=8dshfsss"""
- self.details = []
- """the name for the image store"""
- self.name = None
- """the URL for the image store"""
- self.url = None
- """the Zone ID for the image store"""
- self.zoneid = None
- self.required = ["provider",]
-
-class addImageStoreResponse (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/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addIpToNic.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addIpToNic.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addIpToNic.py
deleted file mode 100644
index 5810fe8..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addIpToNic.py
+++ /dev/null
@@ -1,44 +0,0 @@
-# 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.
-
-
-"""Assigns secondary IP to NIC"""
-from baseCmd import *
-from baseResponse import *
-class addIpToNicCmd (baseCmd):
- def __init__(self):
- self.isAsync = "true"
- """the ID of the nic to which you want to assign private IP"""
- """Required"""
- self.nicid = None
- """Secondary IP Address"""
- self.ipaddress = None
- self.required = ["nicid",]
-
-class addIpToNicResponse (baseResponse):
- def __init__(self):
- """the ID of the secondary private IP addr"""
- self.id = None
- """Secondary IP address"""
- self.ipaddress = None
- """the ID of the network"""
- self.networkid = None
- """the ID of the nic"""
- self.nicid = None
- """the ID of the vm"""
- self.virtualmachineid = None
-
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addLdapConfiguration.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addLdapConfiguration.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addLdapConfiguration.py
deleted file mode 100644
index 993108e..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addLdapConfiguration.py
+++ /dev/null
@@ -1,39 +0,0 @@
-# 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.
-
-
-"""Add a new Ldap Configuration"""
-from baseCmd import *
-from baseResponse import *
-class addLdapConfigurationCmd (baseCmd):
- def __init__(self):
- self.isAsync = "false"
- """Hostname"""
- """Required"""
- self.hostname = None
- """Port"""
- """Required"""
- self.port = None
- self.required = ["hostname","port",]
-
-class addLdapConfigurationResponse (baseResponse):
- def __init__(self):
- """hostname"""
- self.hostname = None
- """port"""
- self.port = None
-
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addNetworkDevice.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addNetworkDevice.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addNetworkDevice.py
deleted file mode 100644
index efd5b08..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addNetworkDevice.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# 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.
-
-
-"""Adds a network device of one of the following types: ExternalDhcp, ExternalFirewall, ExternalLoadBalancer, PxeServer"""
-from baseCmd import *
-from baseResponse import *
-class addNetworkDeviceCmd (baseCmd):
- def __init__(self):
- self.isAsync = "false"
- """parameters for network device"""
- self.networkdeviceparameterlist = []
- """Network device type, now supports ExternalDhcp, PxeServer, NetscalerMPXLoadBalancer, NetscalerVPXLoadBalancer, NetscalerSDXLoadBalancer, F5BigIpLoadBalancer, JuniperSRXFirewall"""
- self.networkdevicetype = None
- self.required = []
-
-class addNetworkDeviceResponse (baseResponse):
- def __init__(self):
- """the ID of the network device"""
- self.id = None
-
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/65b12f45/tools/marvin/build/lib/marvin/cloudstackAPI/addNetworkServiceProvider.py
----------------------------------------------------------------------
diff --git a/tools/marvin/build/lib/marvin/cloudstackAPI/addNetworkServiceProvider.py b/tools/marvin/build/lib/marvin/cloudstackAPI/addNetworkServiceProvider.py
deleted file mode 100644
index b00c204..0000000
--- a/tools/marvin/build/lib/marvin/cloudstackAPI/addNetworkServiceProvider.py
+++ /dev/null
@@ -1,53 +0,0 @@
-# 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.
-
-
-"""Adds a network serviceProvider to a physical network"""
-from baseCmd import *
-from baseResponse import *
-class addNetworkServiceProviderCmd (baseCmd):
- def __init__(self):
- self.isAsync = "true"
- """the name for the physical network service provider"""
- """Required"""
- self.name = None
- """the Physical Network ID to add the provider to"""
- """Required"""
- self.physicalnetworkid = None
- """the destination Physical Network ID to bridge to"""
- self.destinationphysicalnetworkid = None
- """the list of services to be enabled for this physical network service provider"""
- self.servicelist = []
- self.required = ["name","physicalnetworkid",]
-
-class addNetworkServiceProviderResponse (baseResponse):
- def __init__(self):
- """uuid of the network provider"""
- self.id = None
- """true if individual services can be enabled/disabled"""
- self.canenableindividualservice = None
- """the destination physical network"""
- self.destinationphysicalnetworkid = None
- """the provider name"""
- self.name = None
- """the physical network this belongs to"""
- self.physicalnetworkid = None
- """services for this provider"""
- self.servicelist = None
- """state of the network provider"""
- self.state = None
-