HDDS-562. Create acceptance test to test aws cli with the s3 gateway. Contributed by Elek Marton.
This commit is contained in:
parent
d0ee6fbe28
commit
7d082193d2
63
hadoop-ozone/dist/src/main/smoketest/s3/awscli.robot
vendored
Normal file
63
hadoop-ozone/dist/src/main/smoketest/s3/awscli.robot
vendored
Normal file
@ -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
|
3
hadoop-ozone/dist/src/main/smoketest/test.sh
vendored
3
hadoop-ozone/dist/src/main/smoketest/test.sh
vendored
@ -95,7 +95,8 @@ if [ "$RUN_ALL" = true ]; then
|
|||||||
execute_tests ozone "${DEFAULT_TESTS[@]}"
|
execute_tests ozone "${DEFAULT_TESTS[@]}"
|
||||||
TESTS=("ozonefs")
|
TESTS=("ozonefs")
|
||||||
execute_tests ozonefs "${TESTS[@]}"
|
execute_tests ozonefs "${TESTS[@]}"
|
||||||
|
TESTS=("s3")
|
||||||
|
execute_tests ozones3 "${TESTS[@]}"
|
||||||
else
|
else
|
||||||
execute_tests "$DOCKERENV" "${POSITIONAL[@]}"
|
execute_tests "$DOCKERENV" "${POSITIONAL[@]}"
|
||||||
fi
|
fi
|
||||||
|
Loading…
x
Reference in New Issue
Block a user