Only on SSHExceptions we attempted retries, but during socket failures,
like Network Unreachable we failed the ssh connection immediately.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
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>
When you have a method with named parameters, all calls to it should
explicitly pass name=value pairs. Not doing so can result in the wrong
params being passed in the method call. This is a result of the
"services" dictionary being passed into the isportable flag failing the
API signature generation and hence the API call.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
(cherry picked from commit 28835054e6)
Added isportable param to associateIP API. Fixed base class
for PortableIP tio call portableip APIs.
Removed test_createPortablePublicIPAcquire from basic zone run
requires additional network creation handling which can be done
in component tests.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
(cherry picked from commit 4054a8e2ac)
urlencoding the userdata and quoting the = since apiserver will strip
them out. This will send an invalid userdata down to the plugin (vmops)
where base64 decoding fails causing vm deployment to fail.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
(cherry picked from commit 0edd2a8e14482def0d2a73726b53dee4239e2822)
Provided a utility method to ensure the config is suitable for running
the test. If vm.instancename.flag is unset then skip the tests.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
One of the patches introduced a regression where account
and domainid parameters were changed. Therefore Affinity
Groups for those accounts were not found and tests failed.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
Now password is sent as clear text as per CLOUDSTACK-1734
So changed marvin to handle this. Plus domainid was not
passed in the testcase and marvin used "domainid" instead of
"domainId" as a parameter. Fixed these two errors.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
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>
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>
When creating a VM if it's going to a basic zone program sec.group rules
so as to allow SSH access for any tests requiring ssh access to the
guest. Similarly method used to program the NAT and PF for SSH access is
refactored and extracted into a separate method. By default no SSH
access is allowed if the mode is set to 'default'
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
The guestcidr is no longer specified directly. Use the netmask and
gateway combination to create custom cidr network
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
Filter the detail map sent over the wire into Map<String, String> before
processing underneath by storage life cycle
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
(cherry picked from commit f96b89f25e)
vmware dc can be mapped to the zone after CLOUDSTACK-1963. include
support in marvin for adding the vmwaredc.
vmwaredc : {
name:
username:
vcenter:
password:
zoneid:
}
Will be sent during pod creation before cluster creation.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
Debian released 7.1 and moved the old image to archives. Updated with
the archives link to the -netinst image.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
isFreeZone is actually a test for whether the zone is a pure advanced
zone or an advanced zone with security groups. Renaming the var and
fixing the typo introduced by a65d21.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
Changing the sandbox scripts and the marvin-checkin-test configurations
to include the required 'provider' argument when adding an image store
(secondary storage)
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
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>
Many vpc tests fail because of incorrect apiClient passed in to create
the VPC, network etc. The exact method used is getUserApiClient to fetch
the apiclient for a specific user.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
This fix removes junk from 6e22843acb which was
supposed to just improve error messages and not messup the whole async block
logic and go into an infinite recursion or fail with some key error.
Signed-off-by: Rohit Yadav <rohit.yadav@wingify.com>
When both systemvmtemplate64 and systemvmtemplate are present the grep
match fails and returns (non-deterministically) the 64bit appliance
instead of the 32bit one. Fix this by matching the path separater as
well.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
Refactoring the internal lb test to use the marvin libraries. Also added
reqd methods for the internal lb related APIs into integration.lib
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
Discovery plugin will detect APIs from pluggable services and map them
to those in commands.properties. Including the latter to complete the
mapping so listApis now returns these APIs.
Also included fix for API docs.
Signed-off-by: Prasanna Santhanam <tsp@apache.org>
This feature allows a user to deploy VMs only in the resources dedicated to his account or domain.
1. Resources(Zones, Pods, Clusters or hosts) can be dedicated to an account or domain.
Implemented 12 new APIs to dedicate/list/release resources:
- dedicateZone, listDedicatedZones, releaseDedicatedZone for a Zone.
- dedicatePod, listDedicatedPods, releaseDedicatedPod for a Pod.
- dedicateCluster, listDedicatedClusters, releaseDedicatedCluster for a Cluster
- dedicateHost, listDedicatedHosts, releaseDedicatedHost for a Host.
2. Once a resource(eg. pod) is dedicated to an account, other resources(eg. clusters/hosts) inside that cannot be further dedicated.
3. Once a resource is dedicated to a domain, other resources inside that can be further dedicated to its sub-domain or account.
4. If any resource (eg.cluster) is dedicated to a account/domain, then resources(eg. Pod) above that cannot be dedicated to different accounts/domain (not belonging to the same domain)
5. To use Explicit dedication, user needs to create an Affinity Group of type 'ExplicitDedication'
6. A VM can be deployed with the above affinity group parameter as an input.
7. A new ExplicitDedicationProcessor has been added which will process the affinity group of type 'Explicit Dedication' for a deployment of a VM that demands dedicated resources.
This processor implements the AffinityGroupProcessor adapter. This processor will update the avoid list.
8. A VM requesting dedication will be deployed on dedicatd resources if available with the user account.
9. A VM requesting dedication can also be deployed on the dedicated resources available with the parent domains iff no dedicated resources are available with the current user's account or
domain.
10. A VM (without dedication) can be deployed on shared host but not on dedicated hosts.
11. To modify the dedication, the resource has to be released first.
12. Existing Private zone functionality has been redirected to Explicit dedication of zones.
13. Updated the db upgrade schema script. A new table "dedicated_resources" has been added.
14. Added the right permissions in commands.properties
15. Unit tests: For the new APIs and Service, added unit tests under : plugins/dedicated-resources/test/org/apache/cloudstack/dedicated/DedicatedApiUnitTest.java
16. Marvin Test: To dedicate host, create affinity group, deploy-vm, check if vm is deployed on the dedicated host.