>From Ian Maxon <[email protected]>:
Ian Maxon has submitted this change. (
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20440?usp=email )
Change subject: Merge branch 'phoenix'
......................................................................
Merge branch 'phoenix'
Change-Id: I2812c034a6d002bf906a0dff7a26aa7403717e3c
---
M
asterixdb/asterix-app/src/test/java/org/apache/asterix/api/common/LocalCloudUtilAdobeMock.java
M
asterixdb/asterix-app/src/test/java/org/apache/asterix/test/iceberg/IcebergTest.java
3 files changed, 32 insertions(+), 26 deletions(-)
Approvals:
Ian Maxon: Looks good to me, approved
Jenkins: Verified; Verified
diff --git
a/asterixdb/asterix-app/src/test/java/org/apache/asterix/api/common/LocalCloudUtilAdobeMock.java
b/asterixdb/asterix-app/src/test/java/org/apache/asterix/api/common/LocalCloudUtilAdobeMock.java
index e75ab96..8509aff 100644
---
a/asterixdb/asterix-app/src/test/java/org/apache/asterix/api/common/LocalCloudUtilAdobeMock.java
+++
b/asterixdb/asterix-app/src/test/java/org/apache/asterix/api/common/LocalCloudUtilAdobeMock.java
@@ -43,12 +43,8 @@
import software.amazon.awssdk.services.s3.S3ClientBuilder;
import software.amazon.awssdk.services.s3.S3Configuration;
import software.amazon.awssdk.services.s3.model.CreateBucketRequest;
-<<<<<<< HEAD (3be0c6 [NO-ISSUE][TEST] Update datatype test result.)
-import software.amazon.awssdk.services.s3.model.DeleteBucketRequest;
-=======
import software.amazon.awssdk.services.s3.model.HeadBucketRequest;
import software.amazon.awssdk.services.s3.model.NoSuchBucketException;
->>>>>>> BRANCH (698e45 [ASTERIXDB-3654][TEST]Use Azurite in testcontainers)
// This runs Adobe S3Mock in a docker container, with the bucket storage
directory under target/s3mock.
// Search for line "Successfully created {} as root folder" in the info log
file
@@ -102,24 +98,9 @@
URI endpoint = URI.create(s3Mock.getHttpEndpoint()); // endpoint
pointing to S3 mock server
builder.region(Region.of(MOCK_SERVER_REGION)).credentialsProvider(AnonymousCredentialsProvider.create())
.endpointOverride(endpoint);
-<<<<<<< HEAD (3be0c6 [NO-ISSUE][TEST] Update datatype test result.)
- S3Client client = builder.build();
- if (cleanStart) {
- try {
-
client.deleteBucket(DeleteBucketRequest.builder().bucket(CLOUD_STORAGE_BUCKET).build());
- LOGGER.info("Deleted bucket {} for cloud storage",
CLOUD_STORAGE_BUCKET);
- } catch (Exception ex) {
- // do nothing
- }
- }
-
client.createBucket(CreateBucketRequest.builder().bucket(CLOUD_STORAGE_BUCKET).build());
- LOGGER.info("Created bucket {} for cloud storage",
CLOUD_STORAGE_BUCKET);
-
-=======
S3Client client =
builder.serviceConfiguration(S3Configuration.builder().pathStyleAccessEnabled(true).build()).build();
createIfNotExists(CLOUD_STORAGE_BUCKET, client);
->>>>>>> BRANCH (698e45 [ASTERIXDB-3654][TEST]Use Azurite in testcontainers)
if (createPlaygroundContainer) {
createIfNotExists(PLAYGROUND_BUCKET, client);
}
diff --git
a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/iceberg/IcebergTest.java
b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/iceberg/IcebergTest.java
index 5f1eae4..1afc682 100644
---
a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/iceberg/IcebergTest.java
+++
b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/iceberg/IcebergTest.java
@@ -18,6 +18,10 @@
*/
package org.apache.asterix.test.iceberg;
+import static
org.apache.asterix.api.common.LocalCloudUtilAdobeMock.fillConfigTemplate;
+import static
org.apache.asterix.test.cloud_storage.CloudStorageTest.CONFIG_FILE;
+import static
org.apache.asterix.test.cloud_storage.CloudStorageTest.CONFIG_FILE_TEMPLATE;
+import static
org.apache.asterix.test.cloud_storage.CloudStorageTest.MOCK_SERVER_HOSTNAME_FRAGMENT;
import static org.apache.hyracks.util.file.FileUtil.joinPath;
import static org.apache.iceberg.hadoop.HadoopOutputFile.fromPath;
import static org.apache.iceberg.types.Types.NestedField.required;
@@ -69,6 +73,8 @@
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
+import com.adobe.testing.s3mock.testcontainers.S3MockContainer;
+
import software.amazon.awssdk.auth.credentials.AnonymousCredentialsProvider;
import software.amazon.awssdk.core.sync.RequestBody;
import software.amazon.awssdk.regions.Region;
@@ -91,13 +97,11 @@
private static final String SUITE_TESTS = "testsuite_iceberg.xml";
private static final String ONLY_TESTS = "testsuite_iceberg_only.xml";
- private static final String CONFIG_FILE_NAME =
"src/test/resources/cc-cloud-storage.conf";
static Runnable PREPARE_ICEBERG_TABLE_BUCKET;
// Client and service endpoint
private static S3Client client;
private static final int MOCK_SERVER_PORT = 8001;
- private static final String MOCK_SERVER_HOSTNAME = "http://127.0.0.1:" +
MOCK_SERVER_PORT;
private static final String MOCK_SERVER_REGION = "us-west-2";
protected TestCaseContext tcCtx;
@@ -129,18 +133,24 @@
private static final String ICEBERG_TABLE_PATH_MODIFIED_DATA =
"s3a://" + ICEBERG_CONTAINER + "/my-table-modified-data/";
+ private static S3MockContainer s3Mock;
+
@BeforeClass
public static void setUp() throws Exception {
final TestExecutor testExecutor = new TestExecutor();
- LocalCloudUtilAdobeMock.startS3CloudEnvironment(true);
+ s3Mock = LocalCloudUtilAdobeMock.startS3CloudEnvironment(true);
testExecutor.executorId = "cloud";
testExecutor.stripSubstring = "//DB:";
- LangExecutionUtil.setUp(CONFIG_FILE_NAME, testExecutor);
- System.setProperty(GlobalConfig.CONFIG_FILE_PROPERTY,
CONFIG_FILE_NAME);
+ fillConfigTemplate(MOCK_SERVER_HOSTNAME_FRAGMENT +
s3Mock.getHttpServerPort(), CONFIG_FILE_TEMPLATE,
+ CONFIG_FILE);
+ System.setProperty(TestConstants.S3_SERVICE_ENDPOINT_KEY,
+ MOCK_SERVER_HOSTNAME_FRAGMENT + s3Mock.getHttpServerPort());
+ LangExecutionUtil.setUp(CONFIG_FILE, testExecutor);
+ System.setProperty(GlobalConfig.CONFIG_FILE_PROPERTY, CONFIG_FILE);
// create the iceberg bucket
S3ClientBuilder builder = S3Client.builder();
- URI endpoint = URI.create(MOCK_SERVER_HOSTNAME); // endpoint pointing
to S3 mock server
+ URI endpoint = URI.create(MOCK_SERVER_HOSTNAME_FRAGMENT +
s3Mock.getHttpServerPort()); // endpoint pointing to S3 mock server
builder.region(Region.of(MOCK_SERVER_REGION)).credentialsProvider(AnonymousCredentialsProvider.create())
.endpointOverride(endpoint);
S3Client client = builder.build();
@@ -180,7 +190,7 @@
}
private static void prepareIcebergConfiguration() {
- CONF.set(S3Constants.HADOOP_SERVICE_END_POINT, MOCK_SERVER_HOSTNAME);
+ CONF.set(S3Constants.HADOOP_SERVICE_END_POINT,
s3Mock.getHttpEndpoint());
// switch to http
CONF.set("fs.s3a.connection.ssl.enabled", "false");
// forces URL style access which is required by the mock. Overwrites
DNS based bucket access scheme.
--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20440?usp=email
To unsubscribe, or for help writing mail filters, visit
https://asterix-gerrit.ics.uci.edu/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Change-Id: I2812c034a6d002bf906a0dff7a26aa7403717e3c
Gerrit-Change-Number: 20440
Gerrit-PatchSet: 2
Gerrit-Owner: Ian Maxon <[email protected]>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Ian Maxon <[email protected]>
Gerrit-Reviewer: Jenkins <[email protected]>