327 Commits

Author SHA1 Message Date
Prasanna Santhanam
a7d7f85e40 Marvin doesn't require python 2.7, the tests do
To compile marvin using maven any standard python interpreter above 2.4
is sufficient. The tests under test/integration will need 2.7 to run.

Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1354929362 -0800
2012-12-07 17:17:02 -08:00
Prasanna Santhanam
d1e49a0500 Marvin: testClient close calls try to close the dbConnection
dbConnections are auto-managed do not need explicit closing

Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1354919683 -0800
2012-12-07 14:35:53 -08:00
Prasanna Santhanam
21819dafb5 Summary: Devcloud tests for vm life cycle
Detail: VM Life cycle tests needed minor changes to run them against a
devcloud - basic zone, local storage envrioment.

Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1354760111 -0800
2012-12-05 18:15:11 -08:00
Prasanna Santhanam
2c561dd3a8 Summary: Removing ostypeid dependencies from tests
Detail: The listOsTypes API will filter when given the ostype name as
centOS 5.3. There is now no need to hardcode the uuids into the test

Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1354228309 -0800
2012-11-29 15:41:56 -08:00
Chip Childers
2ee9253c78 CLOUDSTACK-514: Adding https and api path support to Marvin.
This is the first part of fixing CLOUDSTACK-514, and is hopefully
backward compatible with previous use of Marvin.  I added two new
parameters to the cloudstackConnection module, protocol and path.
Both have been defaulted to the previously *assumed* values.

Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-11-19 12:06:18 -05:00
Rohit Yadav
8ea2cc4e57 marvin: raise error so cli can pick it up
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-16 22:18:32 +05:30
Prasanna Santhanam
c290bf6cd0 Summary: xml reports library changes
Detail: unittest-xml-reporting 1.4 - the verbose option is available via
settings.py.

Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1352448075 +0530
2012-11-09 13:31:15 +05:30
Rohit Yadav
d72d3ee22b marvin: check and use logger
Checks and only then calls logger

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-10-31 23:18:06 +05:30
Prasanna Santhanam
802ddd43ca Summary: Moving the test integration libraries into marvin for CLI work
Detail: Integration tests use these libraries (base,utils,common) for
simplifying the usage of the API. These define the verbs of each
entity's usage (create, delete, add etc). For the CLI to present the
simplified API we'll leverage the integration libraries.

+ Fixes to setup-test-data.sh - kvm and xen each use a different version
of the built-in Cent OS template, 5.5 and 5.3 namely.

At a later point the setup-test-data script needs to be obsoleted.
ostypeids in tests should directly be determined from listOsTypes API
calls

Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1351520707 +0530
2012-10-29 20:23:02 +05:30
Prasanna Santhanam
241daa53c6 Summary: Mavenize marvin on master
Detail: Maven will now compile, install and deploy marvin using the
developer profile
    $ mvn -P developer

compile - compiles the cloudstackAPI
package - packages the marvin source distributable
deploy  - installs using pip (reqd python 2.7) the Marvin package in to
site-packages/

BUG-ID : CLOUDSTACK-378
Reported-by: Prasanna Santhanam <tsp@apache.org>
Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1351319186 +0530
2012-10-27 11:56:25 +05:30
Prasanna Santhanam
6f2792eb4b Summary: Close the ssh transport from paramiko
Detail: SSH Transport to be explicitly closed in marvin.remoteSSHClient
Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1351002168 +0530
2012-10-23 19:52:48 +05:30
Prasanna Santhanam
fd5421670d Remove redundant code in try..except block
Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1350839262 +0530
2012-10-21 22:39:21 +05:30
Edison Su
d1af01fbc8 add marvin project 2012-10-21 00:01:48 -07:00
Prasanna Santhanam
9a90dc227e Distutils install_requires doesn't resolve dependencies
Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1350733702 +0530
2012-10-20 17:18:22 +05:30
Prasanna Santhanam
355b152993 Summary: Replace pymysql in marvin with a stable mysql-connector-python
Detail: mysql-connector-python developed by Oracle will replace the MIT
licensed pymysql. mysql-connector-python is developed by Oracle and is
more favourable, faster and actively developed.

With this commit - the dbConnection object is also auto managed by
contextlib. Each transaction requests its own connection rather than
sharing one single connection for all the test runs.

BUG-ID : None
Reviewed-by: timeit comparison of pymysql and mysql-connector-python
Reported-by: dbExceptions and timeouts from Marvin test runs
Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1350732083 +0530
2012-10-20 16:57:06 +05:30
Prasanna Santhanam
7460b01893 Summary: provide deployment config access to marvin's testcase
Detail:
Sometimes tests need ssh access to the management server to perform
verification such as:

1. Pings from mgmt_server to agents
2. snapshots exist on secondary storage - mountable from mgmt server

For these the tests will need access to the config of the deployment and
the ip address of the mgmt server.

Egs: integration/component/test_egress.py and integration/component/test_snapshots.py

BUG-ID : CLOUDSTACK-377
Reported-by: Prasanna Santhanam
Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1350624903 +0530
2012-10-19 11:06:53 +05:30
Chip Childers
2ed1c53e0e Adding DISCLAIMER.txt to the marvin tool.
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-10-17 12:27:00 -04:00
Chip Childers
6e60a07566 CLOUDSTACK-326: Corrected marvin license file to be full ASLv2 license text
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-10-12 16:41:17 -04:00
Chip Childers
6151a29949 CLOUDSTACK-326: Combining Marvin Sandbox README with README.tools.md
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-10-12 16:11:17 -04:00
Prasanna Santhanam
c86c5d2cc0 Uniting all the READMEs from tools and test
There are various READMEs under Cloudstack. This makes it confusing for
finding the purpose of each directory and tool within the project. All
the necessary information can now be found in the top-level README.tools
that is markdown editable. For the most updated information however it
is best to provide a wiki link to the tool you have added. Each tool
lies in a seperate section, please keep formatting unchanged.
2012-10-12 17:01:20 +05:30
Prasanna Santhanam
780468659f uniting the READMEs
Many READMEs spread over the integration and marvin test related
information can now be found in the single top-level directory
2012-10-12 16:07:03 +05:30
Prasanna Santhanam
6e9d7aa45b property files and build file fixes for simulator db changes 2012-09-17 17:33:26 +05:30
Sebastien Goasguen
2329ee146a Correcting two instances of wiki.c.o to point to cwiki.a.o
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2012-09-13 19:35:53 +05:30
Prasanna Santhanam
02d33344bd elasticIp added as virtual network in basic zone 2012-09-12 18:48:34 +05:30
Prasanna Santhanam
3eb75b57af IP ranges for public network in an EIP enabled zone 2012-09-12 18:48:33 +05:30
Prasanna Santhanam
9d2cf01717 Changes to accomadate the localstorage setting at zone level 2012-09-12 18:48:33 +05:30
Prasanna Santhanam
8ee8fdcc17 In basic zones enable the sg provider 2012-09-12 18:48:33 +05:30
Prasanna Santhanam
cc6dae1eb4 There can be only one physical network in basic zone 2012-09-12 18:48:33 +05:30
Prasanna Santhanam
c4f91b2914 Write results to stdout when result log is not specified 2012-09-11 11:06:23 +05:30
Sebastien Goasguen
edcceb60de Clean up docs in /tools/marvin:
removed /docs and pointed to new wiki page in README
2012-09-09 10:51:36 +05:30
Prasanna Santhanam
038608b54f Ignore comments in config files during loading 2012-08-09 17:37:43 +05:30
Prasanna Santhanam
f72146e96f Changes to simulator setup files
for provider + traffic type changes in marvin
2012-08-09 15:31:58 +05:30
Prasanna Santhanam
aa8fee4fac Correcting the example configurations for advanced and basic zone
Zones will now be have to configured with physical networks, their
traffic types and the providers with the devices supporting the service
2012-08-09 15:31:51 +05:30
Prasanna Santhanam
614131a9de support for traffic type and external devices configuration
* traffictypes = 'Guest', 'Management', 'Public', 'Storage'
    - corresponding nic labels are given in the labeldict
* External device providers JuniperSrx, NetScaler and F5 load balancing
can now be configured

* examples are shown in the configGenerator.py script for basic,
advanced and EIP/ELB based zones

Conflicts:

	tools/marvin/marvin/configGenerator.py
	tools/marvin/marvin/deployDataCenter.py
2012-08-09 15:31:28 +05:30
Prasanna Santhanam
6ffafde33a Missing LICENSE headers for sandbox and __init__.py's 2012-08-04 17:29:47 +05:30
Prasanna Santhanam
60cd65382f Removing pymysql and including it as setup dependency 2012-08-04 17:17:11 +05:30
Prasanna Santhanam
7288eca129 failonerror for some marvin targets 2012-07-31 12:17:33 +05:30
Prasanna Santhanam
8a2135e3fa VpcVirtualRouter is not enabled always. 2012-07-30 15:32:38 +05:30
Prasanna Santhanam
046f2d786f License headers for the marvin plugin and the setup checker 2012-07-30 15:32:35 +05:30
Prasanna Santhanam
ed7f72b629 Enable VpcVirtualRouter when deploying advanced zone 2012-07-30 15:32:35 +05:30
Prasanna Santhanam
7662426769 All responsibilty for running through nose belongs to the marvin-nose plugin
Conflicts:

	tools/marvin/marvin/NoseTestExecuteEngine.py
2012-07-30 15:32:34 +05:30
Prasanna Santhanam
13857700d3 Plugin-izing the testcase runner
* setup.py is the installer for marvin-nose plugin
* marvin-nose drive all tests using nose with other plugins like xunit, coverage, multiprocess execution etc
* -n option deprecated. All tests driven by nosetests --with-marvin
2012-07-30 15:32:34 +05:30
Prasanna Santhanam
ed113ca844 Correcting the imports for HTTPException 2012-07-30 15:32:34 +05:30
Prasanna Santhanam
9af88ad44d Plugin support to pick test cases using marvin.
Using this plugin Nose will drive tests and this also allows using other
nose plugins. Cmd Line plugin support to be added

Conflicts:

	tools/marvin/marvin/NoseTestExecuteEngine.py
2012-07-30 15:32:34 +05:30
Prasanna Santhanam
0ab7a9289f Support added for attrib, multiprocess and Xunit coverage plugins
Conflicts:

	tools/marvin/marvin/NoseTestExecuteEngine.py
2012-07-30 15:32:34 +05:30
Prasanna Santhanam
84b69e6e0a injecting the testclient during Test Loader process
Without this the tests do not have access to the client APIs
2012-07-30 15:32:33 +05:30
Prasanna Santhanam
db5687d691 enhancement related to -x to take directory name/path to store xml reports
Conflicts:

	tools/marvin/marvin/TestCaseExecuteEngine.py
2012-07-30 15:32:24 +05:30
Prasanna Santhanam
91b6e09e6d The NoseTestLoader to pick cloudStackTestCase as tests 2012-07-30 15:27:55 +05:30
Prasanna Santhanam
9443734f1d setup.properties for basic zone environments 2012-07-30 15:27:55 +05:30
Prasanna Santhanam
aa4ff87812 Post configuration tests to check
- if system VMs are up and running
- if built-in template is downloaded and ready to launch
2012-07-30 15:27:55 +05:30