Commit Graph

317 Commits

Author SHA1 Message Date
Min Chen c609bc0541 Not reuse already destroyed entries in template_store_ref to make code
cleaner.
2013-05-24 14:34:56 -07:00
Min Chen 9e1a9bfd4b Fix a bug in attachIsoToVM for S3. 2013-05-24 14:24:23 -07:00
Min Chen 863b534066 Copy iso from S3 to Cache in attach iso to VM. 2013-05-24 13:56:08 -07:00
Min Chen c614c6a424 CLOUDSTACK-2674: Secondary Storage garbage collector failed with NPE in
case of S3 storage provider.
2013-05-24 11:10:45 -07:00
Min Chen 98af424053 Merge branch 'master' into object_store. 2013-05-23 18:00:15 -07:00
Min Chen d1704a389a Exclude removed template from template sync. 2013-05-23 17:23:25 -07:00
Prachi Damle 780b45e245 CLOUDSTACK-2657: listTemplatePermissions API should also include the owner of the template to the list of users having permission to launch
Changes:
- Add template owner to the list of users
2013-05-23 16:33:07 -07:00
Min Chen 039098469a CLOUDSTACK-2584: set Format value in CopyCommand. 2013-05-22 14:33:40 -07:00
Min Chen f5732fe3bf Consolidate code to use UriUtils.validateUrl instead of repeating code
several places.
2013-05-21 16:50:02 -07:00
Min Chen 2af36aa87b Clean up template_zone_ref entries in case of create template failure. 2013-05-21 12:00:59 -07:00
Min Chen 565bdfb27b Fix CLOUDSTACK-2525: clean up db entries in vm_template and
template_store_ref in case of template creation failure.
2013-05-20 16:21:45 -07:00
Min Chen 255d08ae7c Fix CLOUDSTACK-2586: ExtractTemplate for S3 template should give URL
directly from S3.
2013-05-20 12:06:36 -07:00
Edison Su f7c1b711ad merge to master 2013-05-16 23:56:20 -07:00
Mice Xia 6d57393629 instead of using '==', use equals() to test Long value equality 2013-05-16 16:00:02 +08:00
Edison Su 879a954b98 delete snapshot at the backend 2013-05-14 21:58:07 -07:00
Min Chen 03c255068b Fix CLOUDSTACK-2484: not able to deploy VM from registered ISO. 2013-05-14 14:57:02 -07:00
Min Chen 2102ede2e7 Fix CLOUDSTACK-2469: default template is not downloaded. 2013-05-14 11:42:24 -07:00
Nitin Mehta c11dbad9c9 merge master 2013-05-11 15:28:43 +05:30
Alex Huang 342624e0eb Merged with head 2013-05-10 16:33:57 -07:00
Alex Huang 3047929367 Merged 2013-05-10 16:21:43 -07:00
Edison Su 42e25a22fc refactor kvm/vmware resource code 2013-05-09 23:10:05 -07:00
Min Chen fa11575212 Add store_role to template_store_ref, and add search function to find
template_store_ref entry based on DataStoreRole and ZoneId.
2013-05-08 22:06:07 -07:00
Edison Su ac7be218d5 creat template from volume/snapshot, and then create vm from template works now 2013-05-07 20:18:19 -07:00
Min Chen 3315b23595 Relax url port validation and some MockLocalNfsSecondaryStorageResource
fix.
2013-05-07 13:34:27 -07:00
Min Chen 41272c976e Add DeleteTemplate unit test. 2013-05-06 23:02:28 -07:00
Min Chen e7f6333209 Merge branch 'object_store' of https://git-wip-us.apache.org/repos/asf/cloudstack into object_store 2013-05-06 21:21:40 -07:00
Edison Su 2d544e7127 volume related operation works 2013-05-06 18:27:15 -07:00
Min Chen f5d5526d41 Fix unit test to test NFS template download flow. 2013-05-06 18:02:52 -07:00
Alex Huang f6913b5088 Removed files that are no longer used and further separated out the files in the core project 2013-05-06 16:34:21 -07:00
Min Chen 0d78209b73 Address various UI requirements by introducing provider constants. 2013-05-06 15:12:33 -07:00
Kelven Yang f101241050 Apply patch for https://reviews.apache.org/r/10892/ 2013-05-01 17:40:38 -07:00
Min Chen 3c6b7c2a01 Populate system vm template to template_store_ref in adding an image
store.
2013-05-01 12:10:24 -07:00
Edison Su 2f689171e0 refactor snapshot 2013-04-29 18:51:14 -07:00
Harikrishna Patnala deaf9106ca CLOUDSTACK-741: Granular Global Parameters and adding fixes for CLOUDSTACK-2176, CLOUDSTACK-2198, CLOUDSTACK-2200
Adding the zone, cluster, account level parameters
The parameters at scope (zone/cluster/pool/account) can be updated by updateConfiguration API with additional parameter zoneid/clusterid/accountid/storagepoolid
Whenever these scoped parameters are used in CS they get value from the corresponding details table if not defined get value from global parameter.
Same with the listConfiguration API with additional parameter zoneid/clusterid/accountid/storagepoolid
2013-04-29 14:11:51 +05:30
Min Chen de27f0ff53 Clean up DownloadMonitor and TemplateManagerImpl. 2013-04-25 16:49:46 -07:00
Min Chen 79151f5f5d Remove sendToSSVM reference from SnapshotManagerImpl and
TemplateManagerImpl.
2013-04-24 17:45:32 -07:00
Min Chen f16f92dd1d Remove TemplateManager.getSecondaryStorageHost api. 2013-04-24 15:06:36 -07:00
Min Chen 0cfef3aa4e Remove almost all VMTemplateHostDao references except S3Manager and
SwiftManager.
2013-04-23 17:51:54 -07:00
Min Chen 7ec0882dca Remove VMTemplateHostDao reference from BareMetalTemplateAdapter, also
make store_id in template_store_ref table nullable to accommodate
baremetal case.
2013-04-23 16:07:44 -07:00
Min Chen 246e58013d Remove VMTemplateHostDao reference from TemplateManagerImpl. 2013-04-23 15:09:37 -07:00
Min Chen e40a06deae Fix extractTemplateCmd. 2013-04-22 21:48:57 -07:00
Edison Su b30e39b0e3 CLOUDSTACK-1392: add create template from snapshot and volume 2013-04-22 13:24:10 -07:00
Min Chen 9c584b5500 Use EndPoint to send local/remote command, and hide agentMgr message
passing.
2013-04-22 13:21:28 -07:00
Edison Su abf40435f3 refactor downloadlistener, sync system vm templates when adding a new image store 2013-04-21 22:46:02 -07:00
Min Chen 0229c75b50 Use data motion service for PrepareTemplateCmd to move template from
secondary storage to primary.
2013-04-20 20:44:31 -07:00
Min Chen 86913ab4d3 Use data motion service to implement copy template. 2013-04-19 23:01:59 -07:00
Min Chen 539824797c Refactor listTemplatesCmd and listIsoCmd to use db view. 2013-04-19 16:10:09 -07:00
Min Chen 7ba1a8fa21 Populate hypervisor_type column in registering ISO by referring it from
guest os id to make listIsos and listTemplates implementation more
consistent.
2013-04-18 13:52:35 -07:00
Min Chen 1a74dfaa27 Move UpdateTemplate and UpdateIso methods from ManagerServerImpl to
TemplateManagerImpl.
2013-04-17 17:39:33 -07:00
Min Chen fe4f53bfcd Fix SecStorageSetupCommand for Nfs image store. 2013-04-17 17:16:01 -07:00
Min Chen 14b5f0da19 Rename ImageDataFactoryxxx to TemplateDataFactory to have consistent
naming conventions for Template data factory class.
2013-04-17 11:45:25 -07:00
Min Chen c74969fcb0 add deleteTemplate implementation into S3 and Swift driver
implementation.
2013-04-16 16:53:13 -07:00
Min Chen 1b3994e180 Fix copyTemplateCmd. 2013-04-16 16:38:14 -07:00
Min Chen 0da2da852b Fix the flow of deleteTemplateCmd. 2013-04-16 12:03:12 -07:00
Pascal Borreli 20614598bf Fixed typos
Signed-off-by: Milamber <milamber@apache.org>
2013-04-13 13:28:32 +00:00
Min Chen 2dd8e2cb97 add getStoreTO into each DataStoreDriver, and add implementation for 3
data store plugins.
2013-04-12 18:22:23 -07:00
Edison Su b81fa6d9ea add copy template to cache store 2013-04-12 16:03:30 -07:00
Min Chen bb64672715 Refactor DownloadMonitorImpl code, move some functionalities to
TemplateServiceImpl and VolumeServiceImpl.
2013-04-11 18:09:42 -07:00
Min Chen 02686583cf First draft of register template using image store. 2013-04-10 18:02:53 -07:00
Min Chen 3897590bb1 Add check in addImageStoreCmd to guarantee our assumption of homogeneous
image stores.
2013-04-09 16:36:02 -07:00
Phong Nguyen aa79ccf985 CLOUDSTACK-922: LXC Support in Cloudstack.
Signed-off-by: Edison Su <sudison@gmail.com>
2013-04-01 15:41:42 -07:00
Sanjay Tripathi 18695276f7 CLOUDSTACK-1156: Limit Primary and Secondary storage for domain/accounts
Addition of two new resource types i.e. Primary and Secondary storage space in the existing pool of
    resource types.
    Added methods to set the limits on these resources using updateResourceLimit
    API command and to get a count using updateResourceCount. Also added calls in the
    Templates, Volumes, Snapshots life cycle to check these limits and to increment/decrement the new
    resource types

    Resource Name          :: Resource type number
        Primary Storage               10
        Secondary Storage             11

    Also added jUnit Tests for the same.
Reviewed by : nitin mehta<nitin.mehta@citrix.com>
2013-03-29 11:26:38 +05:30
Edison Su 409ec9c6b6 CLOUDSTACK-1426: We has strong implication that VO must implement an interface, otherwise EntityManagerImpl can't the vo 2013-03-07 18:25:57 -08:00
Min Chen fbfc5c6894 Merge from master and fix conflicts 2013-02-25 11:53:24 -08:00
Deepti Dohare 4d573ddd1b CLOUDSTACK-357 ISOs can be deleted while still attached to a running VM, and they subsequently cannot be detached from a running VM
I made the changes to make sure that:
1. ISO will be deleted from the UI, but it is not deleted from the secondary storage as long as it is attached to a VM.
2. The storage cleanup thread will check whether the iso is attached to any vm, if not, it removes the ISO from the secondary storage.
3. Detach operation is now working which was failing before for the vms having attached iso(deleted).

Updated the patch for template sync during MS restart.

Manually tested the following:
setup: upload ISO1 and ISO 2
Attach ISO1 to VM1 and VM2
Attach ISO2 to VM3
set storage.cleanup.interval to 300

test cases:
1. delete ISO1 from UI, gets deleted
2. In VM Details of VM1 and VM2, can see detach ISO option
3. ISO1 exists in secondary storage
4. detach ISO1 from VM1, successful
5. ISO1 still exists in secondary storage.
6. Restart MS, template sync will not delete ISO1.
7. Detach ISO1 from VM2, successfull detached.
8. Wait for storage cleanup thread to execute, ISO1 gets deleted from Secondary storage.
9. Detach ISO2 from VM3
10.ISO2 exists in secondary storage, Delete ISO2 form UI, get deleted from secondary storage.
2013-02-25 16:02:25 +05:30
Edison Su ec09e34f86 fix downloading template 2013-02-21 11:22:48 -08:00
Edison Su a22403edcd squash changes into one giant patch 2013-02-21 11:22:48 -08:00
Rohit Yadav fcb4b7a6a7 CLOUDSTACK-1237: Fix an overriding method that would help find template adapter
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-02-13 15:19:30 +05:30
Min Chen c0442e2556 Fix a bug in register template, cannot find template adapter. 2013-02-12 16:56:02 -08:00
Kelven Yang 7b75f0d990 Sync master to javelin one more time 2013-02-01 11:37:33 -08:00
Murali Reddy e7a554fc6a Merging events framework branch into master. This commit will bring
following changes

   - introduced notion of event bus with publish, subscribe, unsubscribe
     semantics

   - a plug-in can implement the EventBus abstraction to provide event
     bug to CloudStack

   - A rabbitMQ based plug-in that can interact with AMQP servers to
     provide message broker based event-bug

   - stream lines, action events, usage events, alerts publishing in to
     convineance classed which are also used to publish corresponding
     event on to event bus

   - introduced notion of state change event. On a state change, in the
     state machine corrsponding to the resource, a state change event is
     published on the event bug

   - associated a state machined with Snapshot and Network objects

   - Virtual Machine, Volume, Snaphost, Network object state changes wil
     result in a state change event
2013-02-01 01:37:24 +05:30
Kelven Yang 176523254e Improve component lifecycle management with system run-level concept 2013-01-30 15:21:02 -08:00
Kelven Yang 8887f01b37 CLOUDSTACK-1070: HypervisorTemplateAdapter needs to be configured with proper name 2013-01-28 17:12:41 -08:00
Kelven Yang f57dcaa820 Loadable components to be in separted Spring component bundling 2013-01-11 15:33:15 -08:00
Alex Huang 56e5fbdee2 removed import of componentlocator and inject from all files 2013-01-10 11:44:47 -08:00
Alex Huang f40e7b7511 removed componentlocator and inject 2013-01-10 11:05:20 -08:00
Alex Huang 0bcb64605f all built with the latest 2013-01-09 05:02:39 -08:00
Kelven Yang b274c570f9 Cleanup places that use explicit wiring of the components 2013-01-08 17:45:33 -08:00
Alex Huang 30f2565d98 Merge branch 'api_refactoring' into javelin 2013-01-08 12:36:04 -08:00
Rohit Yadav ed0637b8c2 api: Refactor move acl to org.apache.cloudstack
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-06 15:30:58 -08:00
Rohit Yadav e17e68f0af server: Fix base template*cmd class imports and names
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2013-01-06 14:47:00 -08:00
Kelven Yang 2e9c55f8f6 More Spring issues to bootstrape javalin server 2013-01-04 14:25:12 -08:00
Kelven Yang 25d14418b9 Replace Adapters<T> with standard List<T> to work with Spring injection 2013-01-03 13:33:52 -08:00
Rohit Yadav 296b49c2f8 Merge branch 'master' into test-merge-api
Conflicts:
	api/src/com/cloud/agent/api/BackupSnapshotCommand.java
	api/src/com/cloud/agent/api/storage/PrimaryStorageDownloadCommand.java
	api/src/com/cloud/agent/api/to/PortForwardingRuleTO.java
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/resource/ResourceService.java
	api/src/org/apache/cloudstack/api/ApiConstants.java
	api/src/org/apache/cloudstack/api/ResponseGenerator.java
	api/src/org/apache/cloudstack/api/response/SSHKeyPairResponse.java
	client/tomcatconf/commands.properties.in
	core/src/com/cloud/storage/SnapshotVO.java
	pom.xml
	server/src/com/cloud/api/ApiDispatcher.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/offerings/NetworkOfferingVO.java
	server/src/com/cloud/resource/ResourceManagerImpl.java
	server/src/com/cloud/upgrade/dao/Upgrade40to41.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
	setup/db/create-schema.sql
	setup/db/db/schema-40to410.sql

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-23 13:54:46 -08:00
Marcus Sorensen 6ed1989133 Summary: Allow for custom storage adaptors based on pool type in KVM
Detail: Instead of using LibvirtStorageAdaptor for everything, you can create
your own storage adaptor and use it. We select storage adaptor based on storage
pool type, thus we needed to adjust LibvirtComputingResource to pass pool type
to everything in KVMStoragePoolManager. This in turn required that we pass the
info necessary to LibvirtComputingResource as well, so a few agent Commands were
modified.

Note this patch in and of itself shouldn't change any existing behavior, just
allow for new storage adaptors to be selected based on storage pool type.

Reviewed-by: Edison Su
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1355769696 -0700
2012-12-17 11:41:36 -07: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
Rohit Yadav af28c06998 api: move and group all under command, org.apache.cloudstack.command.*
Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-07 18:30:54 -08:00
Rohit Yadav add1b9b055 api_refactor: refactor register apis
- Split register apis across template, iso and ssh pkgs
- Fix refactored apis, mappings in commands*.in
- Fix comments etc.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 23:54:19 -08:00
Rohit Yadav 3e0b2164be api_refactor: refactor template apis
- Fix refactored apis, fix mapping in commands*.in
- Fix comments etc.

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 23:05:44 -08:00
Rohit Yadav e0b4430070 api_refactor: refactor iso apis
- Fix refactored apis, fix mapping in commands*.in
- Fix comments etc.
- Note: copyIso uses copyTemplate, refactor copyTemplate

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 23:01:29 -08:00
Rohit Yadav 6fc3bc3760 api_refactor: refactor vpn and vm apis
- Refactor VPN and VM APIs to admin and user pkgs
- Names space, org.apache.cloudstack
- Fix refactored apis in commands*.in
- Fix comments etc.
- Expand tabs, remove trailing whitespace

Signed-off-by: Rohit Yadav <bhaisaab@apache.org>
2012-12-03 21:27:02 -08:00
Kelven Yang cea8f3bf37 Switch inject annotation to javax and let ComponentLocator to recognize both the new and original inject annotation 2012-11-07 15:03:22 -08:00
Edison Su 73cc474157 add secondary storage provider 2012-09-02 19:26:20 -07:00
David Nalley e87558256c Patch from Chip Childers
https://reviews.apache.org/r/5704/
License header updates for the server folder
2012-07-02 09:51:21 -04:00
anthony a32f675875 CS-14237 GC commands only sent to UP host
resolved fixed
2012-05-16 17:21:36 -07:00
Alena Prokharchyk 76c7c22b34 Bug CS-14447: set crossZones attribute for the template before persisting it to the db 2012-04-13 14:16:18 -07:00
frank 2f634c0913 Switch to Apache license 2012-04-03 04:50:05 -07:00
Alena Prokharchyk e53cfeceb6 bug 14379: don't enable 8096 port by default (set global config variable to null by default, and don't create a listener on this port unless its set to valid integer) 2012-03-19 16:19:38 -07:00
prachi 93ff791497 Bug 13314 - acton-bet3:vmware/xen:fail to attach "VMware Tools Installer ISO" to instance
Changes:
- 'sameOwner' check cannot be used for ISO's
- So need to make two access checks: See if caller has access to VM and ISO and also check if the VM's owner has access to the ISO.
2012-01-26 16:02:52 -08:00
anthony 6297820981 bug 12830: propagate ISO to other zone on demand
status 12830: resolved fixed
2012-01-20 11:44:01 -08:00