HDDS-8790. Split EC acceptance tests (#4855)

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index d63064e..ff4d386 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -254,6 +254,7 @@
           - secure
           - unsecure
           - compat
+          - EC
           - HA-secure
           - HA-unsecure
           - MR
diff --git a/hadoop-ozone/dist/src/main/compose/ozone/test-ec.sh b/hadoop-ozone/dist/src/main/compose/ozone/test-ec.sh
new file mode 100644
index 0000000..70693ce
--- /dev/null
+++ b/hadoop-ozone/dist/src/main/compose/ozone/test-ec.sh
@@ -0,0 +1,43 @@
+#!/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.
+
+#suite:EC
+
+COMPOSE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
+export COMPOSE_DIR
+
+export SECURITY_ENABLED=false
+export OZONE_REPLICATION_FACTOR=3
+
+# shellcheck source=/dev/null
+source "$COMPOSE_DIR/../testlib.sh"
+
+start_docker_env 5
+
+execute_robot_test scm -v BUCKET:erasure s3
+
+prefix=${RANDOM}
+execute_robot_test scm -v PREFIX:${prefix} ec/basic.robot
+docker-compose up -d --no-recreate --scale datanode=4
+execute_robot_test scm -v PREFIX:${prefix} -N read-4-datanodes ec/read.robot
+docker-compose up -d --no-recreate --scale datanode=3
+execute_robot_test scm -v PREFIX:${prefix} -N read-3-datanodes ec/read.robot
+docker-compose up -d --no-recreate --scale datanode=5
+
+stop_docker_env
+
+generate_report
diff --git a/hadoop-ozone/dist/src/main/compose/ozone/test.sh b/hadoop-ozone/dist/src/main/compose/ozone/test.sh
index 2958f90..02cf5e6 100755
--- a/hadoop-ozone/dist/src/main/compose/ozone/test.sh
+++ b/hadoop-ozone/dist/src/main/compose/ozone/test.sh
@@ -26,7 +26,7 @@
 # shellcheck source=/dev/null
 source "$COMPOSE_DIR/../testlib.sh"
 
-start_docker_env 5
+start_docker_env
 
 execute_robot_test scm lib
 execute_robot_test scm ozone-lib
@@ -39,13 +39,6 @@
 
 execute_robot_test scm security/ozone-secure-token.robot
 
-exclude=""
-for bucket in erasure; do
-  execute_robot_test scm -v BUCKET:${bucket} -N s3-${bucket} ${exclude} s3
-  # some tests are independent of the bucket type, only need to be run once
-  exclude="--exclude no-bucket-type"
-done
-
 execute_robot_test scm recon
 
 execute_robot_test scm om-ratis
@@ -60,13 +53,6 @@
 
 execute_robot_test scm -v SCHEME:o3fs -v BUCKET_TYPE:bucket -N ozonefs-o3fs-bucket ozonefs/ozonefs.robot
 
-prefix=${RANDOM}
-execute_robot_test scm -v PREFIX:${prefix} ec/basic.robot
-docker-compose up -d --no-recreate --scale datanode=4
-execute_robot_test scm -v PREFIX:${prefix} ec/read.robot
-docker-compose up -d --no-recreate --scale datanode=3
-execute_robot_test scm -v PREFIX:${prefix} ec/read.robot
-
 execute_robot_test s3g grpc/grpc-om-s3-metrics.robot
 
 execute_robot_test scm --exclude pre-finalized-snapshot-tests snapshot