2881 Commits

Author SHA1 Message Date
gurkerl83
d82868cc47 Replace embedded and repackaged GSON library
Replace substituted GSON package names with those provided from the vendor.
Reduce OSGi-metadata declaration of core-module because the artificial package org.jclouds.json.gson.internal was removed.
Remove the Gson module its children Gson bundle, and Gson shaded.
Remove duplication conflict and check-style rules due to the removal of the internal Gson module.
Add maven repository where a custom version of the Gson library gets hosted, which exports all packages.

Remove particular repository

Remove the declaration of the repository that serves a custom build GSON version. The build uses GSON in its original form of the vendor, which gets distributed through the standard distribution channel. The identifiers for group, artifact, and version correspond to the latest stable release of GSON.

Integrate GSON library in Clouds Core Bundle

The change contained in the commit puts the GSON library into the classpath of the JClouds core module.
After several tests with Karaf and Karaf JClouds, especially if the Maven identifier matches the original GSON library, there are only a limited number of ways to keep the deployment effort low.

Specifically, Karaf has a set of predefined Maven repositories that can be easily customized. The order in which a particular repository is resolved into the customized GSON library is more difficult. In normal OSGi applications, which do not have such a management function, I imagine this configuration to be more complicated.  Sure, a unique identifier would help, but then we are back to step 1.

Although I honestly don't like to see this kind of approach in a codebase I'm working with, there are not many alternatives to the main aspect of deployment mentioned above.

Maybe the approach can still ease the problem in the short term. In a further mid-term step, however, this problem must be addressed in general.
2020-10-26 19:58:41 +09:00
Andrew Gaul
1cd28c93c4 Remove unintended executable permissions
Fixed via:

find -executable -not -type d -name \*.java -exec chmod -x {} \;
2020-10-19 13:13:34 +09:00
Tamas Cservenak
d65047c87b
JCLOUDS-1552: Do not attempt to parse empty payload (#82) 2020-09-21 15:46:25 +02:00
Andrew Gaul
3e25b835c6 JCLOUDS-1333: Fix Guava 21 issues 2020-06-25 19:29:06 +09:00
Sam Ottenhoff
8762fbaf8e JCLOUDS-1473 add INTELLIGENT_TIERING enum 2020-06-25 09:11:33 +09:00
Andrew Gaul
62767a1461 JCLOUDS-1333: JCLOUDS-1334: JCLOUDS-1470: Require Java 8 and Guava 22
This allows compatibility with Guava 29.  Also unwind some older
workarounds.
2020-06-25 08:11:30 +09:00
ikky888
69ca45720d
JCLOUDS-1541: Add Middle East (Bahrain) region to the AWS EC2 and S3 providers list 2020-04-04 10:48:01 +09:00
Colm O hEigeartaigh
99ef891e76 JCLOUDS-1540 - Update Snakeyaml 2020-03-03 17:41:33 +09:00
Ignasi Barrera
f5b29c7028 Next development version 2.3.0-SNAPSHOT 2019-10-21 10:32:43 +02:00
Ignasi Barrera
7221844fac Apache jclouds 2.2.0-rc1 release 2019-10-21 10:32:43 +02:00
Ignasi Barrera
644fb4a511 Next development version 2.3.0-SNAPSHOT 2019-10-13 11:00:35 +02:00
Ignasi Barrera
0aef8ca79f Apache jclouds 2.2.0-rc1 release 2019-10-13 11:00:06 +02:00
Ignasi Barrera
a2cbdd3385 Etag is not supported in OSX 2019-10-13 10:32:50 +02:00
Roded Bahat
a248697c06 JCLOUDS-1509: read AWS response data with the UTF-8 charset explicitly
AWS response data is encoded in UTF-8. Creating a String from said data
using the JVM's default charset results in incorrect encoding on
environments in which the JVM's default charset is not UTF-8.

https://issues.apache.org/jira/browse/JCLOUDS-1509
2019-08-08 15:32:25 +03:00
Ignasi Barrera
b8606a10dd
JCLOUDS-1166: Relocate the gson internal packge to be able to keep using it (#35)
* JCLOUDS-1166: Relocate the gson internal packge to be able to keep using it

* Fixes

* Fix import order and shaded jar

* More fixes

* Proper dependency configuration

* Fix typos

* Bring back duplicate exclusions
2019-06-17 17:43:29 +02:00
Andrew Gaul
a70ca2d25c Convert a handful of HTTP URLs to HTTPS 2019-05-21 20:52:22 +09:00
Sergi Castro
3e855c26be
Add ARM architecture to ec2 image and the related instance types 2019-05-14 09:00:31 +02:00
Olaf Flebbe
92a3c68838 JCLOUDS-1497: Fix checkstyle-suppressions for jcloud-labs (#27)
* Fix NoWhitespaceBefore Checkstyle Violation

* checkstyle updates: remove suppressionsfilter from checkstyle.xml

* suppressions now done in maven-checkstyle-plugin
2019-05-07 11:49:54 +02:00
Olaf Flebbe
d51d6e44bc JCLOUDS-1496: Update maven-compiler-plugin for increased JDK compatibility (#25)
* JCLOUDS-1496: Update maven-compiler-plugin for increased JDK compatibility

* increase maven-compiler-plugin version

* A space change to trigger jenkins again

* Another space change to trigger jenkins again
2019-04-24 16:12:45 +02:00
Olaf Flebbe
2fbf10c9c9 JCLOUDS-1495: maven plugins are not correctly referred to (#24) 2019-04-10 19:54:09 -07:00
Andrew Gaul
a1c9ce8217 JCLOUDS-1494: Add S3 Deep Archive tier
Also test Glacier tier now that Amazon allows creating objects with
this storage class.
2019-04-06 18:46:14 +09:00
Dani Estevez
6fda1736ad Adds EU North 1 region (Stockholm) 2019-03-15 12:00:20 -04:00
Dani Estevez
1c9322e41c Adds China North West Region (Ningxia) 2019-03-15 12:00:20 -04:00
Andrew Gaul
8eae27c98d Make interfaces with only statics into classes
This prevents instantiation.  Found via error-prone 2.3.3.
2019-02-23 16:34:11 +09:00
Andrew Gaul
53c47aa0bd Correct uses of checkNotNull
These should provide a descriptive second argument, not the same as
the first argument which is null in the failure case.  This also found
a logic error in CreateVolumeResponseHandler.
2019-02-23 16:33:40 +09:00
Andrew Gaul
a4855eb9fd JCLOUDS-1489: expect S3 put archive to succeed 2019-02-07 20:03:14 -08:00
Andrew Gaul
13f32b28c9 Lazily open InputStream during complete MPU
Previously the filesystem provider could exhaust file descriptors by
eagerly opening up to 10,000 parts.  This partially undoes
JCLOUDS-1367.
2019-01-29 21:54:47 -08:00
Andrew Gaul
29eec441e9 JCLOUDS-1371: JCLOUDS-1488: list optimize prefix
Previously getBlobKeysInsideContainer returned all keys and filtered
in LocalBlobStore.  Now getBlobKeysInsideContainer filters via prefix
which can dramatically decrease the number of keys returned,
especially for the filesystem provider.  Further optimizations are
possible for delimiter.
2019-01-29 17:39:51 -08:00
Joe Meiring
a36c9dcef0 Fix for FileSystem blob store clearContainer with options 2019-01-04 14:17:00 -08:00
Andrew Gaul
f9cebd59f8 Add error handling for missing xattr
Previously this prevented listing inside a directory when using file
systems like HFS and NFS.  References gaul/s3proxy#279.
2019-01-04 11:41:32 -08:00
duc
70f0635ac2 JCLOUDS-1479: populate container cache on create 2019-01-02 19:29:31 -08:00
John McDonnell
25f2bcd8c9 [JCLOUDS-1468] Adding missing options for the ListUsageRecords API call. 2018-12-05 19:46:24 +01:00
kraza
5916059be9 JCLOUDS-1467
Added support for c5d & m5d AWS nodes.

JCLOUDS-1467
Updated the SSD drive information.
2018-12-03 17:22:46 -05:00
Andrew Gaul
b7d59e3fe9 Correct precondition
Follow on to 1ae735bb7d8fa4d512e744f79582477efdfd7f26.
2018-11-14 14:53:05 -08:00
Andrew Gaul
1ae735bb7d Do not allow options in filesystem clearContainer
This requires some additional logic to clean up empty directories.
Test regression from 22ce5484a412bc06ef62995675c07e7a85f66bdf.
2018-11-14 14:42:30 -08:00
Timur Alperovich
896e99df09 Filesystem: Fix the MPU ETags to match S3.
Prior commit introduced a bug in the computation of the MPU ETag value,
where it was concatenating strings, rather than operating on the bytes
of the integer value.
2018-11-02 12:25:17 -07:00
Timur Alperovich
539a9854c1 JCLOUDS-1450: Use S3-style ETags for MPUs.
S3 uses a different ETag for multipart uploads (MPUs) than regular
objects. The ETag consists of the md5 hash of the concatenated ETags of
individual parts followed by the number of parts (separated by "-").

The patch changes the LocalBlobStore's implementation of
CompleteMultipartUpload to set the S3-style ETag before calling
putBlob() and return that ETag to the caller.

To simplify testing, a new protected method with a default NOOP
implementation is added to the BaseBlobIntegrationTest. It allows
providers to further verify MPUs (i.e. ensuring the correct ETag has
been stored alongside the object).
2018-10-24 13:25:00 -07:00
Trent Schmidt
219e2958d7 JCLOUDS-1460: Adding instances to AWS 2018-10-24 14:42:46 -04:00
Oliver Gondža
8b17dfea87 Make NovaErrorHandler logging of sensitive information configurable 2018-10-18 11:32:04 +02:00
Andrew Gaul
cc65957997 Error-prone 2.3.2 fixes 2018-10-12 23:28:00 -07:00
David Currie
7ebf12bf38 JCLOUDS-1447: URL encode x-amz-copy-source
The x-amz-copy-source header on S3 CopyObject should be URL encoded (as
a path). This is not universally true of all headers though (for example
the = in x-amz-copy-source-range) therefore introducing a new parameter
on @Headers to indicate whether URL encoding should take place.
2018-09-12 08:01:43 -07:00
Markus Alexander Kuppe
88f44a6d8e JCLOUDS-1339: Support launching an x1 EC2 instance
https://issues.apache.org/jira/browse/JCLOUDS-1339
2018-08-23 20:25:05 +02:00
Vikas Rangarajan
cf67233765 JCLOUDS-1436: Add support for aws ec2 m5 instance types
fix: remove duplicate imports
2018-08-01 17:28:09 -04:00
Vikas Rangarajan
982c6bea02 JCLOUDS-1387: Add support for c5 instance types in AWS ec2 2018-08-01 16:53:06 -04:00
Ignasi Barrera
3839432757
Configure Java 7 language level 2018-07-11 09:42:18 -07:00
Jesse Glick
019ccb7431
Pinning down JCLOUDS-1401 fix behavior with a unit test which is able to distinguish URI.query from URI.rawQuery. 2018-07-11 09:35:34 -07:00
Jesse Glick
9a65be789e
Live test demonstrating effectiveness of JCLOUDS-1401 fix. 2018-07-11 09:35:34 -07:00
Jesse Glick
34d272ac80
Allow S3ClientLiveTest (and AWSS3ClientLiveTest) to use a session token. 2018-07-11 09:35:34 -07:00
Jesse Glick
f770455ff9
[JCLOUDS-1401] Properly URL-encode the CanonicalQueryString when it contains funny characters. 2018-07-11 09:35:34 -07:00
Lucia Monte
6b4be0d686 JCLOUDS-1427: Fix Elastic IP deserialization when IP has tags 2018-06-20 15:31:13 +02:00