105 Commits

Author SHA1 Message Date
Prasanna Santhanam
323c3211c8 run the test lifecycle only when config is specified 2013-03-20 11:07:49 +05:30
Prasanna Santhanam
02b3cd7de9 marvin logging: write to tmp to adjust for mac-osx
/var/log is not available on OSX. This breaks the simulator run.
2013-03-20 10:47:15 +05:30
Prasanna Santhanam
792db8b5cc simulator: removing cyclic dependency from simulator
The database creator caused a cyclic dependecny in the simulator which
is removed with this commit. Additionally the simulator profile is now
merged with developer profile and a test for server health is included

Steps to run:
$ mvn -Pdeveloper clean install
$ mvn -Pdeveloper -pl developer -Ddeploydb
$ mvn -Pdeveloper -pl developer -Ddeploydb-simulator
$ mvn -pl client jetty:run

To deploy an adv. zone and test the server health:
$ mvn -Pdeveloper,marvin -Dmarvin.config=`find . -name simulator.cfg` -pl :cloud-marvin test

Conflicts:
	pom.xml

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-03-20 10:36:43 +05:30
Chiradeep Vittal
6a1ecae552 Ensure RAT does not report marvin generated files as noncompliant in developer environment
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-03-02 16:49:02 +05:30
Chiradeep Vittal
f30da781f8 Reduce RAT errors in developer environment due to generated python files
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-02-27 13:44:50 +05:30
Rohit Yadav
80d58b6c73 CLOUDSTACK-1317: Bump CloudStack package version to 4.2.0-SNAPSHOT in all poms
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-02-20 16:42:56 +05:30
Prasanna Santhanam
05437d0e97 maven pom: put apache cloudstack tools together in umbrella pom
minor pom refactor to put all the tools under one placeholder pom.
Also adds a profile for marvin to run deployDataCenter via mvn options.

$mvn -Pdeveloper,marvin -pl :cloud-marvin -Dmarvin.config=<path/to/config>

OR
$cd tools/marvin
$mvn -Pmarvin -pl :cloud-marvin -Dmarvin.config=path/to/config

will deploy the datacenter using the marvin.config property's value

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-02-15 20:53:41 +05:30
Prasanna Santhanam
e06a8569a2 propagate storagetype fix from commit e49b3b to diskOffering
Author: Prasanna Santhanam <tsp@apache.org>
Date:   Sun Dec 9 23:13:24 2012 -0800

    marvin: storagetype reference only when attr present

    reference the storagetype only when present. storagetype is reqd
    only for devcloud style tests

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-01-31 16:03:43 +05:30
Marcus Sorensen
15906c03ca Summary: add/remove/update default nics feature
Description: Adds API calls updateDefaultNicForVirtualMachine,
addNicToVirtualMachine, and removeNicFromVirtualMachine. These are
intended to allow a user to modify a VM's configuration post
deployment, to adjust the networks to which the VM belongs.

BUG-ID: CLOUDSTACK-645
Submitted-by: Brian Angus <blangus@betterservers.com>
Submitted-by: Ryan Dietrich <ryan@betterservers.com>
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1359494800 -0700
2013-01-30 17:43:21 -07:00
Marcus Sorensen
975021dda1 Summary: adding resizeVolume api call
Detail: This merges the resizevolume feature branch, which provides the
ability to migrate a disk between disk offerings, thereby changing its
size, or specifying a new size if current disk offering is custom.

BUG-ID: CLOUDSTACK-644
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1358358209 -0700
2013-01-16 17:43:35 -07:00
Prasanna Santhanam
bfd02c5db3 traffic_type not traffictype
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-01-15 19:36:30 +05:30
Prasanna Santhanam
04b14ab03f Marvin: physical network label not carried through in the API
The label associated with the hypervisor nic to isolate traffic types by
Guest/Mgmt/Public/Storage was not passed in the marvin.traffictype
object and sent through to mgmt server resulting in traffic types not
being applied.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-01-15 19:29:27 +05:30
Marcus Sorensen
0293d3d665 Summary: Allow passing 'storagetype' to DiskOffering.create in marvin base.py
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1358185899 -0700
2013-01-14 10:51:39 -07:00
Prasanna Santhanam
8d3cbc82d8 marvin: fixes for handling multiple phy. networks
zones do not qualify for vlans but phy networks should carry the
underlying vlan information. moving the vlan down to physical_network
in configGenerator.py.

also the sandbox example has been corrected to reflect this change
and includes an illustration of using traffic types with labels.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
Reported-By: Marcus Sorenson <mlsorenson@apache.org>
2013-01-13 13:42:02 +05:30
John Burwell
e4583ced2e S3-backed Secondary Storage 2013-01-02 10:28:47 -08:00
Prasanna Santhanam
bab974c3bc marvin : cloudstack-version is not reqd for json load
To build back cloudstack response we don't need to load the
'cloudstack-version' string, only the response
2012-12-26 19:22:17 -08:00
John Burwell
264a0670a8 - [CLOUDSTACK-509] S3-backed Secondary Storage - Adds S3 configuration support to Marvin - Moves configuration of global options to occur creation of zones since the values of global options impact the configuration and zone enablement processes 2012-12-19 16:09:25 -08:00
John Burwell
14f589702a CLOUDSTACK-660: Fixes traffic label configuration in Marvin
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-12-18 13:25:24 -05:00
Edison Su
b70c1a5a84 Backs NFS-based secondary storage with an S3-compatible object store. Periodically, a reaper thread synchronizes templates and ISOs stored on a NFS secondary storage mount with a configured S3 object store. It also pushes snapshots to the object store when they are created and downloads them in other zones on-demand. In addition to permitting the use of commodity or IaaS storage solutions for static assets, it provides a means of automatically synchronizing template and ISO assets across multiple zones. 2012-12-13 23:18:37 -08:00
Prasanna Santhanam
ceea53cd8f marvin: remoteSSHClient logger handler
send the logs to the console stream
2012-12-13 19:22:49 -08:00
Prasanna Santhanam
fb5ea25a4d marvin: remoteSSHclient logs
Adding logging for commands sent, and executed with results returned
frmo the remote host.
2012-12-13 15:58:36 -08:00
Prasanna Santhanam
f05cd36634 marvin: assertions with messages for common.py 2012-12-13 15:25:39 -08:00
Prasanna Santhanam
fd6be7a37b marvin: establishing some defaults
when logging in just use defaults if no service dict values are provided
2012-12-13 14:09:20 -08:00
Prasanna Santhanam
864ab37e13 marvin lib: changes for accomodating vpc related apis
new apis for the integration lib for VPCOffering, VPC, NetworkACL Apis.
Also some extra checks from for avoiding KeyErrors in the Services dict.
2012-12-12 11:07:28 -08:00
Prasanna Santhanam
e49b3b27de marvin: storagetype reference only when attr present
reference the storagetype only when present. storagetype is reqd only for
devcloud style tests
2012-12-09 23:13:24 -08:00
Prasanna Santhanam
7d4e65740b marvin: assertion check when fetching featured templates 2012-12-09 22:15:38 -08:00
Prasanna Santhanam
3ba8dc455f Smoke Tests: incorrect self reference in setUpClass
should be cls.apiClient and not self.apiClient
2012-12-09 22:15:37 -08:00
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
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