|
@@ -26,6 +26,8 @@ import com.sun.net.httpserver.HttpExchange;
|
|
|
import com.sun.net.httpserver.HttpHandler;
|
|
|
import fixture.gcs.FakeOAuth2HttpHandler;
|
|
|
import fixture.gcs.GoogleCloudStorageHttpHandler;
|
|
|
+import org.elasticsearch.action.ActionRunnable;
|
|
|
+import org.elasticsearch.action.support.PlainActionFuture;
|
|
|
import org.elasticsearch.cluster.metadata.RepositoryMetaData;
|
|
|
import org.elasticsearch.cluster.service.ClusterService;
|
|
|
import org.elasticsearch.common.SuppressForbidden;
|
|
@@ -37,7 +39,9 @@ import org.elasticsearch.common.unit.ByteSizeValue;
|
|
|
import org.elasticsearch.common.xcontent.NamedXContentRegistry;
|
|
|
import org.elasticsearch.env.Environment;
|
|
|
import org.elasticsearch.plugins.Plugin;
|
|
|
+import org.elasticsearch.repositories.RepositoriesService;
|
|
|
import org.elasticsearch.repositories.Repository;
|
|
|
+import org.elasticsearch.repositories.blobstore.BlobStoreRepository;
|
|
|
import org.elasticsearch.repositories.blobstore.ESMockAPIBasedRepositoryIntegTestCase;
|
|
|
import org.threeten.bp.Duration;
|
|
|
|
|
@@ -101,6 +105,15 @@ public class GoogleCloudStorageBlobStoreRepositoryTests extends ESMockAPIBasedRe
|
|
|
return settings.build();
|
|
|
}
|
|
|
|
|
|
+ public void testDeleteSingleItem() {
|
|
|
+ final String repoName = createRepository(randomName());
|
|
|
+ final RepositoriesService repositoriesService = internalCluster().getMasterNodeInstance(RepositoriesService.class);
|
|
|
+ final BlobStoreRepository repository = (BlobStoreRepository) repositoriesService.repository(repoName);
|
|
|
+ PlainActionFuture.get(f -> repository.threadPool().generic().execute(ActionRunnable.run(f, () ->
|
|
|
+ repository.blobStore().blobContainer(repository.basePath()).deleteBlobsIgnoringIfNotExists(Collections.singletonList("foo"))
|
|
|
+ )));
|
|
|
+ }
|
|
|
+
|
|
|
public void testChunkSize() {
|
|
|
// default chunk size
|
|
|
RepositoryMetaData repositoryMetaData = new RepositoryMetaData("repo", GoogleCloudStorageRepository.TYPE, Settings.EMPTY);
|