Commit Graph

29 Commits

Author SHA1 Message Date
SrikanteswaraRao Talluri 1605e55ebd CLOUDSTACK-5449: fix the log creation failure case and added an option
for user to provide --log-folder-path=

Signed-off-by: SrikanteswaraRao Talluri <talluri@apache.org>
2013-12-11 01:52:34 +05:30
Santhosh Edukulla 391395f140 CLOUDSTACK-5413: Fixed bug CLOUDSTACK-5413 2013-12-09 19:46:53 +05:30
Santhosh Edukulla 6b5402bbff CLOUDSTACK-5269: Fix nose failures. 2013-12-09 19:41:49 +05:30
Santhosh Edukulla d21058c25e Enhanced few features under Marvin
Added few enhancements to marvin.
Added new module for Logging Facility to marvin.
Added new Init facility to marvin.
Currently, there are multiple ways we are doing logging
Removed few unwanted logging cases.
Removed few command line switch options for logging.
The new way of logging now provides consolidated logging
under one single folder timestamped under the configured
folder path.
Removed parsing configuration from deploydata center
Added parsing,start logging and deploy as part of init
Added new error handling facility to catch unknown exception from
test cases. Currently, lot of scripts are throwing unknown
exceptions, add a handler to plugin to dump them to a file

ToDO:
Will do clean up in phase2 for this patch.
Separate deployDatacenter from creating test client.
Clean up configGenerator
2013-12-06 12:05:22 +05:30
Prasanna Santhanam 6a904d2f9b fix pep8
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-10-29 16:19:48 +05:30
Prasanna Santhanam ddf4dfa60a marvin: enable the nose-marvin plugin using the --with-marvin directive
enable the marvin plugin when the --with-marvin directive is given to nose. The
enableOpt value is set from the command line directive and self.enabled
(True|False) determines whether marvin's tests will run.  By default
non-default plugins like marvin will be disabled"

This fixes regression from 03830c5

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-10-29 15:46:50 +05:30
Santhosh Edukulla 03830c570e Adding few changes and cleaning up the code
- Added few common naming conventions
- Cleanedup code
- Added a simple utility function

Signed-off-by: Santhosh Edukulla <Santhosh.Edukulla@citrix.com>
2013-10-28 12:49:41 +05:30
Santhosh Edukulla b4ceefa469 Adding readable start and end time stamps
Signed-off-by: Santhosh Edukulla <Santhosh.Edukulla@citrix.com>
2013-10-28 11:29:27 +05:30
Santhosh Edukulla 0780604503 CLOUDSTACK-4885: basic timing profiler for tests
This will add time taken in seconds along with start and end timestamp
logging facility for test cases.Currently this is not
available for console logs

Signed-off-by: Santhosh Edukulla <Santhosh.Edukulla@citrix.com>
2013-10-24 14:52:53 +05:30
Prasanna Santhanam f37417e365 Fix pep8
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
(cherry picked from commit 1060997bcd40282656503a15191abd1814bfe064)
2013-08-05 14:06:51 +05:30
Prasanna Santhanam d31fe92169 Remove unused code
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-08-01 16:10:57 +05:30
Prasanna Santhanam 476bd93e43 Cleanup the marvin logger
It is useful to have the same logger used in the marvinplugin into the
testcase. The testcase can then append its name to the logger making
the logs specify exactly which test is executing when the logs are
generated

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
(cherry picked from commit c84a2d8801b7898dbfee18e17950cb9fca7d36e7)
2013-07-31 17:20:35 +05:30
Prasanna Santhanam 8e72a728b7 Fix pep8 that broken marvin build 10 days ago :(
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-07-25 23:00:41 +05:30
Prasanna Santhanam 4956e46884 CLOUDSTACK-3075: When only setUpClass() is creating account
Missed scenario for appending test case names to accounts when
setUpClass calls the account.creation integration library.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
(cherry picked from commit 9a5d2e9e36411ac5df17baca13874e0575233dac)
2013-07-22 19:36:27 +05:30
Prasanna Santhanam a75a62a318 CLOUDSTACK-3075: Test names appended with <module>-<testname>
Prevent chained appending of the testclass/testnames to the accounnt
names.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
(cherry picked from commit fb75f51755)
2013-07-22 12:50:28 +05:30
Prasanna Santhanam 2d55914e70 CLOUDSTACK-3075: append module/suite name
If the test doesn't create the account within the testXxx method we miss
the trail of the accountname because the setUpClass() created the
account. Append the module name in advance in such cases to identify the
account that was created in the suite before any tests were executed.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
(cherry picked from commit 6a8608a916eec2551797e93634d9716e9d15c783)
2013-07-22 12:19:03 +05:30
Prasanna Santhanam 2000005f90 CLOUDSTACK-3075: append test case name to account
Accounts will be prepended by the testcase name to ease analysis
post-test runs.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
(cherry picked from commit 17af34fd19)
2013-07-20 15:53:50 +05:30
Daan Hoogland cd221fc33e marvinPlugin.py cleansed 2013-06-20 12:57:58 -04:00
Prasanna Santhanam 746af2bb6f CLOUDSTACK-3049: marvin-nose causes other plugins to fail when not enabled
enabled by default. Running regular nosetests with plugins other than
marvin will fail because of this. Failure manifests itself as nose
looking for the config file when using the marivn-nose plugin

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-06-18 15:20:58 +05:30
Prasanna Santhanam 82fd9382b7 marvin+sync: apidiscovery sync and regenerate for marvin
Use codegenerator to sync marvin cloudstackAPIs from a given cloudstack
endpoint. Sometimes you want to synchronize marvin with the new APIs
that you have introduced locally or any alterations you may have made
the API. In such cases you can sync marvin's libraries as follows.

$sudo mvn -Pdeveloper,marvin.sync -Dendpoint=localhost -pl :cloud-marvin

This needs sudo privileges since it will call on pip to upgrade the existing
marvin installation on your machine. The endpoint is where your management
server is running and is exposing the API discovery plugin. A listApis call is
made and the resulting json deserialized back into marvin's library entities.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-04-02 19:56:28 +05:30
Prasanna Santhanam 5d67c98e5b marvin+apidiscovery: Extend API discovery plugin
API discovery plugin will return embedded entities for marvin to
discovery and generate it's API classes.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-04-02 18:31:30 +05:30
Prasanna Santhanam 8466ff1e1f Marvin: Provide a userApiClient for executing with user permissions
The getUserApiClient attribute in cloudstackTestClient provides a user level
api client that executes all API calls with permissions of a given user instead
of the default admin
2012-12-09 22:15:30 -08:00
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 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
Prasanna Santhanam c4f91b2914 Write results to stdout when result log is not specified 2012-09-11 11:06:23 +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 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 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