Commit Graph

8382 Commits

Author SHA1 Message Date
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
Andrew Bayer 2c6d8b2479 JCLOUDS-195. Add egress firewall rules for CloudStack 2013-07-21 13:38:57 -07:00
Andrew Bayer 5ec05fed70 Allow skipping duplicate-finder-plugin by setting skipDuplicateFinder property to true 2013-07-17 12:42:40 -07:00
Andrew Phillips c6facc13d6 Follow-up to Azureblob cleanup
See discussion at https://github.com/jclouds/jclouds/pull/66
2013-07-17 10:32:05 -07:00
Andrew Gaul e14e23be52 Revert "Add Atmos-specific MD5 checksum header"
This reverts commit 98230e60a4.

This succeeded in my tests but integration tests fail.
2013-07-17 10:29:42 -07:00
John Kew 865b910637 Cleanup of Azureblob code; as per pull request review. Additional items
not covered here are assigned specific bug ids.
2013-07-16 18:08:49 -07:00
Andrew Gaul fcdc3d6138 Expect exception from FilePayload.getInput
Previously the constructor threw this.  Fixes regression from ac58a70.
2013-07-16 08:26:50 -07:00
Andrew Gaul ac58a70e32 Do not eagerly check for existence in FilePayload
This is a TOCTOU violation and FilePayload.getInput already propagates
this.  This commit allows external callers like jclouds-cli to
introspect on the exception type, returning a more friendly error
message in some situations.
2013-07-15 23:34:12 -07:00
Diwaker Gupta d52f460562 Introduce StripExpectHeader filter and a property to control it.
Some providers (specifically HP Cloud and Google Cloud Storage) do not
properly support Expect: 100-continue headers. JDK7 is stricter in its
handling of the Expect header than JDK6 -- in particular, it expects
servers to properly respond to an expect header and times out only if a
prior timeout did not exist on the underlying HTTP connection. As a
result, JDK7 tests against these providers hang and fail.

This commit introduces a new filter -- appropriate called
StripExpectHeader -- that is controlled by the property
jclouds.strip-expect-header. The property defaults to false to preserve
existing behavior but allows applications to tweak Expect header
handling.

Tested by running HPCS live tests with JDK7 -- previously most of these
tests would fail with timeouts.

Closes JCLOUDS-181
2013-07-11 15:04:05 -07:00
zack-shoylev 1178f47cd7 Upgrade to gson 2.2.4
https://issues.apache.org/jira/browse/JCLOUDS-117
2013-07-11 13:52:32 -07:00
Andrew Gaul 98230e60a4 Add Atmos-specific MD5 checksum header
Tested that Atmos Online and Synaptic Atmos both enforce this.
2013-07-10 22:16:44 -07:00
Andrew Gaul 0d310f3643 [trivial] demote Boolean to primitive 2013-07-10 22:12:24 -07:00
Andrew Gaul d5fd35b45a Set provider id in AtmosClientLiveTest
This allows Atmos live tests to run.
2013-07-10 21:16:07 -07:00
John Kew 1b2fb8259f JCLOUDS-161: large blob support for Azure
Large blob support for AzureClient; the next step of this is to
support PutOptions.multipart and digest a blob into 4M parts. This
just implements the Azure interaction.
2013-07-10 16:04:51 -07:00
Andrew Gaul c299b8ff61 Add Swift-specific MD5 checksum header
Tested against cloudfiles-us, hpcloud-objectstorage, and
swift-keystone.  Reference for ETag:

https://answers.launchpad.net/swift/+question/157064
2013-07-09 21:35:17 -07:00
Everett Toews da211e257a Quantum renamed to Neutron 2013-07-09 17:45:42 -07:00
Zack Shoylev 833f046a5c A 401 error should result in re-authenticating for a new token 2013-07-09 14:14:37 -07:00
Andrew Gaul 60e9062894 Checkstyle fixes 2013-07-09 14:09:44 -07:00
Andrey Trubitsyn 02d1ac4648 Added test environment for Quantum v2.0 client
This patch adds test environment for the future
Quantum v2.0 client implementation.

Signed-off-by: Andrey Trubitsyn <andrey@sentilla.com>
2013-07-09 12:18:09 -07:00
Ignasi Barrera bbfec4a990 JCLOUDS-160: Support tags in EC2 images
Based on the work made by Brock Noland
2013-07-06 10:08:10 +02:00
JoshVote 8db0218cf7 JCLOUDS-126 - Support and tests for region selection in swift-keystone BlobStore 2013-07-03 13:44:46 -07:00
Ignasi Barrera 335f5943f4 JCLOUDS-149: Reuse checkstyle configuration 2013-07-02 18:02:03 +02:00
Andrew Bayer c6986efda6 JCLOUDS-151 - CloudStack refactored to remove async, *Client renamed to *Api. 2013-07-01 12:13:48 -07:00
Andrew Bayer 5f3b8d3fa7 JCLOUDS-150 - Removal of async from AWS - specifically EC2
...and EC2-related elsewhere. Also moved *Client -> *Api, and moved
everything from .../services to .../features, and threw in a bunch of
Optionals to fit the EC2Api approach.

And a very big tip of the hat to nacx for figuring out the generics
stuff my brain just could not handle. =)
2013-07-01 12:12:26 -07:00
Andrew Bayer 5f524ee6c9 JCLOUDS-101 - Add SecurityGroupExtension for compute
- Adds the SecurityGroupExtension to compute, with tests and stub
support.
- Gets everything else to actually build against this.
- Unifies on compute's IpPermission/IpProtocol, eliminating EC2's.
- Converters from EC2/Nova/CloudStack SecurityGroup (and rules, for
the latter two) to the compute SecurityGroup (and rules, etc).
- EC2SecurityGroupExtension and tests.
- AWSEC2SecurityGroupExtension and tests - depends on JCLOUDS-99.
2013-06-26 14:59:01 -07:00
Andrew Bayer a906f9f4ec JCLOUDS-138. Add CloudStackImageExtension support. 2013-06-26 13:24:16 -07:00
Andrew Bayer ccb4323986 Cleaning up changes from JCLOUDS-106 2013-06-24 13:02:14 -07:00
Andrew Bayer 95308de808 JCLOUDS-105 - fixing a problem caused in cases where vm.isPasswordEnabled() is false and no keypair is specified. 2013-06-23 16:08:05 -07:00
zack-shoylev 46f25bc913 Ensure rackspace cloudidentity live tests pass where applicable
Disables incompatible keystone tests
2013-06-21 11:33:05 -07:00
Everett Toews 6249d60b0b Added the SYD zone to Rackspace providers. 2013-06-20 16:38:01 -05:00
Andrew Bayer 82f25150b9 JCLOUDS-99. Enable use of Iterable<IpPermission> for aws-ec2
- Added AWSEC2CreateSecurityGroupIfNeeded, using
AWSSecurityGroupClient's ability to call
authorizeSecurityGroupInRegion with Iterable<IpPermission>

- Added a utility method,
ComputeServiceUtils.getPortRangesInList(int... ports), to get pairs of
start/end ports covering all ranges in a list of ports. Used above.
2013-06-19 14:07:18 -07:00
Andrew Gaul 1a6be0eb67 Do not repeat array type in initializers 2013-06-18 21:02:50 -07:00
Andrew Bayer 75385ee57d JCLOUDS-100. Add AWSServerErrorRetryHandler, with an increased back
off time.
2013-06-17 16:48:15 -07:00
Anton Panasenko ff3405c967 JCLOUDS-127: Added a method to check if the context is open
- Added isOpen in Context interface
- Refactoring Closer class:
  - method close can only call once
  - method close is threadsafe
  - added method getState
2013-06-18 00:31:51 +02:00
zack-shoylev bcf8e3fe50 Fixes testCreateAndRunAService by fixing the outdated jetty URL 2013-06-17 15:08:00 -05:00
Andrew Bayer 451c4326a2 Cleaning up lurking copyright issues/NOTICE txt 2013-06-16 19:38:20 -07:00
Andrew Bayer 8f7e623bed Adding DEPENDENCIES to rat exclude 2013-06-12 16:45:29 -07:00
Andrew Bayer 32ea520f34 Add license headers to src/test/resources where possible, more fine-grained RAT exclusions 2013-06-12 16:45:29 -07:00
Andrew Phillips dd54c14e21 JCLOUDS-124: Missing ^:dynamic in Clojure blobstore example
Submitted by Trevor Wennblom
2013-06-12 09:23:34 +01:00
Andrew Phillips f8fae7d557 JCLOUDS-123: Using Clojure core incubator-specific nilsafe in AMI service binding
Submitted by Trevor Wennblom
2013-06-12 09:23:01 +01:00
Andrew Bayer a3488dc43c JCLOUDS-105. Real fix for keypairs being ignored if VM says it's password-enabled. 2013-06-06 10:26:20 -07:00
Andrew Bayer fbe637c8bf JCLOUDS-106. Add proper support for generation/detection of keypair/security groups to CloudStack. 2013-06-06 10:26:20 -07:00
Jeremy Daggett 7651657cfc Remove async interface support from OpenStack Cinder API 2013-06-06 11:08:21 -05:00
Andrew Gaul 86147cd961 Remove AsyncBlobStore from DeleteAllKeysInList
We deprecated AsyncBlobStore in 1.6.0.  Subsequent commits will
require the caller to provide an ExecutorService.
2013-06-05 10:41:55 -07:00
Andrew Gaul d113b0ba63 Remove Strings2.replaceAll(String, Pattern, String)
Replace with direct calls to
Pattern.matcher(String).replaceAll(String).
2013-06-03 14:41:27 -07:00
Andrew Gaul 64e9a4e4c6 Remove Strings2.replaceAll(String, char, String)
String.replace(String, String) serves this purpose better.
2013-06-03 14:41:18 -07:00
Andrew Bayer a1c09f8391 Use default Apache remote resources 2013-05-31 10:14:23 -07:00
Andrew Bayer fdd9f08f40 Rename top-level artifact properly 2013-05-31 10:14:20 -07:00
Andrew Bayer 752152b09d Needed to update resources POM as well for remote resources to work right 2013-05-29 16:58:55 -07:00