Commit Graph

1698 Commits

Author SHA1 Message Date
Andrew Gaul c7b0f66544 Replace calls to Closeables.closeQuietly
Guava 16 removes this API.  Replace with Closeables2.closeQuietly.
References JCLOUDS-413 and JCLOUDS-415.
2013-12-21 12:30:59 -08:00
Andrew Gaul f9e98681b6 Address miscellaneous Guava deprecations
References JCLOUDS-415.
2013-12-20 14:05:44 -08:00
Andrew Bayer fcca1fd525 JCLOUDS-412. Add the new i2.* instance sizes 2013-12-20 10:05:33 -05:00
Andrew Bayer c1ee11d9bd Updating to 1.8.0-SNAPSHOT 2013-12-17 11:31:56 -08:00
Andrew Gaul 05ec994f9e Address Checkstyle violations 2013-12-16 13:09:02 -08:00
Hyeonu Jeong 6d9784c4b5 Fix CloudStack EgressFirewall request parameter name
createEgressFirewall needs networkid instead of ipaddressid:
    http://download.cloud.com/releases/3.0.6/api_3.0.6/root_admin/createEgressFirewallRule.html
2013-12-16 12:58:50 -08:00
Everett Toews 5ba527ec33 Ensure the accessIPv4 value gets into NodeMetadata. 2013-12-16 14:54:06 -06:00
Andrew Gaul 0398276be3 Remove redundant imports
Also enforce no new ones via Checkstyle
2013-12-12 18:23:43 -08:00
Zack Shoylev 6de84cb003 Moving trove to jclouds from jclouds-openstack-labs https://issues.apache.org/jira/browse/JCLOUDS-102 2013-12-12 17:13:38 -06:00
Andrew Gaul 828d8790c2 Enforce no unused imports via Checkstyle
Removed with:

mvn checkstyle:checkstyle --quiet -Dcheckstyle.output.file=/dev/stdout -Dcheckstyle.output.format=plain | tac | while read i; do echo $i | sed -n 's/\([^:]*\):\([^:]*\):.*/sed -i \2d \1/p' | bash; done
2013-12-11 17:27:43 -08:00
Andrew Gaul 3321506c84 JCLOUDS-403. Add support for Swift object expiry 2013-12-11 14:20:32 -08:00
Ignacio Mulas 7e99ddef5c [JCLOUDS-263] Usage of internalURL services' endpoints 2013-12-11 11:28:37 -06:00
Eric Evans 15a3c04fb7 JCLOUDS-356 multipart uploads with InputStream payloads
This changeset introduces an alternative to PayloadSlicer,
IterablePayloadSlicer, with a method for returning a Payload iterator.

...swift.blobstore.strategy.internal.SequentialMultipartUploadStrategy
has been updated to to use a payload iterator.
2013-12-11 16:34:19 +01:00
Zack Shoylev 83e77d2309 Adds some easy-of-use for openstack mock tests 2013-12-10 12:55:22 -06:00
Adrian Cole acde2beff1 JCLOUDS-32: Using less magic in route53 signature 2013-12-09 19:04:21 -05:00
Andrew Gaul 4cef85d1cd Address Checkstyle violations in tests 2013-12-09 14:40:07 -08:00
Andrew Bayer b351406fc9 JCLOUDS-394. Add note to ec2 README in re: live tests and new accounts 2013-12-08 18:45:16 -08:00
Andrew Gaul 1043d851a7 Correct jcloud -> jclouds typos 2013-12-01 11:36:08 -08:00
Andrew Gaul cb98a47173 Correct jcloud -> jclouds typos
Corrected with:

find -name pom.xml | xargs sed -i 's/jcloud\>/jclouds/'
2013-12-01 11:21:26 -08:00
Zack Shoylev 6e663be20a Fixes filesystem tests sometimes failing on Windows. 2013-11-26 16:12:46 -06:00
Andrew Bayer 8b94ee589b JCLOUDS-218. List templates in all known projects for CloudStack. 2013-11-26 10:00:09 -08:00
Andrew Bayer 23e43b2c8d JCLOUDS-381. Allow explicit naming of nodes via TemplateOptions. 2013-11-21 10:15:25 -08:00
Alex Heneveld 3ecbf90847 remove addl whitespace pointed out in JCLOUDS-331 2013-11-19 17:37:02 -05:00
Alex Heneveld 9a7336bb0e applies tidies for imageChooser (JCLOUDS-331) as suggested in pull #202 2013-11-18 10:31:34 -05:00
Andrew Bayer 0d3f6441c7 JCLOUDS-383. Adding c3 instance sizes. 2013-11-15 12:59:54 -08:00
Everett Toews ab4473561e Style fixes and corrections. 2013-11-15 10:46:49 -06:00
Andrew Bayer 2077da2879 JCLOUDS-361. Add support for filtering Describe* methods in EC2 2013-11-14 11:53:31 -08:00
jolly 6e7c2c7e88 add g2.2xlarge EC2 instance size (JCLOUDS-364) 2013-11-06 12:24:06 -08:00
Andrew Gaul c215d123c4 Address error-prone self-equals warning 2013-11-05 16:24:50 -08:00
Andrew Gaul 6c5effcdb1 Address error-prone empty statement warnings 2013-11-05 16:22:44 -08:00
Andrew Bayer cf597121b2 Cleaning up CloudStack SecurityGroupExtension work 2013-11-01 17:06:54 -07:00
Andrew Gaul 17ce72794c Enable RedundantModifier for Checkstyle 2013-10-31 10:23:30 -07:00
Everett Toews 1013986585 Refactored OpenStack pagination. Removed Rackspace pagination. Prefer PaginationOptions. 2013-10-24 16:52:25 -05:00
Andrew Gaul ac5559ca9e Address Checkstyle violations 2013-10-22 16:45:16 -07:00
istolber fb11c1fc1a JCLOUDS-350 rebuild server for Openstack NOVA added more options: password, name, ipv6 and ipv4 addresses. 2013-10-22 18:04:17 -05:00
istolber 1c9d1676cd JCLOUDS-348
list quotas for cinder + expected and live tests
2013-10-21 09:12:53 -05:00
istolber 725b7c5c2c JCLOUDS-353 openstack list availability zones for NOVA 2013-10-21 09:08:07 -05:00
istolber a42d62cb88 JCLOUDS-349
createServerByZone squashed commit
create server in a selected availability zone + live and expect tests
2013-10-18 09:50:27 -05:00
Andrew Gaul e30f865215 Work around CloudFiles test failures
Java helpfully interprets Expect: 100-continue instead of returning
the response code.  This commit reverts
100afba1d8.
2013-10-17 13:08:02 -07:00
Zack Shoylev 578a77d631 Reauthenticate on Keystone HTTP 401 (JCLOUDS-178)
The number of retries here is not the same as for 500 errors; expected
behavior is a quick fail while retaining some robustness.  This fix
should not reintroduce JCLOUDS-231.
2013-10-16 10:34:27 -07:00
Everett Toews 952d8444d4 Added Marconi (Queues) to accessRackspace. 2013-10-15 13:42:58 -05:00
Everett Toews 622d019f44 Fixed imports and formatting. 2013-10-15 11:23:05 -05:00
Everett Toews cf9ef9ce5f Renamed variable and method more appropriately. 2013-10-15 11:22:53 -05:00
Niraj Tolia 53146fb7bb [JCLOUD 301]: Make increased use of Invokable params cache
This patch moves the Invokable Parameter cache to Reflection2 and adds
a convenience method for it to allow it to be shared by multiple
callers. The subsequent ability of S3Utils to use this cache results
in a ~40% improvement in performance for generating signed GETs and
PUTs for S3. This commit also converts a few others calls to
Invokable.getParameters() but the observed benefit from those was
small in microbenchmarks.
2013-10-14 17:44:03 -07:00
Andrew Gaul 0722ce71af Skip testCreateBlobWithExpiry for Swift
jclouds does not implement this functionality.  Now all tests pass for
cloudfiles-us.
2013-10-13 20:01:44 -07:00
Andrew Gaul 8bf534cc3a Do not set hash to null unnecessarily
This avoids test failures seen in
CommonSwiftClientLiveTest.testObjectOperations.
2013-10-13 19:24:40 -07:00
Andrew Gaul 4aeaf5f5bd Get container name before creating with metadata 2013-10-12 14:10:17 -07:00
Andrew Gaul f468a951b2 Do not call createContainer(getContainerName)
BaseBlobStoreIntegrationTest.getContainerName implicitly calls
createContainer.
2013-10-12 12:39:18 -07:00
Everett Toews 3aabd50790 New base class for all OpenStack mock tests. 2013-10-11 17:17:00 -05:00
Everett Toews 3172e0bc11 ServiceType for Marconi/Cloud Queues. 2013-10-11 13:47:55 -05:00
Andrew Gaul 04c9c6afd2 JCLOUDS-339. Handle zero-length objects in Atmos
Atmos does not return a location header when writing zero-length
objects, which normally throws an HttpResponseException: no uri in
headers or content.
2013-10-08 22:14:37 -07:00
Zack Shoylev 7593935380 JCLOUDS-332 Skips tests broken on windows 2013-10-08 15:07:35 -05:00
Andrew Gaul 7d20658b02 JCLOUDS-334. Return URI only if container created
This allows us to honor the BlobStore.createContainerInLocation
interface and gives consistency with other providers.
2013-10-08 13:03:55 -07:00
Andrew Gaul 103dd7315b Skip failing testCreateBlobWithExpiry on Atmos 2013-10-08 11:45:25 -07:00
Shri Javadekar af245d67fe JCLOUDS-334. Return correct status while creating containers in Swift.
BlobStore.createContainerInLocation is supposed to return True if the
container was newly created and False if the container already
existed. This commit makes that happen for Swift blobstores.
2013-10-07 21:48:57 -07:00
Andrew Bayer 46b8fd0eee Fix OpenStack Nova SecurityGroupExtension based on live tests
So there were a few problems, but the core ugly one is that what you
pass in for creating a rule allowing groups' access is not the same
thing you get back from a group with such a rule, which makes mapping
between the arguments and the output insanely painful. So now, well,
we do some insanely painful stuff.
2013-10-07 17:50:53 -07:00
Niraj Tolia e017b8904c Trivial: Remove unnecessary for loop in Atmos signing 2013-10-07 15:00:51 -07:00
Alex Heneveld 8207c53cf2 JCLOUDS-331 - support specifying an imageChooser function in TemplateBuilder 2013-10-04 18:38:53 +02:00
Andrew Bayer aa8fab16f9 JCLOUDS-287. Add SecurityGroupExtension support to CloudStack. 2013-10-03 14:54:57 -07:00
Andrew Gaul f1fc63ab76 Add whitespace around keywords and braces 2013-09-30 09:39:29 -07:00
Andrew Bayer 0aa19a0cee Fix aws-ec2 live tests
Involves some non-trivial reworking of EC2 security group
translation/binding, but it was necessary.

Still problems with a number of tests:
- org.jclouds.aws.ec2.compute.AWSEC2TemplateBuilderLiveTest#testTemplateBuilderWithLessRegions
- org.jclouds.ec2.compute.EC2TemplateBuilderLiveTest#testTemplateBuilderCanUseImageIdWithoutFetchingAllImages

Those seem to be failing because there's caching going on that they're
not expecting, but I could be wrong.

Also failing:
- org.jclouds.aws.ec2.features.PlacementGroupApiLiveTest in general
- org.jclouds.aws.ec2.features.SpotInstanceApiLiveTest - a couple tests
2013-09-30 09:33:57 -07:00
Andrew Bayer 962f98969f Fix EC2 live tests
This removes
org.jclouds.ec2.compute.functions.PasswordCredentialsFromWindowsInstanceLiveTest
due to there not being an easily detectable valid AMI for it to run,
and low interest in actually running it in the first place.
2013-09-30 09:33:56 -07:00
Andrew Gaul 06b8cd7ac5 JCLOUDS-305. Disable S3 virtual host buckets for generic S3
Not all S3-compatible providers support virtual host buckets and thus
we should disable this feature by default.  Continue to enable virtual
host buckets for AWS-S3 which supports this although this feature
suffers from DNS settling issues.  Ran ran integration tests against
AWS-S3 and Scality using its S3 API.
2013-09-27 16:22:42 -07:00
Andrew Bayer 7290cc8ea6 JCLOUDS-303. unhook ApiMetadata type hierarchy from ec2 2013-09-27 15:58:25 -07:00
Andrew Bayer bd984ba508 CloudStackApi should extend Closeable
Without that, you can't actually do view.unwrapApi(CloudStackApi.class).
2013-09-27 11:58:33 -07:00
Niraj Tolia e8ef5c0665 [JCLOUDS-301] Reduce reflection overhead of Invokable.getParameters()
By caching the results from Invokable.getParameters(), this commit
improves request signing performance (GETs and PUTs) for S3 by >
3X. These performance problems were seen in production and diagnosed
using the YourKit profiler.
2013-09-27 07:49:09 -07:00
Andrew Gaul 5f8961723f Remove BlobStore Map abstractions
These provide little end-user benefit and make evolving the core API
more difficult.  We deprecated these in 1.6.0.
2013-09-25 20:46:31 -07:00
Andrew Bayer 389ba6c94a JCLOUDS-267. Add SecurityGroupExtension support for Nova. 2013-09-17 11:47:42 -07:00
Andrew Gaul b2016703ad Add Atmos-specific MD5 checksum header
Tested against Atmos Online.
2013-09-11 18:05:47 -07:00
Andrew Gaul 6cc8e36f43 Add test for correct and incorrect contentMD5
Tested against atmos (skipped), aws-s3, azureblob, cloudfiles-us, and
filesystem (skipped).
2013-09-11 16:10:45 -07:00
Andrew Gaul 342ae65974 [JCLOUDS-279] Remove spurious executable bit 2013-09-11 15:54:48 -07:00
Andrew Gaul 65729acd6e Explain expected result in filesystem test 2013-09-06 09:26:43 -07:00
Andrew Gaul 4b52f1ff86 [trivial] Simplify use of Optional.or
Also correct checkArgument call.
2013-09-05 17:09:14 -07:00
Andrew Gaul d8490f872d Enable some Xlint warnings
Also address a handful of warnings.
2013-09-04 19:45:44 -07:00
Andrew Gaul 3ad6b275d4 Run some filesystem integration tests
Previously no integration tests ran, now we see:

Tests run: 43, Failures: 0, Errors: 0, Skipped: 8
2013-09-04 13:26:46 -07:00
Andrew Gaul b80bb48be3 Add trailing slash to Atmos listDirectories
This is more consistent with examples in the Atmos programmer's guide
and allows this operation to succeed when used with ViPR.
2013-08-30 09:07:12 -07:00
Andrew Bayer de8ab57072 Cleanup of Client->Api getters for vcloud 2013-08-29 15:03:43 -07:00
Andrew Bayer a61ad06cbf JCLOUDS-166, JCLOUDS-167 - Removing async from vcloud and Terremark APIs/providers 2013-08-29 11:29:14 -07:00
Andrew Gaul 15d9abead0 Skip testDirectory on S3
This test cannot succeed due to the way directories are implemented as
prefix pseudo-files in S3.
2013-08-27 23:01:04 -07:00
Andrew Bayer e6765cc5db JCLOUDS-150. De-async SQS. 2013-08-27 12:16:30 -07:00
Andrew Bayer 91d6736c22 JCLOUDS-150. De-async CloudWatch. 2013-08-27 12:16:30 -07:00
Zack Shoylev 100afba1d8 Skips tests for time signed URLs 2013-08-26 20:35:16 -05:00
Andrew Gaul 1a003ee731 Handle large putBlob with filesystem blobstore
Previously large putBlob caused an OutOfMemoryError even with
repeatable Payloads.  Fixes JCLOUDS-248.
2013-08-26 20:17:46 -04:00
Francis Devereux d60d2681d1 JCLOUDS-251: Swift: Delete chunks when deleting a multipart blob
Also:
- Make SwiftBlobIntegrationLiveTest.testMultipartChunkedFileStream more realistic by uploading a file large enough to be split into parts.
- JavaDoc fixes for SwiftBlobStore: don't reference nonexistent methods.
2013-08-25 10:20:22 -05:00
Francis Devereux d05e77b8b6 Fix JCLOUDS-250 for the common case where blob names do not contain / 2013-08-25 10:17:14 -05:00
Francis Devereux c11614400f Handle quoted ETags for OpenStack objects to fix JCLOUDS-247
This avoids a 'java.io.IOException: Unrecognized character: "' when a quoted ETag is encountered (which happens when getting a multipart blob from Rackspace Cloud).
2013-08-24 21:03:47 -05:00
Andrew Bayer eabdfe2d92 JCLOUDS-242. Fixing AWSEC2SecurityGroupExtension based on JCLOUDS-242 fix. 2013-08-18 13:53:15 -04:00
einsdo 97c3a203f4 JCLOUDS-241. Added type, page, and pagesize to ListUsageRecordsOptions
and corresponding test cases. These are optional parameters for
listUsageRecords
http://cloudstack.apache.org/docs/api/apidocs-4.1/root_admin/listUsageRecords.html

Removed null check on usage id because this can be null.
2013-08-12 14:28:49 -07:00
Andrew Bayer e0ea017a56 JCLOUDS-235. Add support for datadisks to CloudStackTemplateOptions
Also adds support for the new options to
CloudStackComputeServiceAdapter, unsurprisingly. Also got rid of the
in fact wrong mutual exclusivity of dataDiskSize and diskOfferingId in
DeployVirtualMachineOptions - that's a misleading bit from the
CloudStack API docs.
2013-08-08 13:50:34 -07:00
Andrew Gaul b2bf75f8ef Revert "A 401 error should result in re-authenticating for a new token"
This reverts commit 833f046a5c.

References JCLOUDS-231
2013-08-05 21:36:42 -07:00
Andrew Bayer a2af31c419 Removed async from elasticstack 2013-08-02 07:57:41 -07:00
Andrew Bayer 1a6071ab92 Removed async from cloudsigma 2013-08-02 07:57:41 -07:00
Zack Shoylev a9cb3cf068 When creating a server, allow attaching server to custom network
https://issues.apache.org/jira/browse/JCLOUDS-202
2013-08-01 21:46:24 -05:00
Andrew Bayer 2fcd90c394 JCLOUDS-220. Adding projectId to a bunch of CloudStack API options 2013-08-01 17:17:24 -07:00
Andrew Phillips 375cb2075d JCLOUDS-155: Making header handling in OpenStack case-insensitive
Submitted by Rodney Beede
2013-08-01 19:09:48 -04:00
Everett Toews bf723a8649 Support Disk Configuration Extension in NovaTemplateOptions 2013-08-01 16:40:00 -05:00
Everett Toews e6b6e4edb2 Support Disk Configuration Extension 2013-07-31 23:10:35 -05:00
Andrew Phillips f6b5b67b5b JCLOUDS-200: Consolidate all feature-specific in the AWS provider
Follow-up to c64c7423
2013-07-26 15:03:12 -04:00
Diwaker Gupta c64c7423cd AWS-S3 configurable temporary signed URL support
Introduces AWSS3BlobRequestSigner, which reuses the
RequestAuthorizeSignature filter for most of the heavy lifting.
Other implementation details based on [1].

Tested with AWSS3BlobSignerLiveTest, in particular,
testSign(Get|Put)UrlWithTime.

Closes JCLOUDS-200

[1] http://s3.amazonaws.com/doc/s3-developer-guide/RESTAuthentication.html
2013-07-24 15:22:45 -07:00
Andrew Bayer 48b499c636 JCLOUDS-199. CloudStack live tests against ACS 4.2 simulator cleanup.
- ACS 4.x doesn't like taking SSH pub keys from the filesystem, so
generate them on the fly.
- vm.getDisplayName() can be null now.
- Add new possible resource limit types.
- Default to looking template=osFamily=CENTOS, since that's the only
template guaranteed to be there in the simulator.
- Use adminJobComplete instead of jobComplete in admin tests
- Accept capacity/usage/etc of 0.
- Premium configuration category not present in ACS.
- Sleep a bit between deleting a domain and verifying it's not there
any more. Also expect an IllegalStateException.
- Given that there are issues deleting zones at the moment (through
the UI, too), use a different zone for pod and zone tests.

Still failing tests:
- pretty much everything that creates a VM and expects to log into it,
but that's simulator-specific.
- Zone deletion, due to a bug in ACS, apparently.
- Registering and creating templates
- creating volumes from snapshots, and attaching volumes
2013-07-22 12:34:59 -07:00