diff --git a/docs/plugins/repository-s3.asciidoc b/docs/plugins/repository-s3.asciidoc index 43077d27b54..2ce6ae1121b 100644 --- a/docs/plugins/repository-s3.asciidoc +++ b/docs/plugins/repository-s3.asciidoc @@ -244,8 +244,9 @@ The following settings are supported: `storage_class`:: Sets the S3 storage class for objects stored in the snapshot repository. - Values may be `standard`, `reduced_redundancy`, `standard_ia`. Defaults to - `standard`. Changing this setting on an existing repository only affects the + Values may be `standard`, `reduced_redundancy`, `standard_ia` + and `intelligent_tiering`. Defaults to `standard`. + Changing this setting on an existing repository only affects the storage class for newly created objects, resulting in a mixed usage of storage classes. Additionally, S3 Lifecycle Policies can be used to manage the storage class of existing objects. Due to the extra complexity with the diff --git a/plugins/repository-s3/build.gradle b/plugins/repository-s3/build.gradle index bcdbf5040d9..b41174096e4 100644 --- a/plugins/repository-s3/build.gradle +++ b/plugins/repository-s3/build.gradle @@ -30,7 +30,7 @@ esplugin { } versions << [ - 'aws': '1.11.406' + 'aws': '1.11.505' ] dependencies { diff --git a/plugins/repository-s3/licenses/aws-java-sdk-core-1.11.406.jar.sha1 b/plugins/repository-s3/licenses/aws-java-sdk-core-1.11.406.jar.sha1 deleted file mode 100644 index 415373b275e..00000000000 --- a/plugins/repository-s3/licenses/aws-java-sdk-core-1.11.406.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -43f3b7332d4d527bbf34d4ac6be094f3dabec6de \ No newline at end of file diff --git a/plugins/repository-s3/licenses/aws-java-sdk-core-1.11.505.jar.sha1 b/plugins/repository-s3/licenses/aws-java-sdk-core-1.11.505.jar.sha1 new file mode 100644 index 00000000000..add5db290e8 --- /dev/null +++ b/plugins/repository-s3/licenses/aws-java-sdk-core-1.11.505.jar.sha1 @@ -0,0 +1 @@ +d19328c227b2b5ad81d137361ebc9cbcd0396465 \ No newline at end of file diff --git a/plugins/repository-s3/licenses/aws-java-sdk-kms-1.11.406.jar.sha1 b/plugins/repository-s3/licenses/aws-java-sdk-kms-1.11.406.jar.sha1 deleted file mode 100644 index f0eb9b71752..00000000000 --- a/plugins/repository-s3/licenses/aws-java-sdk-kms-1.11.406.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -e29854e58dc20f5453c1da7e580a5921b1e9714a \ No newline at end of file diff --git a/plugins/repository-s3/licenses/aws-java-sdk-kms-1.11.505.jar.sha1 b/plugins/repository-s3/licenses/aws-java-sdk-kms-1.11.505.jar.sha1 new file mode 100644 index 00000000000..ab2bfdbc189 --- /dev/null +++ b/plugins/repository-s3/licenses/aws-java-sdk-kms-1.11.505.jar.sha1 @@ -0,0 +1 @@ +2a219919090a6cadd7e119c899c90343ad9c0077 \ No newline at end of file diff --git a/plugins/repository-s3/licenses/aws-java-sdk-s3-1.11.406.jar.sha1 b/plugins/repository-s3/licenses/aws-java-sdk-s3-1.11.406.jar.sha1 deleted file mode 100644 index e57fd11c829..00000000000 --- a/plugins/repository-s3/licenses/aws-java-sdk-s3-1.11.406.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -5c3c2c57b076602b3aeef841c63e5848ec52b00d \ No newline at end of file diff --git a/plugins/repository-s3/licenses/aws-java-sdk-s3-1.11.505.jar.sha1 b/plugins/repository-s3/licenses/aws-java-sdk-s3-1.11.505.jar.sha1 new file mode 100644 index 00000000000..04c4cc213c6 --- /dev/null +++ b/plugins/repository-s3/licenses/aws-java-sdk-s3-1.11.505.jar.sha1 @@ -0,0 +1 @@ +b4cf82765b04a579609314ab7f296a9a0ddae1cf \ No newline at end of file diff --git a/plugins/repository-s3/licenses/jmespath-java-1.11.406.jar.sha1 b/plugins/repository-s3/licenses/jmespath-java-1.11.406.jar.sha1 deleted file mode 100644 index bbb9b562a2f..00000000000 --- a/plugins/repository-s3/licenses/jmespath-java-1.11.406.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -06c291d1029943d4968a36fadffa3b71a6d8b4e4 \ No newline at end of file diff --git a/plugins/repository-s3/licenses/jmespath-java-1.11.505.jar.sha1 b/plugins/repository-s3/licenses/jmespath-java-1.11.505.jar.sha1 new file mode 100644 index 00000000000..803d4fe85d7 --- /dev/null +++ b/plugins/repository-s3/licenses/jmespath-java-1.11.505.jar.sha1 @@ -0,0 +1 @@ +067234d307b210097e247a49f08875e0cd3f2b95 \ No newline at end of file diff --git a/plugins/repository-s3/src/main/java/org/elasticsearch/repositories/s3/S3Repository.java b/plugins/repository-s3/src/main/java/org/elasticsearch/repositories/s3/S3Repository.java index 72ce6f8bf1f..189d57f8332 100644 --- a/plugins/repository-s3/src/main/java/org/elasticsearch/repositories/s3/S3Repository.java +++ b/plugins/repository-s3/src/main/java/org/elasticsearch/repositories/s3/S3Repository.java @@ -130,7 +130,7 @@ class S3Repository extends BlobStoreRepository { /** * Sets the S3 storage class type for the backup files. Values may be standard, reduced_redundancy, - * standard_ia. Defaults to standard. + * standard_ia and intelligent_tiering. Defaults to standard. */ static final Setting STORAGE_CLASS_SETTING = Setting.simpleString("storage_class"); diff --git a/plugins/repository-s3/src/test/java/org/elasticsearch/repositories/s3/S3BlobStoreTests.java b/plugins/repository-s3/src/test/java/org/elasticsearch/repositories/s3/S3BlobStoreTests.java index 6640a0dc4d7..10938504131 100644 --- a/plugins/repository-s3/src/test/java/org/elasticsearch/repositories/s3/S3BlobStoreTests.java +++ b/plugins/repository-s3/src/test/java/org/elasticsearch/repositories/s3/S3BlobStoreTests.java @@ -74,16 +74,18 @@ public class S3BlobStoreTests extends ESBlobStoreTestCase { assertThat(S3BlobStore.initStorageClass(null), equalTo(StorageClass.Standard)); assertThat(S3BlobStore.initStorageClass(""), equalTo(StorageClass.Standard)); - // it should accept [standard, standard_ia, reduced_redundancy] + // it should accept [standard, standard_ia, reduced_redundancy, intelligent_tiering] assertThat(S3BlobStore.initStorageClass("standard"), equalTo(StorageClass.Standard)); assertThat(S3BlobStore.initStorageClass("standard_ia"), equalTo(StorageClass.StandardInfrequentAccess)); assertThat(S3BlobStore.initStorageClass("reduced_redundancy"), equalTo(StorageClass.ReducedRedundancy)); + assertThat(S3BlobStore.initStorageClass("intelligent_tiering"), equalTo(StorageClass.IntelligentTiering)); } public void testCaseInsensitiveStorageClass() { assertThat(S3BlobStore.initStorageClass("sTandaRd"), equalTo(StorageClass.Standard)); assertThat(S3BlobStore.initStorageClass("sTandaRd_Ia"), equalTo(StorageClass.StandardInfrequentAccess)); assertThat(S3BlobStore.initStorageClass("reduCED_redundancy"), equalTo(StorageClass.ReducedRedundancy)); + assertThat(S3BlobStore.initStorageClass("intelLigeNt_tieriNG"), equalTo(StorageClass.IntelligentTiering)); } public void testInvalidStorageClass() {