This is an automated email from the ASF dual-hosted git repository.
gaul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds.git
The following commit(s) were added to refs/heads/master by this push:
new a1c9ce8 JCLOUDS-1494: Add S3 Deep Archive tier
a1c9ce8 is described below
commit a1c9ce82172387228afc3e494a0d709b7b20bc82
Author: Andrew Gaul <[email protected]>
AuthorDate: Sat Apr 6 18:42:03 2019 +0900
JCLOUDS-1494: Add S3 Deep Archive tier
Also test Glacier tier now that Amazon allows creating objects with
this storage class.
---
apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java | 2 --
apis/s3/src/main/java/org/jclouds/s3/domain/ObjectMetadata.java | 5 +++--
.../aws-s3/src/test/java/org/jclouds/aws/s3/AWSS3ClientLiveTest.java | 5 -----
3 files changed, 3 insertions(+), 9 deletions(-)
diff --git a/apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java
b/apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java
index 9b91048..195b637 100644
--- a/apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java
+++ b/apis/s3/src/main/java/org/jclouds/s3/blobstore/S3BlobStore.java
@@ -266,8 +266,6 @@ public class S3BlobStore extends BaseBlobStore {
if (overrides.getBlobAccess() == BlobAccess.PUBLIC_READ) {
options = options.withAcl(CannedAccessPolicy.PUBLIC_READ);
}
- // TODO: S3 does not allow putObject if Tier.ARCHIVE. Instead, copyBlob
- // after putBlob when the former supports tiers.
return sync.putObject(container, blob2Object.apply(blob), options);
}
diff --git a/apis/s3/src/main/java/org/jclouds/s3/domain/ObjectMetadata.java
b/apis/s3/src/main/java/org/jclouds/s3/domain/ObjectMetadata.java
index 0c5b5f4..52eb15c 100644
--- a/apis/s3/src/main/java/org/jclouds/s3/domain/ObjectMetadata.java
+++ b/apis/s3/src/main/java/org/jclouds/s3/domain/ObjectMetadata.java
@@ -38,7 +38,8 @@ public interface ObjectMetadata extends
Comparable<ObjectMetadata> {
STANDARD_IA(Tier.INFREQUENT),
ONEZONE_IA(Tier.INFREQUENT),
REDUCED_REDUNDANCY(Tier.STANDARD),
- GLACIER(Tier.ARCHIVE);
+ GLACIER(Tier.ARCHIVE),
+ DEEP_ARCHIVE(Tier.ARCHIVE);
private final Tier tier;
@@ -50,7 +51,7 @@ public interface ObjectMetadata extends
Comparable<ObjectMetadata> {
switch (tier) {
case STANDARD: return StorageClass.STANDARD;
case INFREQUENT: return StorageClass.STANDARD_IA;
- case ARCHIVE: return StorageClass.GLACIER;
+ case ARCHIVE: return StorageClass.DEEP_ARCHIVE;
}
throw new IllegalArgumentException("invalid tier: " + tier);
}
diff --git
a/providers/aws-s3/src/test/java/org/jclouds/aws/s3/AWSS3ClientLiveTest.java
b/providers/aws-s3/src/test/java/org/jclouds/aws/s3/AWSS3ClientLiveTest.java
index adf5b26..1d04891 100644
--- a/providers/aws-s3/src/test/java/org/jclouds/aws/s3/AWSS3ClientLiveTest.java
+++ b/providers/aws-s3/src/test/java/org/jclouds/aws/s3/AWSS3ClientLiveTest.java
@@ -67,11 +67,6 @@ public class AWSS3ClientLiveTest extends S3ClientLiveTest {
AWSS3Client s3Client = getApi();
try {
for (StorageClass storageClass : StorageClass.values()) {
- if (storageClass == StorageClass.GLACIER) {
- // AWS does not allow creation of Glacier objects
- continue;
- }
-
String blobName = "test-" + storageClass;
BlobStore blobStore = view.getBlobStore();
blobStore.createContainerInLocation(null, containerName);