Commit Graph

797 Commits

Author SHA1 Message Date
Nitin Mehta 33a0dec965 CLOUDSTACK-6221:
Publish first class objects involved in an operation (for now vm uuid) on the event bus . Example -  during attach/detachIso along with iso id, vm id should be available as well.
2014-03-10 16:22:34 -07:00
Min Chen 793becf524 CLOUDSTACK-5920: Add some interface methods and constants required by
IAM.
2014-03-05 09:40:55 -08:00
miguelaferreira ef547108dd NetUtils testing
- Refactor tests:
  - Upgrade tests to use jUnit4
  - Add hamcrest dependency (contribution of by Laszio Hornyak)
  - Break big tests in small unit tests
  - Replace assertTrue/False with complex conditions by assertThat with
specific matchers
- Remove dead code:
  - Private static method never called locally
- Add test for method that validates cidrs

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-25 19:23:13 +01:00
Hugo Trippaers 594b51c629 Fixup the license headers in the utils project. All files now use the same license header and this is enforced by the maven-license-check plugin. 2014-02-18 12:08:36 +01:00
Hugo Trippaers a369647bca Fix license headers 2014-02-18 10:16:31 +01:00
Antonio Fornie 510972abde Nvp and rest refactoring and more tests
Signed-off-by: Hugo Trippaers <htrippaers@schubergphilis.com>
2014-02-18 09:51:54 +01:00
wrodrigues 3199de69fe Fixes on Contrail and Mon InMemory plugins; adding comments about the changes.
Signed-off-by: Hugo Trippaers <htrippaers@schubergphilis.com>
2014-02-14 18:37:47 +01:00
Laszlo Hornyak 351ccf3755 Cleanup in UriUtils.getUpdateUri
- String instantiation replaced with StringBuilder and empty string constant

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-11 20:44:57 +01:00
Alena Prokharchyk e0de79b170 Resource metadata: by default, all metadata is set with display=true (meaning that the detail is avaialble for display to the regular user). If admin wants to set a specific detail to be false, he has to specify it explicitly in addResourceDetail command 2014-02-10 12:05:59 -08:00
Devdeep Singh 306ffa0218 CLOUDSTACK-6053: While adding a primary or secondary of type smb the password wasn't
encoded. This cause createStoragePool or addImageStore command to fail if special
characters were present. Updated the code to pass user, password and domain as part
of details while adding primary or secondary. Also made changes on server side to
handle it.
2014-02-10 10:29:09 +05:30
Laszlo Hornyak 8ed9162de7 Cleanup in UriUtils.encodeURIComponent
- StringBuffer replaced with StringBuilder
- nullcheck of tokens array removed since String.split does not return null
- unit test added

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 21:57:07 +01:00
Laszlo Hornyak 8d801bffab Replaced String concatenation in loop
Replaced String concatenation in loop with StringBuilder
Unit test added

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2014-02-09 21:27:28 +01:00
Devdeep Singh a24263fe81 CLOUDSTACK-6030: Encrypt the primary and secondary smb storage password when it is stored in the db. 2014-02-05 15:44:09 +05:30
Alena Prokharchyk 6af6ce7e9e 1) Added External UUID control support for network.
2) Moved UUIDManager interface to cloud-util package
2014-02-04 15:47:12 -08:00
Daan Hoogland b3829e54d6 CLOUDSTACK-6020 ipv4 address can be a larger number then
Interger.MAX_VALUE
2014-02-04 18:40:18 +01:00
Sheng Yang 285f23f11b CLOUDSTACK-5779: Generalize calling to execute or create file for KVM 2014-01-24 18:28:25 -08:00
Sheng Yang 2d100f1269 CLOUDSTACK-5779: Generalize calling to execute or create file for Xen 2014-01-24 18:27:55 -08:00
Hugo Trippaers d19157fbb1 Fix a bug found by findbug, compare Long objects with equals instead of == 2014-01-23 09:06:32 +01:00
Marcus Sorensen effa4c75b4 CLOUDSTACK-5843
For some reason the mgmt server is required to have access to the template
being registered in order to check its size against resource limits
during registration. This is bad, but worse, it's a sync call, so this
call can hang for up to the default HTTP connection timeout.

Reducing http timeout as a quick workaround, but this check needs to
1) be removed or 2) done later or 3)registerTemplate needs to be async
and 4) moved off the mgmt server (ssvm is the only thing that needs access to
template url).
2014-01-10 18:12:46 -07:00
Marcus Sorensen 8ee61f3a57 CLOUDSTACK-5502 createVlanIpRange, allow untagged to be accepted per previous use,
equate empty string to untagged in api parameter input
2014-01-10 17:09:41 -07:00
Kelven Yang 1e2e1ea051 CLOUDSTACK-5765: cleanup internal serialization and exception propagation issues 2014-01-09 14:29:13 -08:00
Alena Prokharchyk cb0c14671a CLOUDSTACK-5826: do netmask/gateway validation before calculating the POD cidr 2014-01-07 10:20:30 -08:00
Daan Hoogland 62c9343658 compare null to non-null or not-empty-string 2014-01-06 11:28:50 +01:00
Sheng Yang 92ba5f618d Fix tab issues in the Link.java 2014-01-02 14:03:38 -08:00
Sheng Yang 4312f9268e CLOUDSTACK-5723: Add timeout for SSL handshake
To prevent malfunction agent block the future SSL connections
2014-01-02 13:54:38 -08:00
Daan Hoogland 2cf356e047 isSameIsolationId 2013-12-31 12:25:17 +01:00
Daan Hoogland 04570eefed check vlans and other isolation types 2013-12-31 12:21:08 +01:00
Jayapal 07de75191c Revert "CLOUDSTACK-4622:If a VM from guest network is added to network tier of VPC then IP reservation allows the CIDR to be a superset of Network CIDR for that VPC tier"
Reverting this commit as it is breaking vpc deployment, CLOUDSTACK-5652

This reverts commit ab4f095c68.
2013-12-27 11:15:33 +05:30
Saksham Srivastava ab4f095c68 CLOUDSTACK-4622:If a VM from guest network is added to network tier of VPC then IP reservation allows the CIDR to be a superset of Network CIDR for that VPC tier
Signed-off-by: Jayapal <jayapal@apache.org>
2013-12-26 16:58:04 +05:30
Alex Huang be5e5cc641 All Checkstyle problems corrected 2013-12-12 12:26:07 -08:00
Syed Ahmed ee7380ace2 CLOUDSTACK-5296: Add certificate chain support for netscaler
This patch adds support for trust chains in the netscaler.

I initially planned on using the 10.1 API's "bundle" feature but during
my testing I found that was not working. So I am doing the chain linking
myself. Also NS can have only one entity of a certificate ie lets say
two different users try to add the same certificate on the netscaler
only one of them will go through. The other one says resouce already
exists even though they have different files.

This can be a problem in trust chains where the chain can be shared
between multiple accounts/certificates. So, I am using the figerprint as
an identifier of a certificate and making sure that we delete it only
when no one references it.
2013-12-05 15:35:28 +05:30
Anthony Xu 04b48ae04e XS VMmetadata platform contains virtual platform related info, CS should save platform info in DB to migrate the VM to other Cluster 2013-12-05 01:41:14 -08:00
Min Chen f420b74890 CLOUDSTACK-5355: addImageStore should not log password in clear text in
the log.
2013-12-03 16:55:26 -08:00
Jayapal cd6e6a4d3c CLOUDSTACK-1762 Fixed assigning network or broadcast ip to nic 2013-12-02 11:05:41 +05:30
wilderrodrigues 2774b62d64 Fixing bugs from Coverity related to Dereferenced Null after check and as return value.
Signed-off-by: Daan Hoogland <daan@onecht.net>
2013-11-27 11:18:00 +01:00
Alex Huang d620df2bdd Reformatted all of the code. 2013-11-21 06:15:26 -08:00
Alex Huang 224f479974 Removed trailing spaces 2013-11-21 04:08:01 -08:00
Alex Huang e4b22d0fca Replace all tabs, particularly the ones in the comments 2013-11-21 03:39:58 -08:00
Alex Huang 8d62744681 Reformat all source code. Added checkstyle to check the source code 2013-11-20 07:26:53 -08:00
Syed 0076307863 Squashed merge of Ssl Termination feature
Bug: https://issues.apache.org/jira/browse/CLOUDSTACK-4821
FS: https://cwiki.apache.org/confluence/display/CLOUDSTACK/SSL+Termination+Support

This patch implements the SSL offload feature for loadbalancers
and includes the implementaion for this to work with Netscaler.

The following are the new API's that this patch adds

uploadSslCert
deleteSslCert
listSslCert
assignCertToLoadBalancer
removeCertFromLoadBalancer

Unit tests are also included in the patch.
2013-11-08 16:49:16 +05:30
Min Chen dc3d279272 CLOUDSTACK-4833:[Automation][BVT] Template and ISO test cases failing
from BVT suite, during LIST api call.
2013-11-07 15:19:19 -08:00
Laszlo Hornyak cff5ea0949 FileUtil: use commons-io FileUtils
- removed the method body ot FileUtil.copyFile and replaced with FleUtils.copyFile

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-11-07 22:36:02 +01:00
Kishan Kavala 3f5b8f7063 CLOUDSTACK-4793 : Added UpgradeRouterTemplate API. Added filters to listRouters API. listRouters response includes verion and required upgrade flag. Min VR version is checked before sending commands to router 2013-11-07 19:49:05 +05:30
Darren Shepherd 68ce3f56ac Missed a null check 2013-11-06 09:44:08 -07:00
Darren Shepherd 1460196496 Centralize loading of db.properties to one place
There is now a method DbProperites.getDbProperties() that will load the
db.properties in one place and do the proper decryption of values if needed
2013-10-30 17:03:13 -07:00
Laszlo Hornyak fa35490fef InputStream use fix in ProcessUtil
- use PropertiesUtil to load Properties from file

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-26 17:47:34 +02:00
Laszlo Hornyak dbaa818d1e InputStream use fix
Closes the FileInputStream opened at configuration in
- ClusterManagerImpl
- ClusterServiceServletAdapter
- TransactionLegacy
- AsyncJobManagerImpl
- DBEncryptionUtil
- EncryptionSecretKeyChecker

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-26 17:47:34 +02:00
Laszlo Hornyak 58477834b6 InputStream use fix in PropertiesUtil
- use PropertiesUtil.loadFromFile to read the properties
- test added

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-26 17:47:34 +02:00
Darren Shepherd 81d01369d7 Merge commit 'df728fcf41ba0dfddabfaadea8cbcb77d18bfa96'
Conflicts:
	engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
2013-10-23 12:31:53 -07:00
Laszlo Hornyak 4b530c874f Safe properties loader
- new utility method introduced in PropertiesUtil to load properties objects from files
- RegionManagerImpl modified to use the utility method
- Tests added for both

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-23 20:50:00 +02:00
Darren Shepherd e3280bdba2 Merge remote-tracking branch 'origin/spring-modularization'
Conflicts:
	client/tomcatconf/applicationContext.xml.in
	client/tomcatconf/nonossComponentContext.xml.in
	client/tomcatconf/simulatorComponentContext.xml.in
	framework/db/src/com/cloud/utils/db/Transaction.java
	plugins/hypervisors/simulator/src/com/cloud/agent/manager/MockAgentManagerImpl.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java
2013-10-23 11:14:42 -07:00
Darren Shepherd 205a77a5bb Merge remote-tracking branch 'origin/txn-refactor'
Conflicts:
	engine/orchestration/src/org/apache/cloudstack/engine/orchestration/NetworkOrchestrator.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/metadata/ResourceMetaDataManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
2013-10-23 10:40:44 -07:00
Sateesh Chodapuneedi 00e57c0713 CLOUDSTACK-4911 [Mixed Hypervisor] VM Status is marked as alive when exit status of ping command is not available within command timeout
Supplementing the fix/commit 748315620b
While remote executing commands through ssh, wait for channel condition of EXIT_STATUS.

Signed-off-by: Sateesh Chodapuneedi <sateesh@apache.org>
2013-10-23 08:51:43 +05:30
Sateesh Chodapuneedi 748315620b CLOUDSTACK-4911 - [Mixed Hypervisor] VM Status is marked as alive when exit status of ping command is not available within command timeout
Currently during ssh execution of remote command, if no response is received within timeout, Cloudstack is returning success result.
This is resulting in false positives. Fix is to check if exit status of remote command is available or not. If not, return failure result.

Signed-off-by: Sateesh Chodapuneedi <sateesh@apache.org>
2013-10-21 16:34:57 +05:30
Prachi Damle 9d625405d3 CLOUDSTACK-4895: Management server fails to start because snapshot policy time zones have day light savings
Changes:

-     Calendar throws IllegalArgumentException when the hour of the day happens to be skipped due to DST changes.
-     Fix will ask Calendar to adjust the time accordingly and get the next closest time
2013-10-18 17:25:14 -07:00
Damodar Reddy a92095a4a6 CLOUDSTACK-4811:Fixed zone creation wizard is allowing to accept wrong sub net mask which is cauing wrong cidr value for a given ip range
Signed-off-by: Jayapal <jayapal@apache.org>
2013-10-18 15:51:51 +05:30
Min Chen 25acfbad78 CLOUDSTACK-4816:provide configurable option to choose single vs
multipart upload to S3 object storage based on object size.
2013-10-17 10:28:59 -07:00
Darren Shepherd f62e28c1ec New Transaction API
Introduction of a new Transaction API that is more consistent with the style
of Spring's transaction managment.  The existing Transaction class was renamed
to TransactionLegacy.  All of the non-DAO code in the management server has been
updated to use the new Transaction API.
2013-10-16 09:21:00 -07:00
Hugo Trippaers 795366019b Don't capture stderr, this will return an error when the runscript command expects null when there is no default route. 2013-10-14 09:58:37 +02:00
Laszlo Hornyak 47dd1c1e95 PasswordGenerator tests
- StringBuffer replaced with a StringBuilder
- tests added

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-11 20:09:37 +02:00
Laszlo Hornyak b76e501d26 removed PasswordGenerator.main
unused method, probably for debugging/testing purposes

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-11 20:09:37 +02:00
Laszlo Hornyak d1dd85a4c4 ReflectUtil: test for getAllFieldsForClass
- code comment turned to javadoc
- added braces to if and for statements to make it look more like the rest
- tests added

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-09 20:39:41 +02:00
Laszlo Hornyak 66fe3abe3b ReflectUtil: findMethod removed
findMethod was not used, it is removed

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-09 20:39:41 +02:00
Min Chen f1895ea39a CLOUDSTACK-4816: Make S3 upload multipart or singlepart configurable. 2013-10-04 18:21:25 -07:00
Laszlo Hornyak 826c69fd29 ConstantTimeBackoff test and cleanup
- javadoc changed - the old one was copy-pasted from AgentShell
- start and stop method removed - they did the same as the overridden methods
- _counter removed as it was only written, but never read
- remove from _asleep map was moved to a finally block, to make sure it is removed even in case of the thread gets interrupted
- Tests created for the above scenarios.

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-10-04 11:24:43 -07:00
Wei Zhou 3a999e70af CLOUDSTACK-4813: add function to get ExitValue when run bash commands
(cherry picked from commit b4397acfcc)
2013-10-04 11:06:16 +02:00
Darren Shepherd 67186429e1 Spring Modularization
ACS is now comprised of a hierarchy of spring application contexts.
Each plugin can contribute configuration files to add to an existing
module or create it's own module.

Additionally, for the mgmt server, ACS custom AOP is no longer used
and instead we use Spring AOP to manage interceptors.
2013-10-02 15:41:04 -07:00
Laszlo Hornyak b44bc9db02 NumbersUtil cleanup
- removed methods that were not used
- parseLong, parseInt and parseFloat replaced with the commons-lang NumberUtils call
- Test for the remaining methods

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
Signed-off-by: Hugo Trippaers <htrippaers@schubergphilis.com>
2013-10-02 10:55:00 +02:00
Darren Shepherd 766a0a2229 Add ability to programatically disable CloudStack ComponentConext intialization
As we moved to a more Spring managed lifecycle, the lifecycle management
in ComponentContext is not needed.  The transition to fully spring managed
will not happen all at once.  The management server will be done first and
then AWSAPI and UsageServer will come later.  This change allows the
ComponentContext in the context of the management server to be bypassed.
Note, by default, the ComponentContext will run its initialization.
2013-09-30 09:30:54 -07:00
Darren Shepherd 78040f8769 Add registry interface
Registry interface will be used to store and discover extensions
2013-09-30 09:26:17 -07:00
Darren Shepherd 9a083b9e66 Add Named interface to recognize objects with a getName() 2013-09-30 09:23:23 -07:00
Laszlo Hornyak 13e7a7308b Test for URLEncoder
- test added
- source formatted

Signed-off-by: Laszlo Hornyak <laszlo.hornyak@gmail.com>
2013-09-30 15:03:12 +02:00
Daan Hoogland 5338aaa39f use locale when formatting numbers 2013-09-24 15:53:32 +02:00
Hugo Trippaers 8b6dcf8b6e Clean out a few warnings on potential resource leakage 2013-09-21 15:32:52 +08:00
Daan Hoogland 2614b00c51 sdn hosted vpc gateways (using lswitch) 2013-09-18 16:56:56 +02:00
Donal Lafferty e958f22ff3 CIFS support for secondary storage is documented here: https://cwiki.apache.org/confluence/display/CLOUDSTACK/CIFS+Support
It was implemented by extending the NFS provider. Its validation was updated so that you can pass it a URL containing the
details of a CIFS share.  The code that mounts NFS shares was extended to allow it do the same for CIFS shares.  Otherwise,
the secondary storage code is left unchanged.
2013-09-11 14:23:29 +05:30
Alex Huang 8f556e6d88 Made changes to configuration. Eliminated ConfigValue and only use ConfigKey 2013-09-06 15:40:38 -07:00
Alex Huang b8e79c30a8 Compile complete 2013-09-06 15:40:37 -07:00
Alex Huang 5b439f0748 Revert "Revert "Added missing files""
This reverts commit 48053001fb2303d4acfb77d23fe3733941e83781.
2013-09-06 15:40:35 -07:00
Alex Huang 06493d5b5c Revert "Added missing files"
This reverts commit a1dfc227e895d724f68c0206643825b3ba43116c.
2013-09-06 15:40:35 -07:00
Alex Huang 375eadd3d3 Added missing files 2013-09-06 15:40:34 -07:00
Alex Huang 435e74e914 Commit to try something on removing getZone 2013-09-06 15:40:33 -07:00
Daan Hoogland d9c06e538b CLOUDSTACK-4346 replace URI getHost() and create(String) calls with BroadcastDomainType methods 2013-09-01 22:53:23 +02:00
Alex Huang 8113ebb08f Moved the csvtotags into StringUtils. It was there to begin with. No idea who copied it to ConfigurationManager 2013-08-26 20:27:27 -07:00
Min Chen 8202acdbc1 CLOUDSTACK-3274: guard a null string case in case of string match. 2013-08-16 11:10:58 -07:00
Wei Zhou eb59c3c601 CLOUDSTACK-4314: fix dir error in ProcessUtil.pidCheck and Revert commit 9375aa9467 2013-08-14 09:41:13 +02:00
Laszlo Hornyak f081092b80 ProcessUtil cleanup
- possible resource leak closed
- file content read uses now commons-lang FileUtils
- Added unit tests
2013-08-12 14:50:09 -07:00
Alex Huang 5495f10bce Revert "Reverting the range of commits that broke the build"
This reverts commit b59e3aaefc.
2013-08-08 15:02:40 -07:00
Prasanna Santhanam b59e3aaefc Reverting the range of commits that broke the build
This reverts commits 30c33415..f6a2c817bc

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-08-08 14:46:56 +05:30
Alex Huang 942f282a6e Moved config into it's own package 2013-08-07 16:41:02 -07:00
Devdeep Singh 1741fdfb12 CLOUDSTACK-3774: NPE while creating template from snapshot on a upgraded setup.
After upgrade the SSVM was staying in connecting/alert state. This was because
while handling the processConnect command for ssvm the management server was
trying to template sync. For resource limit calculation it was trying to get the
remote size of the template. If the template was no longer available a number
format exception was thrown. The process connect wasn't getting completed and
the ssvm used to stay in connecting/alert state. While creating template from
snapshot cloudstack looks for up and enabled ssvms and because there wasn't
any available (as the ssvm was in coonecting/alert state) it used to pick the
wrong resource (LocalNfs*Resource) instead of the NfsSecondaryStorageResource.

Fixed the issue by making sure number format exceptions are avoided so that
SSVM moves to the right state.
2013-08-06 16:41:37 +05:30
John Burwell 1ae682de78 - CLOUDSTACK-3229: Properly serialize the https property to the s3Xen
plugin
  - Extracts the duplicated serializeProperties methods to
    ReflectUtils#flattenProperties
  - Adds unit tests for ReflectUtils#flattenProperties
2013-08-01 00:14:43 -04:00
Alex Huang 1e1ee902a2 Moved over the new jobs framework from vmsync. This has not been integrated into the server package yet. Will do that next 2013-07-30 15:00:58 -07:00
Likitha Shetty 6cbcd9777d CLOUDSTACK-3139 - If management server doesn't have internet connection RegisterTemplate and UploadVolume will fail when CS tries to verify if the account has exceeded its secondary storage limit.
No change in behavior if management server has internet connection.
Now if management server doesn't have internet connection download process will not fail. But CS will noly check if the account has already reached or maxed its limits instead of checking if the limit will be breached with the addition of the new storage
2013-07-30 19:35:26 +05:30
Alex Huang 3d2e49bcfc Changed the log4j config files to log org.apache.cloudstack in debug and change the layout format 2013-07-26 20:35:49 -07:00
Alex Huang f5e5b39c9b Moved the DB layer code into framework-db and change only the necessary projects to refer to it. Cut down on the dependencies introduced with all the code in utils. 2013-07-26 15:02:10 -07:00
frank 697b7c9471 make UCS api name better 2013-07-26 11:28:47 -07:00
frank 42738c2fda change associatesUcsProfileToBlade to async api 2013-07-25 15:26:51 -07:00
Amogh Vasekar a47faa9d28 Adding HTTPS support for UCS, refactored code for o.a.c.httpclient.contrib
CLOUDSTACK-3285
UCS: Need support for HTTP redirects and HTTPS Certificate handling
2013-07-24 13:55:23 -07:00
Edison Su d22bea6031 CLOUDSTACK-2630: fix delta snashpt 2013-07-24 09:48:59 -07:00