Commit Graph

531 Commits

Author SHA1 Message Date
Rohit Yadav 233c0adcf3 cli: Fix common.py's cfg fields grouped under similarites like ui, core, user etc.
Changes config path to ~/.cloudmonkey this will break cfg path but all configs are
still backward compatible. We need folder to put a lot of stuff that is coming
for ex. themes and plugins

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-28 17:52:40 -08:00
Rohit Yadav 0720d25e12 cli: Get rid of clint, use Pygments
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-28 17:51:34 -08:00
Rohit Yadav ad3692cbba cli: Add pygments based lexical output processing
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-28 17:48:49 -08:00
Rohit Yadav 59d01bfe20 cli: Show filter only when a subject is specified in autocompletion
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
(cherry picked from commit 7ea83b82e6)

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-28 16:31:12 -08:00
Rohit Yadav 7ea83b82e6 cli: Show filter only when a subject is specified in autocompletion
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-28 16:30:04 -08:00
Chip Childers afd7de7e33 CLOUDSTACK-1076: Legal documentation improvements to separate source
distributions from packaged distributions.

* Remove all binary dependency license and notice info from the top
level LICENSE and NOTICE files in our source tree
* Create two copies of the Whisker descriptor.xml file (stored in
tools/whisker), one that can be used to regenerate the source distro's
LICENSE and NOTICE files, and one that can generate an appropriate
LICENSE and NOTICE file for a packaged version of the software.
* Generate and commit the package LICENSE and NOTICE file to the
tools/whisker folder.

Signed-off-by: Chip Childers <chip.childers@gmail.com>
2013-01-28 10:48:53 -05:00
Rohit Yadav 2fb346ab62
Merge branch 'master' into javelin 2013-01-27 05:20:49 -08:00
Rohit Yadav 6c527ffbba cli: Fix cachegen aand cloudmonkey to generate api verbs, revert last commit
Fixes cachegen and reverts "mvn: fix cloudmonkey build"

This reverts commit 6d3de41d42.
2013-01-27 04:18:31 -08:00
Prasanna Santhanam 6d3de41d42 mvn: fix cloudmonkey build
removing cachegen.py that is no longer required for execution

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-01-27 14:49:50 +05:30
Rohit Yadav ddb794d960 cli: generate verbs on the fly, fix autocompletion whitespace bug
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-26 17:14:09 -08:00
Rohit Yadav 356866c72b Merge branch 'master' into javelin
- Fixed new join dao impls as spring components
- Fixed component context xml to load api rate limit checker
- Fixed root pom.xml for duplicate plugin
- Fixed list data centers method
- Fixed following conflicts:
	api/src/org/apache/cloudstack/api/command/admin/network/CreateNetworkOfferingCmd.java
	api/src/org/apache/cloudstack/api/command/user/offering/ListServiceOfferingsCmd.java
	api/src/org/apache/cloudstack/api/command/user/template/DeleteTemplateCmd.java
	api/src/org/apache/cloudstack/api/command/user/template/ExtractTemplateCmd.java
	plugins/api/discovery/src/org/apache/cloudstack/discovery/ApiDiscoveryServiceImpl.java
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/api/query/QueryManagerImpl.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/server/ManagementServerImpl.java
	server/src/com/cloud/storage/swift/SwiftManagerImpl.java

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-24 19:18:53 -08:00
Rohit Yadav 6f90a86b13 cli: fix cloudmonkey's pipe-ability
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-24 14:47:45 -08:00
Rohit Yadav 71257d6bb4 cli: give filter option only when output 'tabularized' is enabled
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-24 11:28:49 -08:00
Rohit Yadav afb7e289fe cli: Fix development status to stable. cloudmonkey v1 at its most stable form
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-23 18:15:51 -08:00
Rohit Yadav 3c335bd883 cli: Fix asyncblock to search for correct key instead of hardcoded index
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-23 14:57:41 -08:00
Prasanna Santhanam 75b059e6e4 cloudmonkey: misses a couple of verbs for 'lock' and 'disassociate'
The following api commands have no cloudmonkey equivalent because
cloudmonkey grammar misses the related verbs.

~/tools/cli/cloudmonkey/marvin/cloudstackAPI(branch:master*) $ ls disassociateIpAddress.py
disassociateIpAddress.py

------------------------------------------------------------
~/tools/cli/cloudmonkey/marvin/cloudstackAPI(branch:master*) $ ls lock*
lockAccount.py lockUser.py
------------------------------------------------------------

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-01-23 16:05:41 +05:30
Rohit Yadav 7b11b71d81 maven: create dependency, deploydb on developer first and then on devcloud
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
(cherry picked from commit afb2770012)

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-22 16:32:57 -08:00
Rohit Yadav 1a695b84b4 tools: Fix devcloud artifact name, avoid confusion
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-22 16:32:51 -08:00
Rohit Yadav afb2770012 maven: create dependency, deploydb on developer first and then on devcloud
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-22 16:30:35 -08:00
Rohit Yadav a736f6b44f tools: Fix devcloud artifact name, avoid confusion
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-22 16:19:45 -08:00
Chip Childers 45d21c3202 Devcloud config for basic zone + management server.
Added a devcloud config that supports having the management
server run within devcloud, using the basic zone setup.

Signed-off-by: Chip Childers <chip.childers@gmail.com>
2013-01-22 16:44:34 -05:00
Rohit Yadav 22e70f2c8e devcloud: Update a working p.a.o url in devcloud.sql
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-22 10:55:05 -08:00
Alex Huang 10d9c019a9 All merge conflicts resolved 2013-01-18 12:14:57 -08: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
Marcus Sorensen 310d35f88e Summary: Change template details in devcloud-kvm sql file
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1358357054 -0700
2013-01-16 10:24:14 -07:00
Marcus Sorensen 354c56a988 Summary: Adding apache license headers to various devcloud configs
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1358284904 -0700
2013-01-15 14:21:44 -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 0412cb8d92 Summary: Edit devcloud cfg files for advanced networking, add comments 2013-01-15 02:16:25 +00:00
Rohit Yadav 7374056493 Revert "apidoc: Remove api discovery from toc"
This reverts commit 66514c00ef.
2013-01-14 20:55:13 -08:00
Rohit Yadav c5984278ca apidoc: Fix apidoc
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-14 19:01:26 -08:00
Marcus Sorensen e97090a920 Summary: Updated devcloud-advanced.cfg and devcloud-kvm-advanced.cfg
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1358208922 -0700
2013-01-14 17:15:22 -07:00
Marcus Sorensen 9139949d96 Summary: Adding devcloud-advanced.cfg marvin config for advanced network testing
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1358193432 -0700
2013-01-14 12:57:12 -07:00
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 5442df2b5e devcloud-kvm: marvin deployment config generator for devcloud-kvm
The devcloud-kvm.py script will take the kvm.properties file to generate
an advanced zone configuration with two physical networks with traffic
labels for 'guest' and 'public' traffic going on 'eth0' and 'eth1'
respectively.

To generate config:
$ python devcloud-kvm.py -i kvm.properties -o devcloud-kvm-advanced.cfg

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-01-13 14:22:56 +05:30
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
Rohit Yadav 38eaa04b98 Pull changes from master into javelin
- Disables simulator plugin, breaks build, available via simulator profile
- Fixes spring injections
- Fix api,acl plugins, ApiServer, ApiDispatcher
- Fix other merge conflicts

Conflicts:
	docs/en-US/external-firewalls-and-load-balancers.xml
	plugins/acl/static-role-based/src/org/apache/cloudstack/acl/StaticRoleBasedAPIAccessChecker.java
	server/src/com/cloud/api/ApiDispatcher.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java
	utils/test/com/cloud/utils/log/CglibThrowableRendererTest.java

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-12 06:02:54 -08:00
Marcus Sorensen d8ebd5e4f9 Summary: Change url of tiny linux in devcloud-kvm.sql
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1357930366 -0700
2013-01-11 11:52:46 -07:00
Rohit Yadav 66514c00ef apidoc: Remove api discovery from toc
Based on eb40d2337e

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-11 09:46:18 -08:00
Prasanna Santhanam eb40d2337e apidoc: fixing the api doc failure
remove api-discovery_commands.properties since the plugin returns the
listApis call as a map directly. not needed for api doc generation.

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-01-11 17:04:30 +05:30
Alex Huang d6f44a4d6a merged from master 2013-01-10 15:55:42 -08:00
Marcus Sorensen 1c59dae708 Summary: Add devcloud-kvm files
Detail: Working on getting a KVM-based devcloud so that development that
requires the KVM hypervisor can be simpler. This adds some setup devcloud files.

Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1357852438 -0700
2013-01-10 14:13:58 -07:00
Alex Huang b6c56736e5 merge from master 2013-01-09 05:20:36 -08:00
Rohit Yadav b59638e5ae apidoc: Fix apidoc building to generate for new plugin as well
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-08 19:59:47 -08:00
Alex Huang 30f2565d98 Merge branch 'api_refactoring' into javelin 2013-01-08 12:36:04 -08:00
Rohit Yadav c13f0199f4 cli: Cosmetic fix for prompt of cloudmonkey
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-06 17:30:00 -08:00
Rohit Yadav f1c15f0c2e cli: Remove unused method, fix welcome msg, prompt
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-05 02:11:45 -08:00
Rohit Yadav c7563cb7bd cli: Show progress during polling for async jobs
If asyncblock is set to true, prints dots as polling requests are made.
When result is obtained, dots are wiped and result is printed.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-04 15:17:06 -08:00
Rohit Yadav 9a66beb658 CLOUDSTACK-717: Fix response json handling in cloudmonkey
- Fixes response handling
- Sorts alphabetically, count and id are on top if available
- Fix colors

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-04 15:17:06 -08:00
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
Rohit Yadav 503a5f2ccd cli: Get rid of deprecated sets, go functional, use filter()
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-21 11:21:22 -08:00
Chip Childers 67f9467c5d CLOUDSTACK-697: Reordered the LICENSE and NOTICE file content (as well as descriptor.xml).
Signed-off-by: Chip Childers <chip.childers@gmail.com>

Conflicts:

	LICENSE
	tools/whisker/descriptor.xml
2012-12-21 10:35:50 -05:00
Rohit Yadav 13944a0e5e cli: Cosmetic fixes for cloudmonkey and setup.py dependency version fix
- Fixes shell class name to CloudMonkey
- Fixes prettyprint version req. to 0.6

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-20 16:34:36 -08:00
Rohit Yadav 8f51c630bd CLOUDSTACK-545: Tabularize cloudmonkey's response using filter=<fields,> argument
- Adds new cloudmonkey config field, tabularize
- If tabularize is set to true, all the list of dict in response are printed as
  table
- The columns of the tables can be filtered using the filter= argument, for ex:
  list domains listall=true filter=id,name,path
- filter arg will take comma separated values, if they have space put them under
  quotes
- Empty filter argument will cause it to print the whole table
- Multiple fields with the same name will cause it to print the column again
- In case there is a typo in the field, that column is skipped. It takes an
  intersection of response dict keys and filter keys provided
- Uses opensource prettytable library to pretty print tabular data

TODOs:
- Handle recursive table printing for nested list of dicts
- Colorize table columns if community wants such a feature

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-20 16:33:08 -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
James Martin 7c56a81bdd devcloud: Fixed regression for network.conf commit 97fe053e2e
Fixes regression for network.conf, commit:
commit 97fe053e2e
Author: Chip Childers <chip.childers@gmail.com>
Date: Mon Aug 13 11:12:01 2012 -0400

Removed ASF license header from network.conf, because XCP doesn't respect comment lines in this file

This seemed to have been re-introduced during the merge in of my patch.  This file has no been removed
completely and is created in-line through the puppet module.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-17 13:16:32 -08:00
Rohit Yadav 0f2a0950b6 cli: extract apicmd response using the apiname+response key
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-16 22:10:54 -08:00
James Martin 0661f9b814 Added fix to force apt to do a "apt-get update" before packages are installed.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-16 12:29:49 -08:00
Rohit Yadav be6acc719a rat: Apply missing license for devcloud puppet file
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 23:41:00 -08:00
Rohit Yadav 89dc874f6f rat: Fix license on recently added new files in tools/devcloud
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 22:23:09 -08:00
Rohit Yadav eddb3dfc92 devcloud: Move build scripts to src/, fix README and rm Gemfile.lock
- Move build scripts to src/
- Fix README.md
- Remove and ignore Gemfile.lock
- Fix tabs in boxer.sh
- Move to src/

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:39 -08:00
James Martin e46aa61068 Removed starting of cloudstck from buildcloudstack
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:39 -08:00
James Martin 6d22df9256 Added script for starting cloudstack. Added python-mysql.connector package. renamed script to buildcloudstack.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:39 -08:00
James Martin 355df8affb made Vagrantfile headless again. puppet manifests now (mostly) pass puppet-lint tests.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:38 -08:00
James Martin 069b8507f3 Adding info.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:38 -08:00
James Martin 4367497000 Updated readme.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:38 -08:00
James Martin a990f7abe4 Successfully building devcloud now. Added option in params.pp for compiling cloudstack or not. moved ebtables stuff to devcloudinitial update build scripts in builddevcloud.sh.erb
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:38 -08:00
James Martin 7340433e51 Iptables file must be puppeted in the xenbox stage so it exists when the network is started in the devcloud phase.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:38 -08:00
James Martin 0555b79e8d Updated to suppor 2 nics.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:38 -08:00
James Martin 7902a69872 Change interfaces as per devcloud2
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:38 -08:00
James Martin f55c230d89 Updated readme, adding rvmrc.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:38 -08:00
James Martin 791bf3c242 Default source should be devcloudbase-xen. Source "devcloud" only used when importing a successfully built devcloud.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:38 -08:00
James Martin b996aff418 Merge in of cleanup work.
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-14 19:36:37 -08: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
Rohit Yadav 1551b982c4 cli: Handle command breaks, ctrl+c, don't break the shell
- Fix handles shell loop
- Handles any control breaks without breaking the shell
- Handles ctrl+c to start afresh on the shell

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-12 15:21:03 -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
Rohit Yadav 51a5919be1 devcloud: fix configuations for default devcloud.sql
Patch moves config. info from cfg file to .sql file. Adds more options so DevCloud
can run on host-only IPs and cidr.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-28 23:32:31 -08:00
Rohit Yadav af12a25a60 devcloud: Update IP as per new DevCloud appliance
The new DevCloud nic (host-only) IP is 192.168.56.10 by default

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-27 18:15:24 -08:00
Rohit Yadav 3e8655b580 cli: Handle badline http error
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-21 18:27:11 +05:30
Rohit Yadav 3b2e715888 cli: string fixes, use the major,minor version numbers same as CloudStack
<cloudstack major>.<cloudstack minor>.<cloudmonkey increment number>

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-20 14:56:34 +05:30
Rohit Yadav f7ba73f7d9 CLOUDSTACK-504: Remove duplicate cloud-set-guest-password script
There are two duplicates for the script cloud-set-guest-password:
> setup/bindir/cloud-set-guest-password.in
> tools/guest_password/cloud-set-guest-password

The one in tools/guest_password is older and all other scripts are in
setup/bindir. Therefore, keeping the former, removing the latter.

BUG-ID : CLOUDSTACK-504
Reviewed-by: Rohit Yadav <bhaisaab@apache.org>
Reported-by: Rohit Yadav

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-20 12:33:35 +05:30
Rohit Yadav 5a2e15f67c CLOUDSTACK-522: Log requests in cloudmonkey's log
Patch fixes cloudmonkey to log requests in the log_file.
Summary:
  - Fixes logger
  - Fixes color print issue
  - Fixes welcome message
  - Makes code pep8 compliant

BUG-ID : CLOUDSTACK-522
Reviewed-by: Rohit Yadav <bhaisaab@apache.org>
Reported-by: Rohit Yadav

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-20 12:20:23 +05:30
Chip Childers f7d2041056 Added exit as a cloudmonkey command, in addition to the existing quit command.
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-11-19 14:39:58 -05:00
Chip Childers 311ef69a77 CLOUDSTACK-514: Added protocol and path support to cloudmonkey.
This is the second half of making cloudmonkey and marvin more
flexible in environments that may have https enabled and / or
a different path for the cloudstack API.

Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-11-19 14:24:10 -05: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 1169464e35 cli: add exec rule to compute precache on mvn compile
Patch adds rules in maven to create precached file using cachegen

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-19 05:28:24 +05:30
Rohit Yadav dc3c263d0f cli: move common code to common module
- Move config, grammar to common
- Cleanup cloudmonkey.py, import from common
- Import precached verbs, if fails init to {}

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-19 05:28:23 +05:30
Rohit Yadav 9070795be0 cli: precache generator
- Adds precache generator for all verbs in grammar
- ignore precache.py

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-19 05:28:23 +05:30
Rohit Yadav 7f08c9db57 cli: rename version to common
The idea is to refactor and put common code in common module

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-19 05:28:23 +05:30
Rohit Yadav bbb2a56acb cli: refactoring, new grammar rules and command fixes
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-17 17:38:18 +05:30
Rohit Yadav 7ce53e89aa cli: make parse in posix mode
Posix mode allows the parse to:
- split by whitespace but value="between quotes are retained or enclose"
- quotes are stripped out

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-17 04:07:35 +05:30
Rohit Yadav aa3ae45e6b CLOUDSTACK-499: Fix cloudmonkey's request and response methods
The old way of parsing involved complex object loading and traversing, in
new implementation json is used directly and authenticated requests via port
8080 making use of api and secret keys are recommended.

All args on shell are created in {"key": "value"} pairs which are used to create
url with &key=value. This way maps can be passed as args, example:

create networkoffering name=unique-name guestiptype=Isolated traffictype=GUEST
supportedservices=Dhcp,Dns serviceproviderlist[0].service=Dhcp
serviceproviderlist[0].provider=VirtualRouter serviceproviderlist[1].service=Dns
serviceproviderlist[1].provider=VirtualRouter

Added new conf variables:
- timeout: the no. of seconds after which an async job query timeouts
  default value of 3600 seconds
- asycnblock: if user wants their async commands to be tracked
  default value is 'true', if set to false, user can query using jobid which is
  returned by the async command and queried using:
     query asyncjobresult jobid=<jobid>

BUG-ID : CLOUDSTACK-499
Reviewed-by: Rohit Yadav <bhaisaab@apache.org>
Reported-by: Dave Cahill

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-16 22:18:32 +05:30
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 6e86fac8e5 Summary: Add autoscale categories
Detail:  Every new API that doesn't have  a valid category prefix needs
to be include in the gen_toc.py script for apidocs, marvin and
cloudmonkey to build.

BUG-ID:  CLOUDSTACK-501
Reviewed-by: mvn clean install -P developer
Reported-by: Rohit Yadav <bhaisaab@apache.org>
Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1353063359 +0530
2012-11-16 16:25:59 +05:30
Rohit Yadav 08d16cf4d1 cli: Handle HTTP and URL errors
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-15 18:43:51 +05:30
Rohit Yadav 7ae8c4ad7e cli: Split using only space
Patch fixes lexical parser for default argument on shell.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-15 18:43:51 +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 086b2e15af apidocs: remove whitespace while passing commands.in for apidocs
Due to whitespaces, apidocs was not able to process and generate commands.xml
with APIs listed in ext and virtualrouter .in files. This in turn affects marvin
code generation of cloudstackAPI and cloudmonkey.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-08 16:33:04 +05:30
Rohit Yadav c667eee570 cli: make commands pipe-able as on bash, on the shell
Makes commands pipe-able like bash.
Example while inside shell:
  > list virtualmachines | grep id
  > list accounts | more

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-08 12:35:20 +05:30
Marcus Sorensen 6e23cad126 Summary: Add Bugfix-for line to prepare-commit-msg
Detail: This reminds us to tag commits that should be considered for a bugfix
release, making them easier to find/apply and less likely to slip through the
cracks. Individual committers really should know best which things need to be
pushed as an immediate bugfix anyway, this makes it easy to tag things as such.

Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1352308027 -0700
2012-11-07 10:07:07 -07:00
Rohit Yadav 8e64f34012 cli: autocomplete to assignment, adds syntactic sugar
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-07 18:34:23 +05:30
Rohit Yadav 5e293f422d cli: add maven plugin to delete copied marvin folder on fresh install
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-07 16:06:01 +05:30
Rohit Yadav a5ad9c3c50 cli: fix keyerror in help doc handler
- Check and then print help docs
- Add verb configure

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-07 16:05:01 +05:30
Rohit Yadav 36e7a7884e cli: fix autocompletion binding bug, make all params lowercase
- fix weird autocompletion bug which won't let you enter the letter b [0]
- make set params, api and secret key vars lowercase
- use partition to get strings for do_set
- while installing, check and only then add readline (requires gcc and can fail)
- show monkey prompt by default, let users change if needed

[0] http://superuser.com/questions/297527/cant-type-the-b-letter-in-python-shell-in-os-x

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-06 19:41:07 +05:30
Rohit Yadav ac8ae30658 cli: fix argument parsing for set command, fixes unicode monkey char
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-06 17:59:53 +05:30
Rohit Yadav 77e957c91b cli: fix python sdist, add readline as installation requirement
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-06 17:06:11 +05:30
Rohit Yadav b713865308 cli: pip install cloudmonkey works
Patch makes cloudmonkey installable and redistributable using source dist from
pypi under apache compliant license. Most visible issues have been solved and
cloudmonkey should work well with CloudStack 4.0 and master, also until APIs do
not change.

To install now:
    pip install cloudmonkey

or, if you have to:
    easy_install cloudmonkey

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-06 16:07:42 +05:30
Rohit Yadav a94f6f19bb cli: make parsing robust using shlex
Parsing bug fixed using the simple lexical analysis library

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-06 15:19:08 +05:30
Rohit Yadav 5c24c34d7f cli: use partition instead of split to parse through args
Use partition instead of splitting on whitespace. This is little robust, but
may still fail for parameters whose values have whitespaces such as names etc.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-06 14:54:35 +05:30
Rohit Yadav 9e6b366023 cli: add autocompletion and dynamic help doc
- autocompletions for help docs
- more verbose doc strings with __doc__ import from the module and list of
  required args and all args

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-06 14:28:40 +05:30
Rohit Yadav a1089c4304 cli: move code, refactor and add docstring
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-06 14:28:40 +05:30
Rohit Yadav d0f9610355 cli: add feature to cache docstrings for an api
cached verb dictionary stores the following as a list:
- name of the API
- params (list of args)
- docstring

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-06 14:28:39 +05:30
Rohit Yadav 00d5c3f35c cli: fix help and doc strings, comments
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-06 14:28:39 +05:30
Rohit Yadav c10eeb6036 cli: strip args else this fails on parsing
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-05 21:59:03 +05:30
Rohit Yadav 64907c1da4 cli: fix parsing args
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-05 21:59:03 +05:30
Rohit Yadav c444bb3811 cli: don't get the required list as params
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-05 21:59:03 +05:30
Rohit Yadav 98d341d932 cli: add grammar to class
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-05 21:59:03 +05:30
Rohit Yadav 94649491be cli: fix color parsing
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-05 21:59:03 +05:30
Rohit Yadav 8c12f49dbe cli: fix intro message
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-05 21:59:03 +05:30
Rohit Yadav 5611a8eda2 cli: add logic to complete api parameters and use caching to optimize runtime
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-05 21:59:02 +05:30
Rohit Yadav 49b4786de6 cli: don't search rule in apis, filter apis that start with that rule
Search verb in apis takes more time than filtering out apis that start with
that verb from the grammar.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-05 18:15:48 +05:30
Rohit Yadav 46ad8d6f4e cli: remind user to set host, port too
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-05 18:15:47 +05:30
Rohit Yadav 51a5377d05 cli: add more verbs to grammar
Adds additional verbs to grammar of cli

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-11-01 14:12:08 +05:30
Chip Childers 000cc72042 CLOUDSTACK-422: XSL files missing license header
Added license headers to the apidoc XSL files that were fooling RAT.

Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-10-31 14:13:48 -04:00
Rohit Yadav b38cf801ac cli: setup.py for cloudmonkey
Version are named in reflection of CloudStack.
<cli major-version>.<cloudstack minor>.<cloudstack.major>
So, for CloudStack 4.1.0, version for cli should be 0.1.4

To create distribution:
  python setup.py sdist
  python setup.py install

Using pip:
  pip install dist/cloudmonkey*

Or pretty soon, from cheese shop:
  pip install cloudmonkey

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-10-31 23:19:21 +05:30
Rohit Yadav 039b938ecc maven: pom.xml for tools/cli
copies marvin to cli/cloudmonkey/

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-10-31 23:19:17 +05:30
Rohit Yadav 2ceaa3911e cli: cloudmonkey the command line interface
cloudmonkey
-----------
Apache CloudStack's very own monkey powered command line interface based on Marvin.
The neglected robot and monkey should rule the world!

Features:
- it's a shell and also a terminal tool
- scalable to find and run old and new APIs
- intuitive grammar and verbs
- autocompletion (functional hack)
- shell execution using ! or shell
- cfg support: user defined variables, like prompt, ruler, host, port etc.
- history
- colors
- dynamic API loading and rule generation
- leverages Marvin to get latest autogenerated APIs
- emacs like shortcuts on prompt
- uses apiKey and secretKey to interact with mgmt server
- logs all client commands
- PEP-8 compliant code

TODOs:
- Reverse search
- Fix input and output processing

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-10-31 23:19:14 +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
Rohit Yadav c68c7e2a2d devcloud: Fix default template url and deploydb error
- Fix the default builtin template url. The previous url is not reachable by
  public network.
- Remove INSERT statement which already gets inserted in cloud.configuration
  by mvn -P developer -Ddeploydb

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-10-29 19:05:46 +05:30
Prasanna Santhanam 5b43d245a7 Summary: Extending API doc pom to package
Detail: Create tarball of apidocs for distribution from jenkins
% mvn -Pdeveloper package

Signed-off-by: Prasanna Santhanam <tsp@apache.org> 1351321002 +0530
2012-10-27 12:26:42 +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
Wido den Hollander 5e44e61127 docs: Build the installation guide instead of "all"
It seems that all the work is going into the installation guide instead
of the "-all" docs.

With this commit we build the installation guide documentation.
2012-10-22 12:08:11 +02:00
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