diff --git a/dev-support/bin/ozone-dist-layout-stitching b/dev-support/bin/ozone-dist-layout-stitching
index 8f1f169395b..f047c87a909 100755
--- a/dev-support/bin/ozone-dist-layout-stitching
+++ b/dev-support/bin/ozone-dist-layout-stitching
@@ -169,8 +169,9 @@ find . -name jdiff -type d | xargs rm -rf
#add ozone specific readme
run cp "${ROOT}/hadoop-dist/src/main/ozone/README.txt" README.txt
-#Copy docker compose files
+#Copy docker compose files and robot tests
run cp -p -r "${ROOT}/hadoop-dist/src/main/compose" .
+run cp -p -r "${ROOT}/hadoop-dist/src/main/smoketest" .
mkdir -p ./share/hadoop/mapreduce
mkdir -p ./share/hadoop/yarn
diff --git a/hadoop-dist/src/main/compose/ozone-hdfs/docker-config b/hadoop-dist/src/main/compose/ozone-hdfs/docker-config
index ef54872a9ec..3b2819fbf77 100644
--- a/hadoop-dist/src/main/compose/ozone-hdfs/docker-config
+++ b/hadoop-dist/src/main/compose/ozone-hdfs/docker-config
@@ -15,6 +15,7 @@
# limitations under the License.
OZONE-SITE.XML_ozone.om.address=ozoneManager
+OZONE-SITE.XML_ozone.om.http-address=ozoneManager:9874
OZONE-SITE.XML_ozone.scm.names=scm
OZONE-SITE.XML_ozone.enabled=true
OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
diff --git a/hadoop-dist/src/main/compose/ozone/docker-config b/hadoop-dist/src/main/compose/ozone/docker-config
index 0bf76a32bc9..f2c8db1f3bb 100644
--- a/hadoop-dist/src/main/compose/ozone/docker-config
+++ b/hadoop-dist/src/main/compose/ozone/docker-config
@@ -15,6 +15,7 @@
# limitations under the License.
OZONE-SITE.XML_ozone.om.address=ozoneManager
+OZONE-SITE.XML_ozone.om.http-address=ozoneManager:9874
OZONE-SITE.XML_ozone.scm.names=scm
OZONE-SITE.XML_ozone.enabled=True
OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/docker-compose.yaml b/hadoop-dist/src/main/compose/ozonefs/docker-compose.yaml
similarity index 93%
rename from hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/docker-compose.yaml
rename to hadoop-dist/src/main/compose/ozonefs/docker-compose.yaml
index 6b7b7bd946d..1671c394922 100644
--- a/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/docker-compose.yaml
+++ b/hadoop-dist/src/main/compose/ozonefs/docker-compose.yaml
@@ -19,7 +19,7 @@ services:
datanode:
image: apache/hadoop-runner
volumes:
- - ${OZONEDIR}:/opt/hadoop
+ - ../..:/opt/hadoop
ports:
- 9864
command: ["/opt/hadoop/bin/ozone","datanode"]
@@ -29,7 +29,7 @@ services:
image: apache/hadoop-runner
hostname: ozoneManager
volumes:
- - ${OZONEDIR}:/opt/hadoop
+ - ../..:/opt/hadoop
ports:
- 9874
environment:
@@ -40,7 +40,7 @@ services:
scm:
image: apache/hadoop-runner
volumes:
- - ${OZONEDIR}:/opt/hadoop
+ - ../..:/opt/hadoop
ports:
- 9876
env_file:
@@ -51,7 +51,7 @@ services:
hadooplast:
image: flokkr/hadoop:3.1.0
volumes:
- - ${OZONEDIR}:/opt/ozone
+ - ../..:/opt/ozone
env_file:
- ./docker-config
environment:
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/docker-config b/hadoop-dist/src/main/compose/ozonefs/docker-config
similarity index 100%
rename from hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/docker-config
rename to hadoop-dist/src/main/compose/ozonefs/docker-config
diff --git a/hadoop-dist/src/main/compose/ozoneperf/docker-config b/hadoop-dist/src/main/compose/ozoneperf/docker-config
index acfdb86fe58..454601e715d 100644
--- a/hadoop-dist/src/main/compose/ozoneperf/docker-config
+++ b/hadoop-dist/src/main/compose/ozoneperf/docker-config
@@ -15,6 +15,7 @@
# limitations under the License.
OZONE-SITE.XML_ozone.om.address=ozoneManager
+OZONE-SITE.XML_ozone.om.http-address=ozoneManager:9874
OZONE-SITE.XML_ozone.scm.names=scm
OZONE-SITE.XML_ozone.enabled=True
OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
diff --git a/hadoop-dist/src/main/compose/ozonescripts/docker-config b/hadoop-dist/src/main/compose/ozonescripts/docker-config
index 7a962baf2e2..1afec73e0ed 100644
--- a/hadoop-dist/src/main/compose/ozonescripts/docker-config
+++ b/hadoop-dist/src/main/compose/ozonescripts/docker-config
@@ -21,6 +21,7 @@ OZONE-SITE.XML_ozone.scm.names=scm
OZONE-SITE.XML_ozone.enabled=true
OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
OZONE-SITE.XML_ozone.om.address=om
+OZONE-SITE.XML_ozone.om.http-address=om:9874
OZONE-SITE.XML_ozone.scm.block.client.address=scm
OZONE-SITE.XML_ozone.metadata.dirs=/data/metadata
OZONE-SITE.XML_ozone.scm.client.address=scm
diff --git a/hadoop-dist/src/main/smoketest/README.md b/hadoop-dist/src/main/smoketest/README.md
new file mode 100644
index 00000000000..cc6ee92f091
--- /dev/null
+++ b/hadoop-dist/src/main/smoketest/README.md
@@ -0,0 +1,30 @@
+
+
+## Ozone Acceptance Tests
+
+This directory contains a [robotframework](http://robotframework.org/) based test suite for Ozone to make it easier to check the current state of the package.
+
+You can run in in any environment after [installing](https://github.com/robotframework/robotframework/blob/master/INSTALL.rst)
+
+```
+cd $DIRECTORY_OF_OZONE
+robot smoketest/bascic
+```
+
+The argument of the `robot` could be any robot file or directory.
+
+The current configuration in the robot files (hostnames, ports) are adjusted for the docker-based setup but you can easily modify it for any environment.
+
+The `./test.sh` in this directory can start multiple type of clusters (ozone standalon or ozone + hdfs) and execute the test framework with all of the clusters.
\ No newline at end of file
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/basic/basic.robot b/hadoop-dist/src/main/smoketest/basic/basic.robot
similarity index 51%
rename from hadoop-ozone/acceptance-test/src/test/acceptance/basic/basic.robot
rename to hadoop-dist/src/main/smoketest/basic/basic.robot
index 71d6e4ca164..a69450dbba8 100644
--- a/hadoop-ozone/acceptance-test/src/test/acceptance/basic/basic.robot
+++ b/hadoop-dist/src/main/smoketest/basic/basic.robot
@@ -16,35 +16,32 @@
*** Settings ***
Documentation Smoketest ozone cluster startup
Library OperatingSystem
-Suite Setup Startup Ozone cluster with size 5
-Suite Teardown Teardown Ozone cluster
Resource ../commonlib.robot
*** Variables ***
${COMMON_REST_HEADER} -H "x-ozone-user: bilbo" -H "x-ozone-version: v1" -H "Date: Mon, 26 Jun 2017 04:23:30 GMT" -H "Authorization:OZONE root"
-${COMPOSEFILE} ${CURDIR}/docker-compose.yaml
-${PROJECTDIR} ${CURDIR}/../../../../../..
+${DATANODE_HOST} localhost
*** Test Cases ***
Test rest interface
- ${result} = Execute on datanode curl -i -X POST ${COMMON_RESTHEADER} "http://localhost:9880/volume1"
+ ${result} = Execute curl -i -X POST ${COMMON_RESTHEADER} "http://${DATANODE_HOST}:9880/volume1"
Should contain ${result} 201 Created
- ${result} = Execute on datanode curl -i -X POST ${COMMON_RESTHEADER} "http://localhost:9880/volume1/bucket1"
+ ${result} = Execute curl -i -X POST ${COMMON_RESTHEADER} "http://${DATANODE_HOST}:9880/volume1/bucket1"
Should contain ${result} 201 Created
- ${result} = Execute on datanode curl -i -X DELETE ${COMMON_RESTHEADER} "http://localhost:9880/volume1/bucket1"
+ ${result} = Execute curl -i -X DELETE ${COMMON_RESTHEADER} "http://${DATANODE_HOST}:9880/volume1/bucket1"
Should contain ${result} 200 OK
- ${result} = Execute on datanode curl -i -X DELETE ${COMMON_RESTHEADER} "http://localhost:9880/volume1"
+ ${result} = Execute curl -i -X DELETE ${COMMON_RESTHEADER} "http://${DATANODE_HOST}:9880/volume1"
Should contain ${result} 200 OK
Check webui static resources
- ${result} = Execute on scm curl -s -I http://localhost:9876/static/bootstrap-3.3.7/js/bootstrap.min.js
- Should contain ${result} 200
- ${result} = Execute on ozoneManager curl -s -I http://localhost:9874/static/bootstrap-3.3.7/js/bootstrap.min.js
- Should contain ${result} 200
+ ${result} = Execute curl -s -I http://scm:9876/static/bootstrap-3.3.7/js/bootstrap.min.js
+ Should contain ${result} 200
+ ${result} = Execute curl -s -I http://ozoneManager:9874/static/bootstrap-3.3.7/js/bootstrap.min.js
+ Should contain ${result} 200
Start freon testing
- ${result} = Execute on ozoneManager ozone freon randomkeys --numOfVolumes 5 --numOfBuckets 5 --numOfKeys 5 --numOfThreads 10
- Wait Until Keyword Succeeds 3min 10sec Should contain ${result} Number of Keys added: 125
- Should Not Contain ${result} ERROR
+ ${result} = Execute ozone freon randomkeys --numOfVolumes 5 --numOfBuckets 5 --numOfKeys 5 --numOfThreads 10
+ Wait Until Keyword Succeeds 3min 10sec Should contain ${result} Number of Keys added: 125
+ Should Not Contain ${result} ERROR
diff --git a/hadoop-dist/src/main/smoketest/basic/ozone-shell.robot b/hadoop-dist/src/main/smoketest/basic/ozone-shell.robot
new file mode 100644
index 00000000000..14a576170d7
--- /dev/null
+++ b/hadoop-dist/src/main/smoketest/basic/ozone-shell.robot
@@ -0,0 +1,82 @@
+# 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 Test ozone shell CLI usage
+Library OperatingSystem
+Resource ../commonlib.robot
+Test Timeout 2 minute
+
+*** Variables ***
+
+*** Test Cases ***
+RestClient without http port
+ Test ozone shell http:// ozoneManager restwoport
+
+RestClient with http port
+ Test ozone shell http:// ozoneManager:9874 restwport
+
+RestClient without host name
+ Test ozone shell http:// ${EMPTY} restwohost
+
+RpcClient with port
+ Test ozone shell o3:// ozoneManager:9862 rpcwoport
+
+RpcClient without host
+ Test ozone shell o3:// ${EMPTY} rpcwport
+
+RpcClient without scheme
+ Test ozone shell ${EMPTY} ${EMPTY} rpcwoscheme
+
+
+*** Keywords ***
+Test ozone shell
+ [arguments] ${protocol} ${server} ${volume}
+ ${result} = Execute ozone sh volume create ${protocol}${server}/${volume} --user bilbo --quota 100TB --root
+ Should not contain ${result} Failed
+ Should contain ${result} Creating Volume: ${volume}
+ ${result} = Execute ozone sh volume list ${protocol}${server}/ --user bilbo | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '.[] | select(.volumeName=="${volume}")'
+ Should contain ${result} createdOn
+ ${result} = Execute ozone sh volume list --user bilbo | grep -Ev 'Removed|DEBUG|ERROR|INFO|TRACE|WARN' | jq -r '.[] | select(.volumeName=="${volume}")'
+ Should contain ${result} createdOn
+ Execute ozone sh volume update ${protocol}${server}/${volume} --user bill --quota 10TB
+ ${result} = Execute ozone sh volume info ${protocol}${server}/${volume} | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.volumeName=="${volume}") | .owner | .name'
+ Should Be Equal ${result} bill
+ ${result} = Execute ozone sh volume info ${protocol}${server}/${volume} | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.volumeName=="${volume}") | .quota | .size'
+ Should Be Equal ${result} 10
+ Execute ozone sh bucket create ${protocol}${server}/${volume}/bb1
+ ${result} = Execute ozone sh bucket info ${protocol}${server}/${volume}/bb1 | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.bucketName=="bb1") | .storageType'
+ Should Be Equal ${result} DISK
+ ${result} = Execute ozone sh bucket update ${protocol}${server}/${volume}/bb1 --addAcl user:frodo:rw,group:samwise:r | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.bucketName=="bb1") | .acls | .[] | select(.name=="samwise") | .type'
+ Should Be Equal ${result} GROUP
+ ${result} = Execute ozone sh bucket update ${protocol}${server}/${volume}/bb1 --removeAcl group:samwise:r | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.bucketName=="bb1") | .acls | .[] | select(.name=="frodo") | .type'
+ Should Be Equal ${result} USER
+ ${result} = Execute ozone sh bucket list ${protocol}${server}/${volume}/ | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '.[] | select(.bucketName=="bb1") | .volumeName'
+ Should Be Equal ${result} ${volume}
+ Run Keyword Test key handling ${protocol} ${server} ${volume}
+ Execute ozone sh bucket delete ${protocol}${server}/${volume}/bb1
+ Execute ozone sh volume delete ${protocol}${server}/${volume} --user bilbo
+
+Test key handling
+ [arguments] ${protocol} ${server} ${volume}
+ Execute ozone sh key put ${protocol}${server}/${volume}/bb1/key1 /opt/hadoop/NOTICE.txt
+ Execute rm -f NOTICE.txt.1
+ Execute ozone sh key get ${protocol}${server}/${volume}/bb1/key1 NOTICE.txt.1
+ Execute ls -l NOTICE.txt.1
+ ${result} = Execute ozone sh key info ${protocol}${server}/${volume}/bb1/key1 | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.keyName=="key1")'
+ Should contain ${result} createdOn
+ ${result} = Execute ozone sh key list ${protocol}${server}/${volume}/bb1 | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '.[] | select(.keyName=="key1") | .keyName'
+ Should Be Equal ${result} key1
+ Execute ozone sh key delete ${protocol}${server}/${volume}/bb1/key1
diff --git a/hadoop-ozone/acceptance-test/dev-support/bin/robot-all.sh b/hadoop-dist/src/main/smoketest/commonlib.robot
old mode 100755
new mode 100644
similarity index 69%
rename from hadoop-ozone/acceptance-test/dev-support/bin/robot-all.sh
rename to hadoop-dist/src/main/smoketest/commonlib.robot
index 87b713752b9..e2620fa4340
--- a/hadoop-ozone/acceptance-test/dev-support/bin/robot-all.sh
+++ b/hadoop-dist/src/main/smoketest/commonlib.robot
@@ -1,4 +1,3 @@
-#!/usr/bin/env bash
# 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.
@@ -14,5 +13,12 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-"$DIR/robot.sh" "$DIR/../../src/test/acceptance"
+*** Keywords ***
+
+
+Execute
+ [arguments] ${command}
+ ${rc} ${output} = Run And Return Rc And Output ${command}
+ Log ${output}
+ Should Be Equal As Integers ${rc} 0
+ [return] ${output}
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/ozonefs.robot b/hadoop-dist/src/main/smoketest/ozonefs/ozonefs.robot
similarity index 53%
rename from hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/ozonefs.robot
rename to hadoop-dist/src/main/smoketest/ozonefs/ozonefs.robot
index be1b25ea33d..fb7b98cec63 100644
--- a/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/ozonefs.robot
+++ b/hadoop-dist/src/main/smoketest/ozonefs/ozonefs.robot
@@ -16,24 +16,20 @@
*** Settings ***
Documentation Ozonefs test
Library OperatingSystem
-Suite Setup Startup Ozone cluster with size 5
-Suite Teardown Teardown Ozone cluster
Resource ../commonlib.robot
*** Variables ***
-${COMPOSEFILE} ${CURDIR}/docker-compose.yaml
-${PROJECTDIR} ${CURDIR}/../../../../../..
*** Test Cases ***
Create volume and bucket
- Execute on datanode ozone sh volume create http://ozoneManager/fstest --user bilbo --quota 100TB --root
- Execute on datanode ozone sh bucket create http://ozoneManager/fstest/bucket1
+ Execute ozone sh volume create http://ozoneManager/fstest --user bilbo --quota 100TB --root
+ Execute ozone sh bucket create http://ozoneManager/fstest/bucket1
Check volume from ozonefs
- ${result} = Execute on datanode ozone fs -ls o3://bucket1.fstest/
+ ${result} = Execute ozone fs -ls o3://bucket1.fstest/
Create directory from ozonefs
- Execute on datanode ozone fs -mkdir -p o3://bucket1.fstest/testdir/deep
- ${result} = Execute on ozoneManager ozone sh key list o3://ozoneManager/fstest/bucket1 | grep -v WARN | jq -r '.[].keyName'
- Should contain ${result} testdir/deep
+ Execute ozone fs -mkdir -p o3://bucket1.fstest/testdir/deep
+ ${result} = Execute ozone sh key list o3://ozoneManager/fstest/bucket1 | grep -v WARN | jq -r '.[].keyName'
+ Should contain ${result} testdir/deep
diff --git a/hadoop-dist/src/main/smoketest/test.sh b/hadoop-dist/src/main/smoketest/test.sh
new file mode 100755
index 00000000000..534bbb701f7
--- /dev/null
+++ b/hadoop-dist/src/main/smoketest/test.sh
@@ -0,0 +1,101 @@
+#!/usr/bin/env bash
+# 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.
+
+set -e
+DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
+
+execute_tests(){
+ COMPOSE_FILE=$DIR/../compose/$1/docker-compose.yaml
+ TESTS=$2
+ echo "Executing test ${TESTS[*]} with $COMPOSE_FILE"
+ docker-compose -f "$COMPOSE_FILE" down
+ docker-compose -f "$COMPOSE_FILE" up -d
+ docker-compose -f "$COMPOSE_FILE" exec datanode sudo apt-get update
+ docker-compose -f "$COMPOSE_FILE" exec datanode sudo apt-get install -y python-pip
+ docker-compose -f "$COMPOSE_FILE" exec datanode sudo pip install robotframework
+ for TEST in "${TESTS[@]}"; do
+ set +e
+ docker-compose -f "$COMPOSE_FILE" exec datanode python -m robot "smoketest/$TEST"
+ set -e
+ done
+ if [ "$KEEP_RUNNING" = false ]; then
+ docker-compose -f "$COMPOSE_FILE" down
+ fi
+}
+RUN_ALL=true
+KEEP_RUNNING=false
+POSITIONAL=()
+while [[ $# -gt 0 ]]
+do
+key="$1"
+
+case $key in
+ --env)
+ DOCKERENV="$2"
+ RUN_ALL=false
+ shift # past argument
+ shift # past value
+ ;;
+ --keep)
+ KEEP_RUNNING=true
+ shift # past argument
+ ;;
+ --help|-h|-help)
+ cat << EOF
+
+ Acceptance test executor for ozone.
+
+ This is a lightweight test executor for ozone.
+
+ You can run it with
+
+ ./test.sh
+
+ Which executes all the tests in all the available environments.
+
+ Or you can run manually one test with
+
+ ./test.sh --keep --env ozone-hdfs basic
+
+ --keep means that docker cluster won't be stopped after the test (optional)
+ --env defines the subdirectory under the compose dir
+ The remaining parameters define the test suites under smoketest dir.
+ Could be any directory or robot file relative to the smoketest dir.
+EOF
+ exit 0
+ ;;
+ *)
+ POSITIONAL+=("$1") # save it in an array for later
+ shift # past argument
+ ;;
+esac
+done
+
+if [ "$RUN_ALL" = true ]; then
+#
+# This is the definition of the ozone acceptance test suite
+#
+# We select the test suites and execute them on multiple type of clusters
+#
+ DEFAULT_TESTS=("basic")
+ execute_tests ozone "${DEFAULT_TESTS[@]}"
+ TESTS=("ozonefs")
+ execute_tests ozonefs "${TESTS[@]}"
+
+else
+ execute_tests "$DOCKERENV" "${POSITIONAL[@]}"
+fi
diff --git a/hadoop-ozone/acceptance-test/README.md b/hadoop-ozone/acceptance-test/README.md
deleted file mode 100644
index 2714e0adcd2..00000000000
--- a/hadoop-ozone/acceptance-test/README.md
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-# Acceptance test suite for Ozone/Hdds
-
-This project contains acceptance tests for ozone/hdds using docker-compose and [robot framework](http://robotframework.org/).
-
-## Run
-
-To run the acceptance tests, please activate the `ozone-acceptance-test` profile and do a full build.
-
-```
-mvn clean install -Pdist -Phdds
-cd hadoop-ozone/acceptance-test
-mvn integration-test -Phdds,ozone-acceptance-test,dist -DskipTests
-```
-
-Notes:
-
- 1. You need a hadoop build in hadoop-dist/target directory.
- 2. The `ozone-acceptance-test` could be activated with profile even if the unit tests are disabled.
- 3. This method does not require the robot framework on path as jpython is used.
-
-## Development
-
-You can also run manually the robot tests with `robot` cli.
- (See robotframework docs to install it: http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#installation-instructions)
-
-In the dev-support directory we have two wrapper scripts to run robot framework with local robot cli
-instead of calling it from maven.
-
-It's useful during the development of the robot files as any robotframework cli
-arguments could be used.
-
- 1. `dev-support/bin/robot.sh` is the simple wrapper. The .robot file should be used as an argument.
- 2. `dev-support/bin/robot-all.sh` will call the robot.sh with the main acceptance test directory,
- which means all the acceptance tests will be executed.
diff --git a/hadoop-ozone/acceptance-test/dev-support/bin/robot-dnd-all.sh b/hadoop-ozone/acceptance-test/dev-support/bin/robot-dnd-all.sh
deleted file mode 100755
index 052ffb3f7b9..00000000000
--- a/hadoop-ozone/acceptance-test/dev-support/bin/robot-dnd-all.sh
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/usr/bin/env bash
-# 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.
-
-set -x
-
-DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-
-#Dir to save the results
-TARGETDIR="$DIR/../../target/dnd"
-
-#Name and imagename of the temporary, dind based test containers
-DOCKER_IMAGE_NAME=ozoneacceptance
-DOCKER_INSTANCE_NAME="${DOCKER_INSTANCE_NAME:-ozoneacceptance}"
-
-teardown() {
- docker stop "$DOCKER_INSTANCE_NAME"
-}
-
-trap teardown EXIT
-
-#Make sure it will work even if the ozone is built by an other user. We
-# eneable to run the distribution by an other user
-mkdir -p "$TARGETDIR"
-mkdir -p "$OZONEDIST/logs"
-chmod o+w "$OZONEDIST/logs" || true
-chmod -R o+w "$OZONEDIST/etc/hadoop" || true
-chmod o+w "$OZONEDIST" || true
-
-rm "$TARGETDIR/docker-compose.log"
-docker rm "$DOCKER_INSTANCE_NAME" || true
-docker build -t "$DOCKER_IMAGE_NAME" "$DIR/../docker"
-
-#Starting the dind based environment
-docker run --rm -v "$DIR/../../../..:/opt/hadoop" --privileged -d --name "$DOCKER_INSTANCE_NAME" $DOCKER_IMAGE_NAME
-sleep 5
-
-#Starting the tests
-docker exec "$DOCKER_INSTANCE_NAME" /opt/hadoop/hadoop-ozone/acceptance-test/dev-support/bin/robot-all.sh
-RESULT=$?
-
-docker cp "$DOCKER_INSTANCE_NAME:/root/log.html" "$TARGETDIR/"
-docker cp "$DOCKER_INSTANCE_NAME:/root/junit-results.xml" "$TARGETDIR/"
-docker cp "$DOCKER_INSTANCE_NAME:/root/docker-compose.log" "$TARGETDIR/"
-exit $RESULT
diff --git a/hadoop-ozone/acceptance-test/dev-support/bin/robot.sh b/hadoop-ozone/acceptance-test/dev-support/bin/robot.sh
deleted file mode 100755
index 5b85089c5d3..00000000000
--- a/hadoop-ozone/acceptance-test/dev-support/bin/robot.sh
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/usr/bin/env bash
-# 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.
-
-set -x
-
-DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-
-if [ ! "$(command -v robot)" ] ; then
- echo ""
- echo "robot is not on your PATH."
- echo ""
- echo "Please install it according to the documentation:"
- echo " http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#installation-instructions"
- echo " (TLDR; most of the time you need: 'pip install robotframework')"
- exit -1
-fi
-
-MARKERFILE=$(find "$DIR/../../../../hadoop-dist/target" -name hadoop-ozone.sh)
-OZONEDISTDIR="$(dirname "$(dirname "$(dirname "$MARKERFILE")")")"
-if [ ! -d "$OZONEDISTDIR" ]; then
- echo "Ozone can't be found in the $OZONEDISTDIR."
- echo "You may need a full build with -Phdds and -Pdist profiles"
- exit -1
-fi
-robot --variable "OZONEDIR:$OZONEDISTDIR" -x junit-results.xml "$@"
diff --git a/hadoop-ozone/acceptance-test/dev-support/docker/Dockerfile b/hadoop-ozone/acceptance-test/dev-support/docker/Dockerfile
deleted file mode 100644
index 06feda6221b..00000000000
--- a/hadoop-ozone/acceptance-test/dev-support/docker/Dockerfile
+++ /dev/null
@@ -1,21 +0,0 @@
-# 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.
-
-FROM docker:18-dind
-RUN apk add --update python3 bash curl jq sudo
-RUN pip3 install robotframework docker-compose
-WORKDIR /root
-USER root
diff --git a/hadoop-ozone/acceptance-test/dev-support/docker/docker-compose.yaml b/hadoop-ozone/acceptance-test/dev-support/docker/docker-compose.yaml
deleted file mode 100644
index 6f16b0ac3b8..00000000000
--- a/hadoop-ozone/acceptance-test/dev-support/docker/docker-compose.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-# 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.
-
-version: "3"
-services:
- robotenv:
- build: .
- privileged: true
- volumes:
- - ../../../..:/opt/hadoop
diff --git a/hadoop-ozone/acceptance-test/pom.xml b/hadoop-ozone/acceptance-test/pom.xml
deleted file mode 100644
index a60d4b0777f..00000000000
--- a/hadoop-ozone/acceptance-test/pom.xml
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
- 4.0.0
-
- org.apache.hadoop
- hadoop-ozone
- 0.3.0-SNAPSHOT
-
- hadoop-ozone-acceptance-test
- 3.2.0-SNAPSHOT
- Apache Hadoop Ozone Acceptance Tests
- Apache Hadoop Ozone Acceptance Tests
- pom
-
-
- ozone
- true
-
-
-
-
- ozone-acceptance-test
-
-
-
- org.robotframework
- robotframework-maven-plugin
- 1.4.7
-
-
-
- run
-
-
- src/test/acceptance
-
- OZONEDIR:${project.basedir}/../../hadoop-dist/target/ozone-${ozone.version}
-
- false
- false
-
-
-
-
-
-
-
-
-
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/basic/.env b/hadoop-ozone/acceptance-test/src/test/acceptance/basic/.env
deleted file mode 100644
index 98234cb1122..00000000000
--- a/hadoop-ozone/acceptance-test/src/test/acceptance/basic/.env
+++ /dev/null
@@ -1,17 +0,0 @@
-# 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.
-
-OZONEDIR=../../../../../../hadoop-dist/target/ozone
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/basic/docker-compose.yaml b/hadoop-ozone/acceptance-test/src/test/acceptance/basic/docker-compose.yaml
deleted file mode 100644
index 99f28310f15..00000000000
--- a/hadoop-ozone/acceptance-test/src/test/acceptance/basic/docker-compose.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-# 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.
-
-version: "3"
-services:
- datanode:
- image: apache/hadoop-runner
- volumes:
- - ${OZONEDIR}:/opt/hadoop
- ports:
- - 9864
- command: ["/opt/hadoop/bin/ozone","datanode"]
- env_file:
- - ./docker-config
- ozoneManager:
- image: apache/hadoop-runner
- hostname: ozoneManager
- volumes:
- - ${OZONEDIR}:/opt/hadoop
- ports:
- - 9874
- environment:
- ENSURE_OM_INITIALIZED: /data/metadata/ozoneManager/current/VERSION
- env_file:
- - ./docker-config
- command: ["/opt/hadoop/bin/ozone","om"]
- scm:
- image: apache/hadoop-runner
- volumes:
- - ${OZONEDIR}:/opt/hadoop
- ports:
- - 9876
- env_file:
- - ./docker-config
- environment:
- ENSURE_SCM_INITIALIZED: /data/metadata/scm/current/VERSION
- command: ["/opt/hadoop/bin/ozone","scm"]
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/basic/docker-config b/hadoop-ozone/acceptance-test/src/test/acceptance/basic/docker-config
deleted file mode 100644
index 0a75c2a222e..00000000000
--- a/hadoop-ozone/acceptance-test/src/test/acceptance/basic/docker-config
+++ /dev/null
@@ -1,34 +0,0 @@
-# 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.
-
-OZONE-SITE.XML_ozone.om.address=ozoneManager
-OZONE-SITE.XML_ozone.om.http-address=ozoneManager:9874
-OZONE-SITE.XML_ozone.scm.names=scm
-OZONE-SITE.XML_ozone.enabled=True
-OZONE-SITE.XML_ozone.scm.datanode.id=/data/datanode.id
-OZONE-SITE.XML_ozone.scm.block.client.address=scm
-OZONE-SITE.XML_ozone.metadata.dirs=/data/metadata
-OZONE-SITE.XML_ozone.handler.type=distributed
-OZONE-SITE.XML_ozone.scm.client.address=scm
-OZONE-SITE.XML_ozone.scm.heartbeat.interval=3s
-HDFS-SITE.XML_rpc.metrics.quantile.enable=true
-HDFS-SITE.XML_rpc.metrics.percentiles.intervals=60,300
-LOG4J.PROPERTIES_log4j.rootLogger=INFO, stdout
-LOG4J.PROPERTIES_log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-LOG4J.PROPERTIES_log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-LOG4J.PROPERTIES_log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
-LOG4J.PROPERTIES_log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR
-LOG4J.PROPERTIES_log4j.logger.org.apache.ratis.conf.ConfUtils=WARN
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/basic/ozone-shell.robot b/hadoop-ozone/acceptance-test/src/test/acceptance/basic/ozone-shell.robot
deleted file mode 100644
index 1bd1eb640a9..00000000000
--- a/hadoop-ozone/acceptance-test/src/test/acceptance/basic/ozone-shell.robot
+++ /dev/null
@@ -1,86 +0,0 @@
-# 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 Test ozone shell CLI usage
-Library OperatingSystem
-Suite Setup Startup Ozone cluster with size 5
-Suite Teardown Teardown Ozone cluster
-Resource ../commonlib.robot
-Test Timeout 2 minute
-
-*** Variables ***
-${COMPOSEFILE} ${CURDIR}/docker-compose.yaml
-${PROJECTDIR} ${CURDIR}/../../../../../..
-
-*** Test Cases ***
-RestClient without http port
- Test ozone shell http:// ozoneManager restwoport
-
-RestClient with http port
- Test ozone shell http:// ozoneManager:9874 restwport
-
-RestClient without host name
- Test ozone shell http:// ${EMPTY} restwohost
-
-RpcClient with port
- Test ozone shell o3:// ozoneManager:9862 rpcwoport
-
-RpcClient without host
- Test ozone shell o3:// ${EMPTY} rpcwport
-
-RpcClient without scheme
- Test ozone shell ${EMPTY} ${EMPTY} rpcwoscheme
-
-
-*** Keywords ***
-Test ozone shell
- [arguments] ${protocol} ${server} ${volume}
- ${result} = Execute on datanode ozone sh volume create ${protocol}${server}/${volume} --user bilbo --quota 100TB --root
- Should not contain ${result} Failed
- Should contain ${result} Creating Volume: ${volume}
- ${result} = Execute on datanode ozone sh volume list ${protocol}${server}/ --user bilbo | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '.[] | select(.volumeName=="${volume}")'
- Should contain ${result} createdOn
- ${result} = Execute on datanode ozone sh volume list --user bilbo | grep -Ev 'Removed|DEBUG|ERROR|INFO|TRACE|WARN' | jq -r '.[] | select(.volumeName=="${volume}")'
- Should contain ${result} createdOn
- Execute on datanode ozone sh volume update ${protocol}${server}/${volume} --user bill --quota 10TB
- ${result} = Execute on datanode ozone sh volume info ${protocol}${server}/${volume} | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.volumeName=="${volume}") | .owner | .name'
- Should Be Equal ${result} bill
- ${result} = Execute on datanode ozone sh volume info ${protocol}${server}/${volume} | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.volumeName=="${volume}") | .quota | .size'
- Should Be Equal ${result} 10
- Execute on datanode ozone sh bucket create ${protocol}${server}/${volume}/bb1
- ${result} = Execute on datanode ozone sh bucket info ${protocol}${server}/${volume}/bb1 | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.bucketName=="bb1") | .storageType'
- Should Be Equal ${result} DISK
- ${result} = Execute on datanode ozone sh bucket update ${protocol}${server}/${volume}/bb1 --addAcl user:frodo:rw,group:samwise:r | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.bucketName=="bb1") | .acls | .[] | select(.name=="samwise") | .type'
- Should Be Equal ${result} GROUP
- ${result} = Execute on datanode ozone sh bucket update ${protocol}${server}/${volume}/bb1 --removeAcl group:samwise:r | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.bucketName=="bb1") | .acls | .[] | select(.name=="frodo") | .type'
- Should Be Equal ${result} USER
- ${result} = Execute on datanode ozone sh bucket list ${protocol}${server}/${volume}/ | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '.[] | select(.bucketName=="bb1") | .volumeName'
- Should Be Equal ${result} ${volume}
- Run Keyword Test key handling ${protocol} ${server} ${volume}
- Execute on datanode ozone sh bucket delete ${protocol}${server}/${volume}/bb1
- Execute on datanode ozone sh volume delete ${protocol}${server}/${volume} --user bilbo
-
-Test key handling
- [arguments] ${protocol} ${server} ${volume}
- Execute on datanode ozone sh key put ${protocol}${server}/${volume}/bb1/key1 NOTICE.txt
- Execute on datanode rm -f NOTICE.txt.1
- Execute on datanode ozone sh key get ${protocol}${server}/${volume}/bb1/key1 NOTICE.txt.1
- Execute on datanode ls -l NOTICE.txt.1
- ${result} = Execute on datanode ozone sh key info ${protocol}${server}/${volume}/bb1/key1 | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.keyName=="key1")'
- Should contain ${result} createdOn
- ${result} = Execute on datanode ozone sh key list ${protocol}${server}/${volume}/bb1 | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '.[] | select(.keyName=="key1") | .keyName'
- Should Be Equal ${result} key1
- Execute on datanode ozone sh key delete ${protocol}${server}/${volume}/bb1/key1
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/commonlib.robot b/hadoop-ozone/acceptance-test/src/test/acceptance/commonlib.robot
deleted file mode 100644
index e1c55d5b9d9..00000000000
--- a/hadoop-ozone/acceptance-test/src/test/acceptance/commonlib.robot
+++ /dev/null
@@ -1,78 +0,0 @@
-# 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.
-
-*** Keywords ***
-
-Startup Ozone cluster with size
- [arguments] ${datanodeno}
- ${rc} ${output} = Run docker compose down
- Run echo "Starting new docker-compose environment" >> docker-compose.log
- ${rc} ${output} = Run docker compose up -d
- Should Be Equal As Integers ${rc} 0
- Wait Until Keyword Succeeds 1min 5sec Is Daemon started ozoneManager HTTP server of OZONEMANAGER is listening
- Daemons are running without error
- Scale datanodes up 5
-
-Daemons are running without error
- Is daemon running without error ozoneManager
- Is daemon running without error scm
- Is daemon running without error datanode
-
-Check if datanode is connected to the scm
- Wait Until Keyword Succeeds 3min 5sec Have healthy datanodes 1
-
-Scale it up to 5 datanodes
- Scale datanodes up 5
- Wait Until Keyword Succeeds 3min 5sec Have healthy datanodes 5
-
-Scale datanodes up
- [arguments] ${datanodeno}
- Run docker compose scale datanode=${datanodeno}
- Wait Until Keyword Succeeds 3min 5sec Have healthy datanodes ${datanodeno}
-
-Teardown Ozone cluster
- Run docker compose down
- Run docker compose logs >> docker-compose.log
-
-Is daemon running without error
- [arguments] ${name}
- ${result} = Run docker ps
- Should contain ${result} _${name}_1
- ${rc} ${result} = Run docker compose logs ${name}
- Should not contain ${result} ERROR
-
-Is Daemon started
- [arguments] ${name} ${expression}
- ${rc} ${result} = Run docker compose logs
- Should contain ${result} ${expression}
-
-Have healthy datanodes
- [arguments] ${requirednodes}
- ${result} = Execute on scm curl -s 'http://localhost:9876/jmx?qry=Hadoop:service=SCMNodeManager,name=SCMNodeManagerInfo' | jq -r '.beans[0].NodeCount[] | select(.key=="HEALTHY") | .value'
- Should Be Equal ${result} ${requirednodes}
-
-Execute on
- [arguments] ${componentname} ${command}
- ${rc} ${return} = Run docker compose exec -T ${componentname} ${command}
- [return] ${return}
-
-Run docker compose
- [arguments] ${command}
- Set Environment Variable COMPOSE_INTERACTIVE_NO_CLI 1
- Set Environment Variable OZONEDIR ${OZONEDIR}
- ${rc} ${output} = Run And Return Rc And Output docker-compose -f ${COMPOSEFILE} ${command}
- Log ${output}
- Should Be Equal As Integers ${rc} 0
- [return] ${rc} ${output}
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/.env b/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/.env
deleted file mode 100644
index 98234cb1122..00000000000
--- a/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/.env
+++ /dev/null
@@ -1,17 +0,0 @@
-# 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.
-
-OZONEDIR=../../../../../../hadoop-dist/target/ozone
diff --git a/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/ozonesinglenode.robot b/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/ozonesinglenode.robot
deleted file mode 100644
index 15ad5bb0a84..00000000000
--- a/hadoop-ozone/acceptance-test/src/test/acceptance/ozonefs/ozonesinglenode.robot
+++ /dev/null
@@ -1,49 +0,0 @@
-# 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 Ozone Single Node Test
-Library OperatingSystem
-Suite Setup Startup Ozone cluster with size 1
-Suite Teardown Teardown Ozone cluster
-Resource ../commonlib.robot
-
-*** Variables ***
-${COMPOSEFILE} ${CURDIR}/docker-compose.yaml
-${PROJECTDIR} ${CURDIR}/../../../../../..
-
-
-*** Test Cases ***
-Create volume and bucket
- Execute on datanode ozone sh volume create http://ozoneManager/fstest --user bilbo --quota 100TB --root
- Execute on datanode ozone sh bucket create http://ozoneManager/fstest/bucket1
-
-Check volume from ozonefs
- ${result} = Execute on datanode ozone fs -ls o3://bucket1.fstest/
-
-Create directory from ozonefs
- Execute on datanode ozone fs -mkdir -p o3://bucket1.fstest/testdir/deep
- ${result} = Execute on ozoneManager ozone sh key list o3://ozoneManager/fstest/bucket1 | grep -v WARN | jq -r '.[].keyName'
- Should contain ${result} testdir/deep
-Test key handling
- Execute on datanode ozone sh key put o3://ozoneManager/fstest/bucket1/key1 NOTICE.txt --replication ONE
- Execute on datanode rm -f NOTICE.txt.1
- Execute on datanode ozone sh key get o3://ozoneManager/fstest/bucket1/key1 NOTICE.txt.1
- Execute on datanode ls -l NOTICE.txt.1
- ${result} = Execute on datanode ozone sh key info o3://ozoneManager/fstest/bucket1/key1 | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '. | select(.keyName=="key1")'
- Should contain ${result} createdOn
- ${result} = Execute on datanode ozone sh key list o3://ozoneManager/fstest/bucket1 | grep -Ev 'Removed|WARN|DEBUG|ERROR|INFO|TRACE' | jq -r '.[] | select(.keyName=="key1") | .keyName'
- Should Be Equal ${result} key1
- Execute on datanode ozone sh key delete o3://ozoneManager/fstest/bucket1/key1
diff --git a/hadoop-ozone/pom.xml b/hadoop-ozone/pom.xml
index 09f343291e8..3c07b64f616 100644
--- a/hadoop-ozone/pom.xml
+++ b/hadoop-ozone/pom.xml
@@ -121,7 +121,6 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd">
**/target/**
- acceptance-test/hadoop-ozone-acceptance-test.iml
.gitattributes
.idea/**
dev-support/checkstyle*
diff --git a/pom.xml b/pom.xml
index 5f290d1ba94..73d5cf52a1b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -745,7 +745,6 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs
hadoop-ozone
hadoop-hdds
- hadoop-ozone/acceptance-test