You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by li...@apache.org on 2017/03/03 23:07:32 UTC
hadoop git commit: HADOOP-14129. ITestS3ACredentialsInURL sometimes
fails. Contributed by Sean Mackrory and Mingliang Liu
Repository: hadoop
Updated Branches:
refs/heads/HADOOP-13345 8f26a30b3 -> 220414fcf
HADOOP-14129. ITestS3ACredentialsInURL sometimes fails. Contributed by Sean Mackrory and Mingliang Liu
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/220414fc
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/220414fc
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/220414fc
Branch: refs/heads/HADOOP-13345
Commit: 220414fcf93b71788f25d1183ebfa76b037660b8
Parents: 8f26a30
Author: Mingliang Liu <li...@apache.org>
Authored: Thu Mar 2 14:18:11 2017 -0800
Committer: Mingliang Liu <li...@apache.org>
Committed: Fri Mar 3 15:07:09 2017 -0800
----------------------------------------------------------------------
.../hadoop/fs/s3a/ITestS3ACredentialsInURL.java | 10 ++++++----
.../org/apache/hadoop/fs/s3a/S3ATestUtils.java | 18 ++++++++++++++++++
2 files changed, 24 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/220414fc/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/ITestS3ACredentialsInURL.java
----------------------------------------------------------------------
diff --git a/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/ITestS3ACredentialsInURL.java b/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/ITestS3ACredentialsInURL.java
index 5a4b2fc..be21994 100644
--- a/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/ITestS3ACredentialsInURL.java
+++ b/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/ITestS3ACredentialsInURL.java
@@ -37,6 +37,7 @@ import java.net.URLEncoder;
import java.nio.file.AccessDeniedException;
import static org.apache.hadoop.fs.s3a.S3ATestConstants.TEST_FS_S3A_NAME;
+import static org.apache.hadoop.fs.s3a.S3ATestUtils.assumeS3GuardNotEnabled;
/**
* Tests that credentials can go into the URL. This includes a valid
@@ -63,6 +64,11 @@ public class ITestS3ACredentialsInURL extends Assert {
public void testInstantiateFromURL() throws Throwable {
Configuration conf = new Configuration();
+
+ // Skip in the case of S3Guard with DynamoDB because it cannot get
+ // credentials for its own use if they're only in S3 URLs
+ assumeS3GuardNotEnabled(conf);
+
String accessKey = conf.get(Constants.ACCESS_KEY);
String secretKey = conf.get(Constants.SECRET_KEY);
String fsname = conf.getTrimmed(TEST_FS_S3A_NAME, "");
@@ -85,10 +91,6 @@ public class ITestS3ACredentialsInURL extends Assert {
conf.unset(Constants.SECRET_KEY);
fs = S3ATestUtils.createTestFileSystem(conf);
- // Skip in the case of S3Guard with DynamoDB because it cannot get
- // credentials for its own use if they're only in S3 URLs
- Assume.assumeFalse(fs.hasMetadataStore());
-
String fsURI = fs.getUri().toString();
assertFalse("FS URI contains a @ symbol", fsURI.contains("@"));
assertFalse("FS URI contains a % symbol", fsURI.contains("%"));
http://git-wip-us.apache.org/repos/asf/hadoop/blob/220414fc/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/S3ATestUtils.java
----------------------------------------------------------------------
diff --git a/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/S3ATestUtils.java b/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/S3ATestUtils.java
index ec0952d..e3969c6 100644
--- a/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/S3ATestUtils.java
+++ b/hadoop-tools/hadoop-aws/src/test/java/org/apache/hadoop/fs/s3a/S3ATestUtils.java
@@ -33,11 +33,13 @@ import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.net.URI;
+import java.net.URISyntaxException;
import java.util.List;
import static org.apache.hadoop.fs.contract.ContractTestUtils.skip;
import static org.apache.hadoop.fs.s3a.S3ATestConstants.*;
import static org.apache.hadoop.fs.s3a.Constants.*;
+import static org.apache.hadoop.fs.s3a.S3AUtils.propagateBucketOptions;
import static org.junit.Assert.*;
/**
@@ -323,6 +325,22 @@ public final class S3ATestUtils {
}
/**
+ * Assume testing S3Guard is not enabled.
+ */
+ public static void assumeS3GuardNotEnabled(Configuration originalConf)
+ throws URISyntaxException {
+ Assume.assumeFalse(getTestPropertyBool(originalConf, TEST_S3GUARD_ENABLED,
+ originalConf.getBoolean(TEST_S3GUARD_ENABLED, false)));
+
+ final String fsname = originalConf.getTrimmed(TEST_FS_S3A_NAME);
+ Assume.assumeNotNull(fsname);
+ final String bucket = new URI(fsname).getHost();
+ final Configuration conf = propagateBucketOptions(originalConf, bucket);
+ Assume.assumeTrue(S3GUARD_METASTORE_NULL.equals(
+ conf.getTrimmed(S3_METADATA_STORE_IMPL, S3GUARD_METASTORE_NULL)));
+ }
+
+ /**
* Conditionally set the S3Guard options from test properties.
* @param conf configuration
*/
---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org