Commit Graph

8468 Commits

Author SHA1 Message Date
Andrew Gaul 3fdb6d2e91 Avoid extra copy with Splitter result 2014-07-07 23:36:22 -07:00
Christopher Dancy 3659a5f583 JCLOUDS-607: ComputeService.createNodesInGroup throws NPE on FloatingIPApi.create() 2014-07-07 19:46:54 -04:00
Andrea Turli 4cf6efe39a refactor BaseComputeServiceLiveTest to simplify the extension of this base test 2014-07-07 10:53:13 +02:00
Markus von Rüden a39eadce50 JCLOUDS-619: Introduce MultipartNamingStrategy to generate part names correctly. 2014-07-04 01:06:46 -07:00
Andrew Gaul 05c37c2c77 Consistently use Square's mockwebserver
Google mockwebserver merged into OkHttp as per:

https://code.google.com/p/mockwebserver/
2014-07-03 14:39:07 -04:00
Andrew Gaul 71043ac9a2 Provide descriptive bogus values for properties 2014-07-02 22:42:00 -07:00
Andrew Gaul f5244884a5 Avoid impossible UnsupportedEncodingException 2014-07-02 17:30:09 -07:00
Roman C. Coedo 3932e8a3bd Default values for aws credential properties
Every project was using undefined properties in their pom.xml.
A default value for test.aws.identity and test.aws.credential was
added.
2014-07-02 15:33:10 -07:00
Andrew Gaul d43c3ea3e0 Handle short reads in BasePayloadSlicer
InputStream.read(byte[]) can return fewer bytes than requested.
Specifically ByteSource.concat(ByteSource...).openStream() will only
return as many bytes as the current ByteSource contains.  Thus
ByteSources.repeatingArrayByteSource(byte[]).openStream() will return
short reads despite the byte[] input from its single logical
InputStream.
2014-07-02 15:13:20 -07:00
Epimenidis Voutsakis b259af48c0 Added ConsolesApi extension for openstack-nova 2014-07-02 11:39:52 -07:00
Ignasi Barrera e19c5e9fb6 Exclude the CONTRIBUTING file from the rat check 2014-07-02 17:36:26 +02:00
Ignasi Barrera da3509056c Added the CONTRIBUTING file 2014-07-02 16:48:14 +02:00
Ignasi Barrera b9029ea7a6 JCLOUDS-617: Use the configured JCE provider in the Cipher payloads 2014-07-02 00:27:08 +02:00
Chris Custine ba894fe07b JCLOUDS-585: Add HP Cloud Block Storage Provider (OpenStack Cinder) 2014-07-01 12:43:30 -07:00
Andrew Gaul 7f8e6a03d7 Address Checkstyle violations 2014-07-01 09:33:46 -07:00
Andrew Gaul 5118e16660 Upgrade to testng 6.8.8
Partial changelog:

https://github.com/cbeust/testng/blob/master/CHANGES.txt
2014-06-30 19:04:44 -07:00
Andrew Gaul 77eff6fffb Close InputStream after use
Found with Kohsuke's file-leak-detector.
2014-06-30 18:26:55 -07:00
Ignasi Barrera eb884e7c09 JCLOUDS-618: Allow servers without boot device in ElasticStack 2014-06-27 19:19:42 +02:00
Chris Custine 4d5f57a303 JCLOUDS-594: ComputeService.suspendNodesMatching throwing UnsupportedOperationException but call still succeeds 2014-06-27 13:04:01 -04:00
Everett Toews 1db5d38a09 Fixed NPE when Server has no Image 2014-06-26 15:04:05 -05:00
Andrew Gaul a68eb38901 JCLOUDS-612: Securely create temporary directories
This commit addresses a potential security issue where an attacker
could hijack the ScriptBuilder payload by predicting the temporary
directory name.
2014-06-25 23:23:06 +02:00
Christopher Dancy 8598ee858a JCLOUDS-610: Return the affected nodes from resumeNodesMatching, suspendNodesMatching and rebootNodesMatching
Methods have been refactored to match the functionality provided by destroyNodesMatching.
2014-06-24 22:58:34 +02:00
Andrew Gaul 8fa209b15e Use more specific testng asserts where possible
These asserts yield more informative error messages.  Found with:

grep -rI 'assertTrue(.* =='
grep -rI 'assertTrue(.* !='
grep -rI 'assertTrue(.*\.equals('
2014-06-24 13:54:01 -07:00
Andrew Gaul 5b5e713cba Avoid unnecessary object creation
Prefer StringBuffer.append(string, index1, index2) over
StringBuffer.append(String.substring(index1, index2).
2014-06-24 13:15:18 -07:00
Chris Custine 309c053c77 JCLOUDS-584: HP Cloud Object Storage Fixes for 13.5 2014-06-24 12:01:51 -07:00
Everett Toews b95898fc0a Fix for JSON parse error on createNodesInGroup (JCLOUDS-558) 2014-06-23 13:40:40 -05:00
Shri Javadekar c417ddef67 JCLOUDS-589: Reauthenticate on Keystone HTTP 401
This commit ports the Keystone 2.0 fix from JCLOUDS-178 to Keystone
1.1.
2014-06-21 18:58:40 -07:00
Andrew Bayer 5641f675da JCLOUDS-602. Added live tests for new EBS volume fields.
While they're implemented in apis/ec2, the tests are in
providers/aws-ec2, generally, to make sure ec2-alike clones won't barf
on them. We're exercising creation of volumes, images and instances
with the new options. I also had to do some sketchy wait-and-loop'ing
in AMIAPILiveTest.testCreateAndListEBSBackedImage() due to what seems
to be a delay on new AMIs showing up in filtered DescribeImages calls,
though they'll show up instantly when you specify the image ID. Go figure.
2014-06-20 12:27:17 -07:00
Andrew Bayer 6451098f72 JCLOUDS-602 - Add support for volumeType, iops and encrypted to EBS.
Adds CreateVolumeOptions for volume creation, adds support for the
above EBS configs in Image, Volume, BlockDeviceMapping, etc.
2014-06-20 12:27:17 -07:00
Jeremy Daggett da50cd6cbe JCLOUDS-455: Add get() method to KeyPairApi 2014-06-20 11:11:30 -07:00
Ignasi Barrera b0250cfb4f JCLOUDS-588: Register discovered images in the image cache
Images were cached in memory using a memoized supplier. To allow growing
this cache with the discovered images, the ImageCacheSupplier class has
been created. It provides an in-memory cache with all discovered images
and acts as a view over the image cache that also provides access to
them.

The in-memory cache for the discovered images expires with the session,
just as the image cache does.

The default memoized image supplier has been changed to the
ImageCacheSupplier, to make sure all providers get injected the right
instance, and the old supplier has been qualified with the 'imageCache'
name, in case a provider needs the basic image cache.
2014-06-20 12:35:18 +02:00
Andrew Gaul ad56db2a4d Upgrade to OkHttp 1.6.0
This upgrades both drivers/okhttp and mockwebserver.  Changelog:

https://github.com/square/okhttp/blob/master/CHANGELOG.md
2014-06-18 19:49:50 -07:00
Jeremy Daggett 1982626cd6 Fix replaceAll regex to handle spaces correctly 2014-06-18 10:21:01 -07:00
Jeremy Daggett 235092e517 JCLOUDS-471: Adds pool field to FloatingIP and updated related tests. 2014-06-17 11:43:10 -07:00
Chris Custine 8c8fe83f3e JCLOUDS-582: Enhancements to availability zones api 2014-06-17 11:31:06 -07:00
Christopher Dancy ea68554244 NodePredicates gained static predicate SUSPENDED
Replaced hard-coded Strings in toString methods of static predicates with their enum.toString counterparts

Added test 'testNodeRunningFailsOnSuspended'

Revert "Added test 'testNodeRunningFailsOnSuspended'"

This reverts commit 2a543bfe20540bb4f10ef4f86e845a63bdbe90e3.

Removed test 'testNodeRunningFailsOnSuspended'. Added test 'testNodeSuspendedReturnsTrueWhenSuspended'.

Renamed '

Revert "Renamed '"

This reverts commit 061e9292a812066562ab47ba5eea15337fc13c3d.

Renamed 'AtomicNodeSuspended.nodeRunning' to 'AtomicNodeSuspended.nodeSuspended'.\nWhere applicable combined all calls to 'replay(Object...)' instead of the old 'replay(node);replay(computeService);'
2014-06-16 16:58:35 -05:00
Andrew Gaul e799a7409c JCLOUDS-597: HashCode methods for Content-MD5
This works more naturally with Guava Hashing methods and immutability
provides better safety guarantees.  Also deprecate existing byte[]
methods.
2014-06-12 15:29:17 -07:00
Jeremy Daggett 446671a2a7 Improve readability of expect test output 2014-06-11 15:35:45 -05:00
Jeremy Daggett a6c89d9150 Pretty formatted json test resources 2014-06-11 15:37:02 -04:00
Chris Custine c857ccc479 JCLOUDS-583: Updates HP Cloud compute provider to work with 13.5 release 2014-06-10 09:41:46 +02:00
Andrew Phillips 9b50754c24 Cleaning up Checkstyle violations from b1c1636 and 39f77ad 2014-06-09 23:17:37 -04:00
Andrew Phillips b1c163636d Adding a test to check for JCLOUDS-278
Contributed by Bill Branan.
2014-06-09 15:15:17 -04:00
Andrew Gaul bb3c9d2657 Upgrade to findbugs-maven-plugin 2.5.4
This also upgrades FindBugs to 2.0.3.  Notably this improves
compatibility with Guava constructs.  Changelogs:

https://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11701&version=19833
http://findbugs.sourceforge.net/Changes.html
2014-06-08 23:09:53 -07:00
Andrew Gaul 4c74b49754 JCLOUDS-546: Enforce no Javadoc @author annotation 2014-06-07 21:44:58 -07:00
Andrew Gaul 9cdd53b0b7 JCLOUDS-546: Remove Javadoc @author annotations
Annotations removed with:

find -name \*.java | xargs sed -i /@author/d

Empty Javadoc removed with multiple iterations of:

find -name \*.java | xargs sed -i -z 's/ \*\n \*\// \*\//'
find -name \*.java | xargs sed -i -z 's/ \* \n \*\// \*\//'
find -name \*.java | xargs sed -i -z 's/\/\*\*\n \*\/\n//'
2014-06-07 21:44:54 -07:00
Ignasi Barrera 39f77ad3f8 JCLOUDS-570: Fallback to the GetImageStrategy
If the TemplateBuilderImpl is given an imageId but the image can not be
found in the image cache, fallback to the GetImageStrategy to perform a
call to the provider to try to get it.

We've seen that in some cases images are not returned in the image list
but they actually exist in the provider. This fix won't make them
available when filtering by other properties such as the operating system,
etc, but at least will make them available if their id is known.
2014-06-06 12:40:27 +02:00
Ignasi Barrera a7e342422c JCLOUDS-517: New ElasticHosts images and regions
Added the new ElasticHosts regions.

Updated the ElasticStack api to get the list of standard
drives using an API call. All providers except ServerLove
support the new API call, so the old logic in the ElasticStack
api has been moved to that provider. The rest of providers will now
extract all the OperatingSystem information by parsing the name of the
StandardDrive.

A unit test has been added to the ElasticStack api with all the images
that were hardcoded, to make sure all names are still parsed as expected
and all information in the existing providers is kept.

Modified the default template for all ElasticHosts providers to
match newer Ubuntu images and updated the Template*Live tests
accordingly.

Also refactored the WellKnownImage map to a supplier to lazy load it
when needed and avoid unexpected errors when building the Guice injector
if there are authentication errors or similar.
2014-06-02 16:57:44 +02:00
Andrew Gaul da8517f295 Increase timeouts for signed URL tests
Clock skew between the client and blobstore can cause these tests to
spuriously fail.  This commit allows 5 seconds skew in either
direction.
2014-05-30 14:58:40 -07:00
Andrew Gaul 2342abd3c5 Address Checkstyle violations 2014-05-30 11:10:14 -07:00
Andrew Gaul 186f052022 Remove BlobBuilder and Payloads.calculateMD5
Callers should instead explicitly set contentMD5, usually with the
results from Guava Hashing.md5(). This narrows the API and removes a
strange IOException from callers.  Further it removes a dangerous
rebuffering of arbitrarily-large non-repeatable Payloads.
2014-05-28 12:54:18 -07:00