Repository: hadoop
Updated Branches:
  refs/heads/trunk d0ee6fbe2 -> 7d082193d


HDDS-562. Create acceptance test to test aws cli with the s3 gateway. 
Contributed by Elek Marton.


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/7d082193
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/7d082193
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/7d082193

Branch: refs/heads/trunk
Commit: 7d082193d2c55b89210b277cd9a0dc2f4e590bee
Parents: d0ee6fb
Author: Bharat Viswanadham <bha...@apache.org>
Authored: Mon Oct 1 15:04:20 2018 -0700
Committer: Bharat Viswanadham <bha...@apache.org>
Committed: Mon Oct 1 15:04:20 2018 -0700

----------------------------------------------------------------------
 .../dist/src/main/smoketest/s3/awscli.robot     | 63 ++++++++++++++++++++
 hadoop-ozone/dist/src/main/smoketest/test.sh    |  3 +-
 2 files changed, 65 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/7d082193/hadoop-ozone/dist/src/main/smoketest/s3/awscli.robot
----------------------------------------------------------------------
diff --git a/hadoop-ozone/dist/src/main/smoketest/s3/awscli.robot 
b/hadoop-ozone/dist/src/main/smoketest/s3/awscli.robot
new file mode 100644
index 0000000..b26ad91
--- /dev/null
+++ b/hadoop-ozone/dist/src/main/smoketest/s3/awscli.robot
@@ -0,0 +1,63 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+*** Settings ***
+Documentation       S3 gateway test with aws cli
+Library             OperatingSystem
+Library             String
+Resource            ../commonlib.robot
+
+*** Variables ***
+${ENDPOINT_URL}       http://s3g:9878
+
+*** Keywords ***
+Execute AWSCli
+    [Arguments]       ${command}
+    ${output} =       Execute          aws s3 --endpoint-url 
${ENDPOINT_URL}/${VOLUME} ${command}
+    [return]          ${output}
+
+*** Test Cases ***
+
+Create volume and bucket for the tests
+    ${postfix} =        Generate Random String  5  [NUMBERS]
+    Set Suite Variable  ${BUCKET}                  bucket-${postfix}
+    Set Suite Variable  ${VOLUME}                  vol-${postfix}
+                        Log                        Testing s3 commands in 
/${VOLUME}/${BUCKET}
+    ${result} =         Execute                    ozone sh volume create 
/${VOLUME} --user hadoop
+    ${result} =         Execute                    ozone sh bucket create 
/${VOLUME}/${BUCKET}
+
+Install aws s3 cli
+                        Execute                    sudo apt-get install -y 
awscli
+                        Set Environment Variable   AWS_ACCESS_KEY_ID       
ANYID
+                        Set Environment Variable   AWS_SECRET_ACCESS_KEY   
ANYKEY
+
+File upload and directory list
+                        Execute                   date > /tmp/testfile
+    ${result} =         Execute AWSCli            cp /tmp/testfile 
s3://${BUCKET}
+                        Should contain            ${result}         upload
+    ${result} =         Execute AWSCli            cp /tmp/testfile 
s3://${BUCKET}/dir1/dir2/file
+                        Should contain            ${result}         upload
+    ${result} =         Execute AWSCli            ls s3://${BUCKET}
+                        Should contain            ${result}         testfile
+                        Should contain            ${result}         dir1
+                        Should not contain        ${result}         dir2
+    ${result} =         Execute AWSCli            ls s3://${BUCKET}/dir1/
+                        Should not contain        ${result}         testfile
+                        Should not contain        ${result}         dir1
+                        Should contain            ${result}         dir2
+    ${result} =         Execute AWSCli            ls s3://${BUCKET}/dir1/dir2/
+                        Should not contain        ${result}         testfile
+                        Should not contain        ${result}         dir1
+                        Should contain            ${result}         file

http://git-wip-us.apache.org/repos/asf/hadoop/blob/7d082193/hadoop-ozone/dist/src/main/smoketest/test.sh
----------------------------------------------------------------------
diff --git a/hadoop-ozone/dist/src/main/smoketest/test.sh 
b/hadoop-ozone/dist/src/main/smoketest/test.sh
index 534bbb7..b32955a 100755
--- a/hadoop-ozone/dist/src/main/smoketest/test.sh
+++ b/hadoop-ozone/dist/src/main/smoketest/test.sh
@@ -95,7 +95,8 @@ if [ "$RUN_ALL" = true ]; then
    execute_tests ozone "${DEFAULT_TESTS[@]}"
    TESTS=("ozonefs")
    execute_tests ozonefs "${TESTS[@]}"
-
+   TESTS=("s3")
+   execute_tests ozones3 "${TESTS[@]}"
 else
    execute_tests "$DOCKERENV" "${POSITIONAL[@]}"
 fi


---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-commits-h...@hadoop.apache.org

Reply via email to