You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by yo...@apache.org on 2022/08/03 06:41:58 UTC

[bookkeeper] branch branch-4.15 updated: Remove gradle build script (#3340)

This is an automated email from the ASF dual-hosted git repository.

yong pushed a commit to branch branch-4.15
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/branch-4.15 by this push:
     new 637a8a4533 Remove gradle build script (#3340)
637a8a4533 is described below

commit 637a8a45331feaca9a4ce5758a2b699394715846
Author: ZhangJian He <sh...@gmail.com>
AuthorDate: Fri Jun 17 08:39:28 2022 +0800

    Remove gradle build script (#3340)
    
    Remove gradle build script
    See
    https://lists.apache.org/thread/k3pdlpbvkzt061338fkxtppq3z70nk03
    https://lists.apache.org/thread/os28qm4t0kf74q2k3lzsmnnpr0lnm6zc
    - delete gradle build script
    - add `netty-buffer` dependency on module `distributedlog-core-shaded-test` to fix broken master tests.
    
    (cherry picked from commit 708f890874e3327a4ad2d6262ba6841a3c52b72c)
---
 bin/bookkeeper_gradle                              | 183 ----------------
 bookkeeper-common-allocator/build.gradle           |  29 ---
 bookkeeper-http/http-server/build.gradle           |  29 ---
 bookkeeper-http/servlet-http-server/build.gradle   |  45 ----
 bookkeeper-http/vertx-http-server/build.gradle     |  49 -----
 bookkeeper-proto/build.gradle                      |  38 ----
 buildtools/build.gradle                            |  43 ----
 circe-checksum/build.gradle                        |  46 ----
 circe-checksum/src/main/circe/build.gradle         |  45 ----
 cpu-affinity/build.gradle                          |  45 ----
 cpu-affinity/src/main/affinity/build.gradle        |  47 -----
 dev/check-all-licenses-gradle                      |  33 ---
 dev/release/build.gradle.kts                       |  70 ------
 gradle.properties                                  |  30 ---
 gradle/wrapper/gradle-wrapper.jar                  | Bin 59203 -> 0 bytes
 gradle/wrapper/gradle-wrapper.properties           |  26 ---
 gradlew                                            | 234 ---------------------
 gradlew.bat                                        |  89 --------
 microbenchmarks/run_with_gradle.sh                 |  19 --
 native-io/src/main/native-io-jni/build.gradle      |  48 -----
 shaded/bookkeeper-server-shaded/build.gradle       |  37 ----
 shaded/bookkeeper-server-tests-shaded/build.gradle |  36 ----
 shaded/distributedlog-core-shaded/build.gradle     |  58 -----
 stream/api/build.gradle                            |  41 ----
 stream/clients/java/all/build.gradle               |  53 -----
 stream/clients/java/kv/build.gradle                |  39 ----
 stream/distributedlog/protocol/build.gradle        |  62 ------
 stream/proto/build.gradle                          |  74 -------
 stream/statelib/build.gradle                       |  93 --------
 stream/storage/api/build.gradle                    |  45 ----
 stream/tests-common/build.gradle                   |  57 -----
 tests/backward-compat/bc-non-fips/build.gradle     |  42 ----
 tests/backward-compat/build.gradle                 |  59 ------
 tests/docker-images/build.gradle                   |  23 --
 tests/integration-tests-topologies/build.gradle    |  36 ----
 tests/integration-tests-utils/build.gradle         |  43 ----
 tests/integration/smoke/build.gradle               |  49 -----
 tests/integration/standalone/build.gradle          |  48 -----
 tests/scripts/build.gradle                         |  38 ----
 tests/scripts/src/test/bash/gradle/bk_test.sh      | 141 -------------
 tests/scripts/src/test/bash/gradle/bk_test_helpers |  94 ---------
 tests/scripts/src/test/bash/gradle/versions        | 173 ---------------
 .../bookkeeper-server-shaded-test/build.gradle     |  29 ---
 .../build.gradle                                   |  31 ---
 .../distributedlog-core-shaded-test/build.gradle   |  33 ---
 .../shaded/distributedlog-core-shaded-test/pom.xml |   5 +
 testtools/build.gradle                             |  43 ----
 tools/all/build.gradle                             |  40 ----
 tools/framework/build.gradle                       |  45 ----
 tools/stream/build.gradle                          |  63 ------
 50 files changed, 5 insertions(+), 2773 deletions(-)

diff --git a/bin/bookkeeper_gradle b/bin/bookkeeper_gradle
deleted file mode 100755
index 494907a1e6..0000000000
--- a/bin/bookkeeper_gradle
+++ /dev/null
@@ -1,183 +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 -e
-
-BINDIR=`dirname "$0"`
-BK_HOME=`cd ${BINDIR}/..;pwd`
-
-source ${BK_HOME}/bin/common_gradle.sh
-
-# default variables
-DEFAULT_CONF=${BK_HOME}/conf/bk_server.conf
-DEFAULT_ZK_CONF=${BK_HOME}/conf/zookeeper.conf
-
-if [ -z "$BOOKIE_CONF" ]; then
-  BOOKIE_CONF_TO_CHECK=${DEFAULT_CONF}
-else
-  BOOKIE_CONF_TO_CHECK=${BOOKIE_CONF}
-fi
-
-FIND_TABLE_SERVICE_RESULT=$(find_table_service ${BOOKIE_CONF_TO_CHECK} $1)
-
-if [ "x${FIND_TABLE_SERVICE_RESULT}" == "xtrue" ]; then
-  BOOKIE_MODULE_PATH=stream/server
-  BOOKIE_MODULE_NAME=${TABLE_SERVICE_MODULE_NAME}
-elif [ "x${FIND_TABLE_SERVICE_RESULT}" == "xfalse" ]; then
-  BOOKIE_MODULE_PATH=bookkeeper-server
-  BOOKIE_MODULE_NAME=${BOOKIE_SERVER_MODULE_NAME}
-else
-  echo ${FIND_TABLE_SERVICE_RESULT}
-  exit 1
-fi
-
-# find the module jar
-BOOKIE_JAR=$(find_module_jar ${BOOKIE_MODULE_PATH} ${BOOKIE_MODULE_NAME})
-
-# set up the classpath
-BOOKIE_CLASSPATH=$(set_module_classpath ${BOOKIE_MODULE_PATH})
-
-bookkeeper_help() {
-    cat <<EOF
-Usage: bookkeeper <command>
-where command is one of:
-
-[service commands]
-
-    bookie              Run a bookie server
-    autorecovery        Run AutoRecovery service daemon
-    zookeeper           Run zookeeper server
-
-[development commands]
-
-    localbookie <n>     Run a test ensemble of <n> bookies locally
-    standalone          Run a standalone cluster (with all service components) locally
-
-[tooling commands]
-
-    upgrade             Upgrade bookie filesystem
-    shell               Run shell for admin commands
-
-[other commands]
-
-    help                This help message
-
-or command is the full name of a class with a defined main() method.
-
-Environment variables:
-   BOOKIE_LOG_CONF        Log4j configuration file (default ${DEFAULT_LOG_CONF})
-   BOOKIE_CONF            Configuration file (default: ${DEFAULT_CONF})
-   BOOKIE_ZK_CONF         Configuration file for zookeeper (default: $DEFAULT_ZK_CONF)
-   BOOKIE_EXTRA_OPTS      Extra options to be passed to the jvm
-   BOOKIE_EXTRA_CLASSPATH Add extra paths to the bookkeeper classpath
-   ENTRY_FORMATTER_CLASS  Entry formatter class to format entries.
-   BOOKIE_PID_DIR         Folder where the Bookie server PID file should be stored
-   BOOKIE_STOP_TIMEOUT    Wait time before forcefully kill the Bookie server instance, if the stop is not successful
-
-These variable can also be set in conf/bkenv.sh
-EOF
-}
-
-# if no args specified, show usage
-if [ $# = 0 ]; then
-  bookkeeper_help;
-  exit 1;
-fi
-
-# get arguments
-COMMAND=$1
-shift
-
-LOCALBOOKIES_CONFIG_DIR="${LOCALBOOKIES_CONFIG_DIR:-/tmp/localbookies-config}"
-if [ ${COMMAND} == "shell" ]; then
-  DEFAULT_LOG_CONF=${BK_HOME}/conf/log4j2.shell.xml
-  if [[ $1 == "-localbookie"  ]]; then
-    if [[ $2 == *:* ]];
-    then
-      BOOKIE_CONF=${LOCALBOOKIES_CONFIG_DIR}/$2.conf
-      shift 2
-    else
-      BOOKIE_CONF=${LOCALBOOKIES_CONFIG_DIR}/baseconf.conf
-      shift
-    fi
-  fi
-fi
-
-if [ -z "$BOOKIE_ZK_CONF" ]; then
-    BOOKIE_ZK_CONF=$DEFAULT_ZK_CONF
-fi
-
-if [ -z "$BOOKIE_CONF" ]; then
-  BOOKIE_CONF=${DEFAULT_CONF}
-fi
-
-# Configure logging
-if [ -z "$BOOKIE_LOG_CONF" ]; then
-  BOOKIE_LOG_CONF=${DEFAULT_LOG_CONF}
-fi
-BOOKIE_LOG_DIR=${BOOKIE_LOG_DIR:-"$BK_HOME/logs"}
-BOOKIE_LOG_FILE=${BOOKIE_LOG_FILE:-"bookkeeper-server.log"}
-BOOKIE_ROOT_LOG_LEVEL=${BOOKIE_ROOT_LOG_LEVEL:-"INFO"}
-BOOKIE_ROOT_LOG_APPENDER=${BOOKIE_ROOT_LOG_APPENDER:-"CONSOLE"}
-
-# Configure the classpath
-BOOKIE_CLASSPATH="$BOOKIE_JAR:$BOOKIE_CLASSPATH:$BOOKIE_EXTRA_CLASSPATH"
-BOOKIE_CLASSPATH="`dirname $BOOKIE_LOG_CONF`:$BOOKIE_CLASSPATH"
-
-# Build the OPTS
-BOOKIE_OPTS=$(build_bookie_opts)
-GC_OPTS=$(build_bookie_jvm_opts ${BOOKIE_LOG_DIR} "gc_%p.log")
-NETTY_OPTS=$(build_netty_opts)
-LOGGING_OPTS=$(build_logging_opts ${BOOKIE_LOG_CONF} ${BOOKIE_ROOT_LOG_LEVEL} ${BOOKIE_ROOT_LOG_APPENDER} ${BOOKIE_LOG_DIR} ${BOOKIE_LOG_FILE})
-
-BOOKIE_EXTRA_OPTS="${BOOKIE_EXTRA_OPTS} -Dorg.bouncycastle.fips.approved_only=true"
-OPTS="${OPTS} -cp ${BOOKIE_CLASSPATH} ${BOOKIE_OPTS} ${GC_OPTS} ${NETTY_OPTS} ${LOGGING_OPTS} ${BOOKIE_EXTRA_OPTS}"
-
-# Create log dir if it doesn't exist
-if [ ! -d ${BOOKIE_LOG_DIR} ]; then
-    mkdir ${BOOKIE_LOG_DIR}
-fi
-
-#Change to BK_HOME to support relative paths
-cd "$BK_HOME"
-if [ ${COMMAND} == "bookie" ]; then
-  exec "${JAVA}" ${OPTS} ${JMX_ARGS} org.apache.bookkeeper.server.Main --conf ${BOOKIE_CONF} $@
-elif [ ${COMMAND} == "autorecovery" ]; then
-  exec "${JAVA}" ${OPTS} ${JMX_ARGS} org.apache.bookkeeper.replication.AutoRecoveryMain --conf ${BOOKIE_CONF} $@
-elif [ ${COMMAND} == "localbookie" ]; then
-  NUMBER=$1
-  shift
-  exec "${JAVA}" ${OPTS} ${JMX_ARGS} -Dzookeeper.4lw.commands.whitelist='*' org.apache.bookkeeper.util.LocalBookKeeper ${NUMBER} ${BOOKIE_CONF} $@
-elif [ ${COMMAND} == "standalone" ]; then
-  exec "${JAVA}" ${OPTS} ${JMX_ARGS} -Dzookeeper.4lw.commands.whitelist='*' org.apache.bookkeeper.stream.cluster.StandaloneStarter --conf ${BK_HOME}/conf/standalone.conf $@
-elif [ ${COMMAND} == "upgrade" ]; then
-  exec "${JAVA}" ${OPTS} org.apache.bookkeeper.bookie.FileSystemUpgrade --conf ${BOOKIE_CONF} $@
-elif [ $COMMAND == "zookeeper" ]; then
-    BOOKIE_LOG_FILE=${BOOKIE_LOG_FILE:-"zookeeper.log"}
-    exec "${JAVA}" $OPTS -Dbookkeeper.log.file=$BOOKIE_LOG_FILE org.apache.zookeeper.server.quorum.QuorumPeerMain $BOOKIE_ZK_CONF $@
-elif [ ${COMMAND} == "shell" ]; then
-  ENTRY_FORMATTER_ARG="-DentryFormatterClass=${ENTRY_FORMATTER_CLASS:-org.apache.bookkeeper.util.StringEntryFormatter}"
-  exec "${JAVA}" ${OPTS} ${ENTRY_FORMATTER_ARG} org.apache.bookkeeper.bookie.BookieShell -conf ${BOOKIE_CONF} $@
-elif [ ${COMMAND} == "help" ]; then
-  bookkeeper_help;
-else
-  exec "${JAVA}" ${OPTS} ${COMMAND} $@
-fi
-
diff --git a/bookkeeper-common-allocator/build.gradle b/bookkeeper-common-allocator/build.gradle
deleted file mode 100644
index 5685b25a34..0000000000
--- a/bookkeeper-common-allocator/build.gradle
+++ /dev/null
@@ -1,29 +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.
- */
-plugins {
-    id 'java-library'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    implementation depLibs.nettyBuffer
-    implementation depLibs.slf4j
-    testImplementation depLibs.junit
-    testImplementation depLibs.mockito
-}
diff --git a/bookkeeper-http/http-server/build.gradle b/bookkeeper-http/http-server/build.gradle
deleted file mode 100644
index 03200ddd0a..0000000000
--- a/bookkeeper-http/http-server/build.gradle
+++ /dev/null
@@ -1,29 +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.
- */
-plugins {
-    id 'java'
-}
-
-dependencies {
-    implementation depLibs.commonsConfiguration
-    implementation depLibs.jacksonCore
-    implementation depLibs.jacksonDatabind
-    implementation depLibs.jacksonAnnotations
-    implementation depLibs.slf4j
-}
diff --git a/bookkeeper-http/servlet-http-server/build.gradle b/bookkeeper-http/servlet-http-server/build.gradle
deleted file mode 100644
index 72f4b2b813..0000000000
--- a/bookkeeper-http/servlet-http-server/build.gradle
+++ /dev/null
@@ -1,45 +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.
- */
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    implementation project(':bookkeeper-http:http-server')
-    implementation depLibs.slf4j
-    implementation depLibs.javaxServlet
-    implementation depLibs.commonsIO
-
-    compileOnly depLibs.lombok
-    compileOnly depLibs.spotbugsAnnotations
-    annotationProcessor depLibs.lombok
-
-    testImplementation depLibs.junit
-    testImplementation depLibs.jettyWebapp
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            groupId = 'org.apache.bookkeeper.http'
-            artifactId = 'servlet-http-server'
-        }
-    }
-}
diff --git a/bookkeeper-http/vertx-http-server/build.gradle b/bookkeeper-http/vertx-http-server/build.gradle
deleted file mode 100644
index 19dff5a4a2..0000000000
--- a/bookkeeper-http/vertx-http-server/build.gradle
+++ /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.
- */
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    implementation project(':bookkeeper-http:http-server')
-    implementation depLibs.slf4j
-    implementation depLibs.vertxCore
-    implementation depLibs.vertxWeb
-    implementation depLibs.nettyBuffer
-    implementation depLibs.nettyCommon
-    implementation depLibs.nettyHandler
-    implementation depLibs.nettyTransport
-    runtimeOnly depLibs.nettyTransportNativeEpoll
-    implementation depLibs.nettyProxy
-    implementation depLibs.nettyCodecHTTP
-    implementation depLibs.nettyCodecHTTP2
-    implementation depLibs.nettyResolver
-    implementation depLibs.nettyResolverDNS
-    testImplementation depLibs.junit
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            groupId = 'org.apache.bookkeeper.http'
-            artifactId = 'vertx-http-server'
-        }
-    }
-}
diff --git a/bookkeeper-proto/build.gradle b/bookkeeper-proto/build.gradle
deleted file mode 100644
index b8e490965b..0000000000
--- a/bookkeeper-proto/build.gradle
+++ /dev/null
@@ -1,38 +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.
- */
-plugins {
-    id 'java'
-    id 'idea'
-    id 'com.google.protobuf'
-}
-
-dependencies {
-    implementation depLibs.protobuf
-}
-
-protobuf {
-    protoc {
-        artifact = depLibs.protoc
-    }
-    generatedFilesBaseDir = "${projectDir}/src/generated"
-}
-
-clean {
-    delete protobuf.generatedFilesBaseDir
-}
diff --git a/buildtools/build.gradle b/buildtools/build.gradle
deleted file mode 100644
index aa16d5bb3e..0000000000
--- a/buildtools/build.gradle
+++ /dev/null
@@ -1,43 +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.
- */
-plugins {
-    id 'java'
-    id 'maven-publish'
-}
-
-description = 'Apache BookKeeper :: Build Tools'
-
-dependencies {
-
-
-    compileOnly depLibs.lombok
-    compileOnly depLibs.spotbugsAnnotations
-
-
-
-    testCompileOnly depLibs.lombok
-
-
-    annotationProcessor depLibs.lombok
-    testAnnotationProcessor depLibs.lombok
-}
-
-jar {
-    archiveBaseName = 'buildtools'
-}
diff --git a/circe-checksum/build.gradle b/circe-checksum/build.gradle
deleted file mode 100644
index 12d9f5f730..0000000000
--- a/circe-checksum/build.gradle
+++ /dev/null
@@ -1,46 +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.
- */
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    implementation depLibs.guava
-    implementation depLibs.nettyBuffer
-    implementation depLibs.slf4j
-
-    testImplementation project(':testtools')
-
-    testImplementation depLibs.junit
-    testImplementation depLibs.mockito
-}
-
-compileJava {
-    options.headerOutputDirectory = file("${buildDir}/javahGenerated")
-    // override args and remove -Werror
-    // Object.finalize() is deprecated at java 9
-    options.compilerArgs = ["-Xlint:unchecked", "-Xlint:deprecation"]
-}
-
-jar {
-    from (tasks.getByPath(":circe-checksum:src:main:circe:linkRelease").outputs.files.filter { f -> f.isFile()} ) {
-        into "/lib"
-    }
-}
diff --git a/circe-checksum/src/main/circe/build.gradle b/circe-checksum/src/main/circe/build.gradle
deleted file mode 100644
index 0a35c874aa..0000000000
--- a/circe-checksum/src/main/circe/build.gradle
+++ /dev/null
@@ -1,45 +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.
- */
-import org.gradle.internal.jvm.Jvm
-
-plugins {
-    id 'cpp-library'
-}
-
-library {
-    baseName = 'circe-checksum'
-
-    binaries.configureEach { CppBinary binary ->
-        def compileTask = binary.compileTask.get()
-        compileTask.dependsOn project(':circe-checksum').compileJava
-        compileTask.includes.from("${Jvm.current().javaHome}/include",
-                                  project(':circe-checksum').compileJava.options.headerOutputDirectory)
-
-        def osFamily = binary.targetPlatform.targetMachine.operatingSystemFamily
-
-        if (osFamily.linux) {
-            compileTask.includes.from("${Jvm.current().javaHome}/include/linux")
-        } else if (osFamily.macOs) {
-            compileTask.includes.from("${Jvm.current().javaHome}/include/darwin")
-        }
-
-        compileTask.source.from fileTree(dir: "cpp", include: "**/*.cpp")
-        compileTask.compilerArgs.addAll(["-msse4.2", "-mpclmul", "-O3"])
-    }
-}
diff --git a/cpu-affinity/build.gradle b/cpu-affinity/build.gradle
deleted file mode 100644
index 3f2cf0d2c7..0000000000
--- a/cpu-affinity/build.gradle
+++ /dev/null
@@ -1,45 +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.
- */
-
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    compileOnly depLibs.spotbugsAnnotations
-    implementation depLibs.commonsLang3
-    implementation depLibs.guava
-    implementation depLibs.slf4j
-    testImplementation depLibs.junit
-    compileOnly depLibs.lombok
-    annotationProcessor depLibs.lombok
-    testCompileOnly depLibs.lombok
-    testAnnotationProcessor depLibs.lombok
-}
-
-compileJava {
-    options.headerOutputDirectory = file("${buildDir}/javahGenerated")
-}
-
-jar {
-    from (tasks.getByPath(":cpu-affinity:src:main:affinity:linkRelease").outputs.files.filter { f -> f.isFile()} ) {
-        into "/lib"
-    }
-}
diff --git a/cpu-affinity/src/main/affinity/build.gradle b/cpu-affinity/src/main/affinity/build.gradle
deleted file mode 100644
index 49868c0c51..0000000000
--- a/cpu-affinity/src/main/affinity/build.gradle
+++ /dev/null
@@ -1,47 +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.
- */
-import org.gradle.internal.jvm.Jvm
-
-plugins {
-    id 'cpp-library'
-}
-
-library {
-    binaries.configureEach { CppBinary binary ->
-        def compileTask = binary.compileTask.get()
-        compileTask.dependsOn project(':cpu-affinity').compileJava
-        compileTask.includes.from("${Jvm.current().javaHome}/include",
-                                  project(':cpu-affinity').compileJava.options.headerOutputDirectory)
-
-        def osFamily = binary.targetPlatform.targetMachine.operatingSystemFamily
-
-        if (osFamily.linux) {
-            compileTask.includes.from("${Jvm.current().javaHome}/include/linux")
-        } else if (osFamily.macOs) {
-            compileTask.includes.from("${Jvm.current().javaHome}/include/darwin")
-        }
-
-        compileTask.includes.from("${Jvm.current().javaHome}/include/linux")
-        compileTask.includes.from("${Jvm.current().javaHome}/include/darwin")
-        compileTask.source.from fileTree(dir: "cpp", include: "**/*.c")
-
-        compileTask.compilerArgs.addAll(["-x", "c", "-std=c11"])
-    }
-}
-
diff --git a/dev/check-all-licenses-gradle b/dev/check-all-licenses-gradle
deleted file mode 100755
index 03eeb51c65..0000000000
--- a/dev/check-all-licenses-gradle
+++ /dev/null
@@ -1,33 +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.
-#
-
-# Script to check licenses on a binary tarball.
-# It extracts the list of bundled jars, the NOTICE, and the LICENSE
-# files. It checked that every non-bk jar bundled is mentioned in the
-# LICENSE file. It checked that all jar files mentioned in NOTICE and
-# LICENSE are actually bundled.
-
-# all error fatal
-set -e -x
-
-HERE=$(dirname $0)
-BOOKKEEPER_DIST=$HERE/../bookkeeper-dist
-$HERE/check-binary-license $BOOKKEEPER_DIST/server/build/distributions/bookkeeper-server-*.tar.gz
-$HERE/check-binary-license $BOOKKEEPER_DIST/all/build/distributions/bookkeeper-all-*.tar.gz
-$HERE/check-binary-license $BOOKKEEPER_DIST/bkctl/build/distributions/bkctl-*.tar.gz
-
diff --git a/dev/release/build.gradle.kts b/dev/release/build.gradle.kts
deleted file mode 100644
index ebaf105c58..0000000000
--- a/dev/release/build.gradle.kts
+++ /dev/null
@@ -1,70 +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.
- */
-
-import com.github.vlsi.gradle.release.ReleaseExtension
-import com.github.vlsi.gradle.release.ReleaseParams
-
-plugins {
-    id("com.github.vlsi.stage-vote-release")
-}
-
-rootProject.configure<ReleaseExtension> {
-    voteText.set { it.voteTextGen() }
-}
-
-fun ReleaseParams.voteTextGen(): String = """
-From: Release Manager
-To: dev@bookkeeper.apache.org
-Subject: [VOTE] Release $version, release candidate #$rc
-
-Hi everyone,
-Please review and vote on the release candidate $rc for the version $version, as follows:
-[ ] +1, Approve the release
-[ ] -1, Do not approve the release (please provide specific comments)
-
-The complete staging area is available for your review, which includes:
-* Release notes [1]
-  * ** Add release notes url **
-* The official Apache source and binary distributions to be deployed to dist.apache.org
-  * https://dist.apache.org/repos/dist/dev/bookkeeper/bookkeeper-$version-rc$rc/
-
-* All artifacts to be deployed to the Maven Central Repository
-  * https://repository.apache.org/content/repositories/staging/org/apache/bookkeeper/
-
-* Source code tag "release-$version-rc$rc" [4] with git sha $gitSha
-
-BookKeeper's KEYS file contains PGP keys we used to sign this release:
-https://dist.apache.org/repos/dist/release/bookkeeper/KEYS
-
-Please download these packages and review this release candidate:
-
-- Review release notes
-- Download the source package (verify shasum, and asc) and follow the instructions
-  to build and run the bookkeeper service.
-- Download the binary package (verify shasum, and asc) and follow the instructions
-  to run the bookkeeper service.
-- Review maven repo, release tag, licenses, and any other things you think it is
-  important to a release.
-
-The vote will be open for at least 72 hours. It is adopted by majority approval, with at least 3 PMC affirmative votes.
-
-Thanks,
-Release Manager
-""".trimIndent()
-
diff --git a/gradle.properties b/gradle.properties
deleted file mode 100644
index c230c3fcc9..0000000000
--- a/gradle.properties
+++ /dev/null
@@ -1,30 +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.
-#
-#
-
-protobufPluginVersion=0.8.18
-apcheRatPluginVersion=0.7.0
-shadowPluginVersion=7.1.2
-licenseGradlePluginVersion=0.15.0
-checkStyleVersion=6.19
-spotbugsPlugin=5.0.5
-testLogger=3.1.0
-testRetry=1.0.0
-owaspPlugin=6.5.3
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
deleted file mode 100644
index e708b1c023..0000000000
Binary files a/gradle/wrapper/gradle-wrapper.jar and /dev/null differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
deleted file mode 100644
index f91c4502a5..0000000000
--- a/gradle/wrapper/gradle-wrapper.properties
+++ /dev/null
@@ -1,26 +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.
-#
-#
-
-distributionBase=GRADLE_USER_HOME
-distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip
-zipStoreBase=GRADLE_USER_HOME
-zipStorePath=wrapper/dists
diff --git a/gradlew b/gradlew
deleted file mode 100755
index 1b6c787337..0000000000
--- a/gradlew
+++ /dev/null
@@ -1,234 +0,0 @@
-#!/bin/sh
-
-#
-# Copyright © 2015-2021 the original authors.
-#
-# Licensed 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
-#
-#      https://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.
-#
-
-##############################################################################
-#
-#   Gradle start up script for POSIX generated by Gradle.
-#
-#   Important for running:
-#
-#   (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
-#       noncompliant, but you have some other compliant shell such as ksh or
-#       bash, then to run this script, type that shell name before the whole
-#       command line, like:
-#
-#           ksh Gradle
-#
-#       Busybox and similar reduced shells will NOT work, because this script
-#       requires all of these POSIX shell features:
-#         * functions;
-#         * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
-#           «${var#prefix}», «${var%suffix}», and «$( cmd )»;
-#         * compound commands having a testable exit status, especially «case»;
-#         * various built-in commands including «command», «set», and «ulimit».
-#
-#   Important for patching:
-#
-#   (2) This script targets any POSIX shell, so it avoids extensions provided
-#       by Bash, Ksh, etc; in particular arrays are avoided.
-#
-#       The "traditional" practice of packing multiple parameters into a
-#       space-separated string is a well documented source of bugs and security
-#       problems, so this is (mostly) avoided, by progressively accumulating
-#       options in "$@", and eventually passing that to Java.
-#
-#       Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
-#       and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
-#       see the in-line comments for details.
-#
-#       There are tweaks for specific operating systems such as AIX, CygWin,
-#       Darwin, MinGW, and NonStop.
-#
-#   (3) This script is generated from the Groovy template
-#       https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
-#       within the Gradle project.
-#
-#       You can find Gradle at https://github.com/gradle/gradle/.
-#
-##############################################################################
-
-# Attempt to set APP_HOME
-
-# Resolve links: $0 may be a link
-app_path=$0
-
-# Need this for daisy-chained symlinks.
-while
-    APP_HOME=${app_path%"${app_path##*/}"}  # leaves a trailing /; empty if no leading path
-    [ -h "$app_path" ]
-do
-    ls=$( ls -ld "$app_path" )
-    link=${ls#*' -> '}
-    case $link in             #(
-      /*)   app_path=$link ;; #(
-      *)    app_path=$APP_HOME$link ;;
-    esac
-done
-
-APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
-
-APP_NAME="Gradle"
-APP_BASE_NAME=${0##*/}
-
-# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
-
-# Use the maximum available, or set MAX_FD != -1 to use that value.
-MAX_FD=maximum
-
-warn () {
-    echo "$*"
-} >&2
-
-die () {
-    echo
-    echo "$*"
-    echo
-    exit 1
-} >&2
-
-# OS specific support (must be 'true' or 'false').
-cygwin=false
-msys=false
-darwin=false
-nonstop=false
-case "$( uname )" in                #(
-  CYGWIN* )         cygwin=true  ;; #(
-  Darwin* )         darwin=true  ;; #(
-  MSYS* | MINGW* )  msys=true    ;; #(
-  NONSTOP* )        nonstop=true ;;
-esac
-
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
-
-
-# Determine the Java command to use to start the JVM.
-if [ -n "$JAVA_HOME" ] ; then
-    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
-        # IBM's JDK on AIX uses strange locations for the executables
-        JAVACMD=$JAVA_HOME/jre/sh/java
-    else
-        JAVACMD=$JAVA_HOME/bin/java
-    fi
-    if [ ! -x "$JAVACMD" ] ; then
-        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
-    fi
-else
-    JAVACMD=java
-    which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
-fi
-
-# Increase the maximum file descriptors if we can.
-if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
-    case $MAX_FD in #(
-      max*)
-        MAX_FD=$( ulimit -H -n ) ||
-            warn "Could not query maximum file descriptor limit"
-    esac
-    case $MAX_FD in  #(
-      '' | soft) :;; #(
-      *)
-        ulimit -n "$MAX_FD" ||
-            warn "Could not set maximum file descriptor limit to $MAX_FD"
-    esac
-fi
-
-# Collect all arguments for the java command, stacking in reverse order:
-#   * args from the command line
-#   * the main class name
-#   * -classpath
-#   * -D...appname settings
-#   * --module-path (only if needed)
-#   * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
-
-# For Cygwin or MSYS, switch paths to Windows format before running java
-if "$cygwin" || "$msys" ; then
-    APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
-    CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
-
-    JAVACMD=$( cygpath --unix "$JAVACMD" )
-
-    # Now convert the arguments - kludge to limit ourselves to /bin/sh
-    for arg do
-        if
-            case $arg in                                #(
-              -*)   false ;;                            # don't mess with options #(
-              /?*)  t=${arg#/} t=/${t%%/*}              # looks like a POSIX filepath
-                    [ -e "$t" ] ;;                      #(
-              *)    false ;;
-            esac
-        then
-            arg=$( cygpath --path --ignore --mixed "$arg" )
-        fi
-        # Roll the args list around exactly as many times as the number of
-        # args, so each arg winds up back in the position where it started, but
-        # possibly modified.
-        #
-        # NB: a `for` loop captures its iteration list before it begins, so
-        # changing the positional parameters here affects neither the number of
-        # iterations, nor the values presented in `arg`.
-        shift                   # remove old arg
-        set -- "$@" "$arg"      # push replacement arg
-    done
-fi
-
-# Collect all arguments for the java command;
-#   * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
-#     shell script including quotes and variable substitutions, so put them in
-#     double quotes to make sure that they get re-expanded; and
-#   * put everything else in single quotes, so that it's not re-expanded.
-
-set -- \
-        "-Dorg.gradle.appname=$APP_BASE_NAME" \
-        -classpath "$CLASSPATH" \
-        org.gradle.wrapper.GradleWrapperMain \
-        "$@"
-
-# Use "xargs" to parse quoted args.
-#
-# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
-#
-# In Bash we could simply go:
-#
-#   readarray ARGS < <( xargs -n1 <<<"$var" ) &&
-#   set -- "${ARGS[@]}" "$@"
-#
-# but POSIX shell has neither arrays nor command substitution, so instead we
-# post-process each arg (as a line of input to sed) to backslash-escape any
-# character that might be a shell metacharacter, then use eval to reverse
-# that process (while maintaining the separation between arguments), and wrap
-# the whole thing up as a single "set" statement.
-#
-# This will of course break if any of these variables contains a newline or
-# an unmatched quote.
-#
-
-eval "set -- $(
-        printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
-        xargs -n1 |
-        sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
-        tr '\n' ' '
-    )" '"$@"'
-
-exec "$JAVACMD" "$@"
diff --git a/gradlew.bat b/gradlew.bat
deleted file mode 100644
index ac1b06f938..0000000000
--- a/gradlew.bat
+++ /dev/null
@@ -1,89 +0,0 @@
-@rem
-@rem Copyright 2015 the original author or authors.
-@rem
-@rem Licensed under the Apache License, Version 2.0 (the "License");
-@rem you may not use this file except in compliance with the License.
-@rem You may obtain a copy of the License at
-@rem
-@rem      https://www.apache.org/licenses/LICENSE-2.0
-@rem
-@rem Unless required by applicable law or agreed to in writing, software
-@rem distributed under the License is distributed on an "AS IS" BASIS,
-@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-@rem See the License for the specific language governing permissions and
-@rem limitations under the License.
-@rem
-
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem  Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Resolve any "." and ".." in APP_HOME to make it shorter.
-for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto execute
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto execute
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
diff --git a/microbenchmarks/run_with_gradle.sh b/microbenchmarks/run_with_gradle.sh
deleted file mode 100755
index f136de74a0..0000000000
--- a/microbenchmarks/run_with_gradle.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/sh
-#
-#   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.
-
-java -Xms1G -Xmx1G -Djdk.nio.maxCachedBufferSize=0 -Djava.net.preferIPv4Stack=true -Duser.timezone=UTC -XX:-MaxFDLimit -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+ResizeTLAB -XX:-ResizePLAB -XX:MetaspaceSize=128m -XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80 -XX:+ParallelRefProcEnabled -XX:StackShadowPages=20 -XX:+UseCompressedOops -XX:+DisableExplicitGC -XX:StringTableSize=1000003 -XX:InitiatingHeapOccupancyPercent=40 -jar ./microbenchmarks/build/libs/microbenchmarks.jar $@ - [...]
-
diff --git a/native-io/src/main/native-io-jni/build.gradle b/native-io/src/main/native-io-jni/build.gradle
deleted file mode 100644
index 6a65b161ed..0000000000
--- a/native-io/src/main/native-io-jni/build.gradle
+++ /dev/null
@@ -1,48 +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.
- */
-import org.gradle.internal.jvm.Jvm
-
-plugins {
-    id 'cpp-library'
-}
-
-library {
-    binaries.configureEach { CppBinary binary ->
-        def compileTask = binary.compileTask.get()
-        compileTask.dependsOn project(':native-io').compileJava
-        compileTask.includes.from("${Jvm.current().javaHome}/include",
-                                  project(':native-io').compileJava.options.headerOutputDirectory)
-
-        def osFamily = binary.targetPlatform.targetMachine.operatingSystemFamily
-
-        if (osFamily.linux) {
-            compileTask.includes.from("${Jvm.current().javaHome}/include/linux")
-            compileTask.macros.put("_GNU_SOURCE", "1")
-        } else if (osFamily.macOs) {
-            compileTask.includes.from("${Jvm.current().javaHome}/include/darwin")
-        }
-
-        compileTask.includes.from("${Jvm.current().javaHome}/include/linux")
-        compileTask.includes.from("${Jvm.current().javaHome}/include/darwin")
-        compileTask.source.from fileTree(dir: "cpp", include: "**/*.c")
-
-        compileTask.compilerArgs.addAll(["-x", "c", "-std=c11"])
-    }
-}
-
diff --git a/shaded/bookkeeper-server-shaded/build.gradle b/shaded/bookkeeper-server-shaded/build.gradle
deleted file mode 100644
index 07cee929d9..0000000000
--- a/shaded/bookkeeper-server-shaded/build.gradle
+++ /dev/null
@@ -1,37 +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.
- */
-plugins {
-    id 'java'
-    id 'com.github.johnrengelman.shadow'
-    id 'com.github.hierynomus.license'
-}
-
-description = 'Apache BookKeeper :: Shaded :: bookkeeper-server-shaded'
-
-dependencies {
-    implementation project(':bookkeeper-server')
-}
-
-shadowJar {
-    dependencies {
-    }
-    relocate 'com.google', 'org.apache.bookkeeper.shaded.com.google'
-    archiveBaseName.set("bookkeeper-server-shaded")
-    archiveClassifier.set("")
-}
diff --git a/shaded/bookkeeper-server-tests-shaded/build.gradle b/shaded/bookkeeper-server-tests-shaded/build.gradle
deleted file mode 100644
index 6a3009f6d2..0000000000
--- a/shaded/bookkeeper-server-tests-shaded/build.gradle
+++ /dev/null
@@ -1,36 +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.
- */
-
-plugins {
-    id 'java'
-    id 'com.github.johnrengelman.shadow'
-    id 'com.github.hierynomus.license'
-}
-
-dependencies {
-    implementation project(path: ':bookkeeper-server', configuration: 'testArtifacts')
-}
-
-shadowJar {
-    dependencies {
-    }
-    relocate 'com.google', 'org.apache.bookkeeper.shaded.com.google'
-    archiveBaseName.set("bookkeeper-server-tests-shaded")
-    archiveClassifier.set("")
-}
diff --git a/shaded/distributedlog-core-shaded/build.gradle b/shaded/distributedlog-core-shaded/build.gradle
deleted file mode 100644
index 3223dd4e7d..0000000000
--- a/shaded/distributedlog-core-shaded/build.gradle
+++ /dev/null
@@ -1,58 +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.
- */
-
-plugins {
-    id 'java'
-    id 'com.github.johnrengelman.shadow'
-    id 'com.github.hierynomus.license'
-}
-
-description = 'Apache BookKeeper :: Shaded :: distributedlog-core-shaded'
-
-dependencies {
-    implementation project(':stream:distributedlog:core')
-}
-
-shadowJar {
-    dependencies {
-    }
-    relocate 'org.apache.commons.cli', 'dlshade.org.apache.commons.cli'
-    relocate 'org.apache.commons.codec', 'dlshade.org.apache.commons.codec'
-    relocate 'org.apache.commons.collections4', 'dlshade.org.apache.commons.collections4'
-    relocate 'org.apache.commons.lang', 'dlshade.org.apache.commons.lang'
-    relocate 'org.apache.commons.lang3', 'dlshade.org.apache.commons.lang3'
-    relocate 'org.apache.commons.logging', 'dlshade.org.apache.commons.logging'
-    relocate 'org.apache.commons.io', 'dlshade.org.apache.commons.io'
-    relocate 'org.apache.httpcomponents', 'dlshade.org.apache.httpcomponents'
-    relocate 'org.apache.http', 'dlshade.org.apache.http'
-    relocate 'org.apache.thrift', 'dlshade.org.apache.thrift'
-    relocate 'org.apache.zookeeper', 'dlshade.org.apache.zookeeper'
-    relocate 'org.apache.jute', 'dlshade.org.apache.jute'
-    relocate 'com.fasterxml.jackson', 'dlshade.com.fasterxml.jackson'
-    relocate 'com.sun.jna', 'dlshade.com.sun.jna'
-    relocate 'com.google', 'dlshade.com.google'
-    relocate 'org.jboss.netty', 'dlshade.org.jboss.netty'
-    relocate 'net.jpountz', 'dlshade.net.jpountz'
-    relocate 'org.rocksdb', 'dlshade.org.rocksdb'
-    relocate 'com.scurrilous.circe', 'dlshade.com.scurrilous.circe'
-    relocate 'org.apache.bookkeeper', 'dlshade.org.apache.bookkeeper'
-    relocate 'org.apache.distributedlog', 'dlshade.org.apache.distributedlog'
-    archiveBaseName.set("distributedlog-core-shaded")
-    archiveClassifier.set("")
-}
diff --git a/stream/api/build.gradle b/stream/api/build.gradle
deleted file mode 100644
index 85bb55e9d7..0000000000
--- a/stream/api/build.gradle
+++ /dev/null
@@ -1,41 +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.
- */
-dependencies {
-    implementation project(':bookkeeper-common')
-    implementation project(':stream:common')
-
-    implementation depLibs.guava
-    compileOnly depLibs.lombok
-    implementation depLibs.nettyBuffer
-    implementation depLibs.nettyCommon
-
-    annotationProcessor depLibs.lombok
-}
-
-jar {
-    archiveBaseName = 'stream-storage-api'
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            artifactId = 'stream-storage-api'
-        }
-    }
-}
diff --git a/stream/clients/java/all/build.gradle b/stream/clients/java/all/build.gradle
deleted file mode 100644
index 84ff33ad54..0000000000
--- a/stream/clients/java/all/build.gradle
+++ /dev/null
@@ -1,53 +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.
- */
-dependencies {
-    implementation project(':bookkeeper-common')
-    implementation project(':stream:api')
-    implementation project(':stream:common')
-    implementation project(':stream:clients:java:base')
-    implementation project(':stream:clients:java:kv')
-    implementation project(':stream:proto')
-
-    implementation depLibs.grpc
-    implementation depLibs.guava
-    runtimeOnly depLibs.googleHTTPClient
-    compileOnly depLibs.lombok
-    implementation depLibs.slf4j
-
-    testImplementation project(':testtools')
-    testImplementation project(path: ':stream:clients:java:base', configuration: 'testArtifacts')
-    testImplementation depLibs.mockito
-    testImplementation depLibs.powermockJunit
-    testImplementation depLibs.powermockMockito
-    testImplementation depLibs.lombok
-
-    annotationProcessor depLibs.lombok
-}
-
-jar {
-    archiveBaseName = 'stream-storage-java-client'
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            artifactId = 'stream-storage-java-client'
-        }
-    }
-}
diff --git a/stream/clients/java/kv/build.gradle b/stream/clients/java/kv/build.gradle
deleted file mode 100644
index de85b5ba71..0000000000
--- a/stream/clients/java/kv/build.gradle
+++ /dev/null
@@ -1,39 +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.
- */
-dependencies {
-    implementation project(':bookkeeper-common')
-    implementation project(':stream:api')
-    implementation project(':stream:clients:java:base')
-    implementation project(':stream:common')
-    implementation project(':stream:proto')
-    implementation depLibs.grpc
-    runtimeOnly depLibs.googleHTTPClient
-    implementation depLibs.guava
-    compileOnly depLibs.lombok
-    implementation depLibs.nettyBuffer
-    implementation depLibs.protobuf
-    implementation depLibs.slf4j
-    compileOnly depLibs.jsr305
-    testImplementation project(':testtools')
-    testImplementation project(path: ':stream:clients:java:base', configuration: 'testArtifacts')
-    testImplementation depLibs.mockito
-    testImplementation depLibs.junit
-    testImplementation depLibs.lombok
-    annotationProcessor depLibs.lombok
-}
diff --git a/stream/distributedlog/protocol/build.gradle b/stream/distributedlog/protocol/build.gradle
deleted file mode 100644
index 869a4e6115..0000000000
--- a/stream/distributedlog/protocol/build.gradle
+++ /dev/null
@@ -1,62 +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.
- */
-
-plugins {
-    id 'com.adarshr.test-logger'
-    id 'org.gradle.test-retry'
-}
-
-dependencies {
-    implementation project(':stream:distributedlog:common')
-    implementation depLibs.commonsCodec
-    implementation depLibs.guava
-    compileOnly depLibs.jsr305
-    compileOnly depLibs.lombok
-    implementation depLibs.nettyBuffer
-    implementation depLibs.slf4j
-
-    testImplementation project(':bookkeeper-common')
-    testImplementation project(':testtools')
-    testImplementation depLibs.junit
-    testImplementation depLibs.lombok
-    annotationProcessor depLibs.lombok
-}
-
-jar {
-    archiveBaseName = 'distributedlog-protocol'
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            groupId = 'org.apache.distributedlog'
-            artifactId = 'distributedlog-protocol'
-        }
-    }
-}
-
-test {
-    retry {
-        maxFailures = 20
-        maxRetries = 3
-    }
-
-    maxHeapSize = '2G'
-    forkEvery = 1
-}
\ No newline at end of file
diff --git a/stream/proto/build.gradle b/stream/proto/build.gradle
deleted file mode 100644
index 0bb88331bf..0000000000
--- a/stream/proto/build.gradle
+++ /dev/null
@@ -1,74 +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.
- */
-plugins {
-    id 'idea'
-    id 'com.google.protobuf'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    implementation project(':stream:common')
-    compileOnly depLibs.lombok
-    implementation depLibs.grpc
-    implementation depLibs.guava
-    runtimeOnly depLibs.googleHTTPClient
-    implementation depLibs.commonsLang3
-    compileOnly depLibs.jsr305
-    testImplementation depLibs.junit
-    compileOnly depLibs.javaAnnotations
-    annotationProcessor depLibs.lombok
-
-    testImplementation project(':testtools')
-}
-
-protobuf {
-    plugins {
-        grpc {
-            artifact = depLibs.protocGenGrpcJava
-        }
-    }
-
-    protoc {
-        artifact = depLibs.protoc
-    }
-
-    generateProtoTasks {
-        all()*.plugins {
-            grpc {}
-        }
-    }
-
-    generatedFilesBaseDir = "${projectDir}/src/generated"
-}
-
-clean {
-    delete protobuf.generatedFilesBaseDir
-}
-
-jar {
-    archiveBaseName = 'stream-storage-proto'
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            artifactId = 'stream-storage-proto'
-        }
-    }
-}
diff --git a/stream/statelib/build.gradle b/stream/statelib/build.gradle
deleted file mode 100644
index 0ecf8e7cf1..0000000000
--- a/stream/statelib/build.gradle
+++ /dev/null
@@ -1,93 +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.
- */
-plugins {
-    id 'idea'
-    id 'com.google.protobuf'
-    id 'com.adarshr.test-logger'
-    id 'org.gradle.test-retry'
-}
-
-dependencies {
-    implementation project(':bookkeeper-common')
-    implementation project(':stream:api')
-    implementation project(':stream:common')
-    implementation project(':stream:distributedlog:common')
-    implementation project(':stream:distributedlog:core')
-    implementation project(':stream:distributedlog:protocol')
-    implementation project(':stream:proto')
-
-    implementation depLibs.commonsLang2
-    implementation depLibs.commonsLang3
-    implementation depLibs.guava
-    compileOnly depLibs.jsr305
-    compileOnly depLibs.lombok
-    implementation depLibs.nettyBuffer
-    implementation depLibs.nettyCommon
-    implementation depLibs.protobuf
-    implementation depLibs.rocksDb
-    implementation depLibs.slf4j
-
-    testImplementation project(':testtools')
-    testImplementation depLibs.commonsConfiguration
-    testImplementation depLibs.commonsIO
-    testImplementation depLibs.junit
-    testImplementation depLibs.mockito
-    testImplementation depLibs.metricsCore
-    testImplementation depLibs.snappy
-    testImplementation depLibs.slf4jSimple
-    testImplementation depLibs.lombok
-    testImplementation project(path: ':stream:distributedlog:core', configuration: 'testArtifacts')
-
-    annotationProcessor depLibs.lombok
-    testAnnotationProcessor depLibs.lombok
-}
-
-protobuf {
-    plugins {
-        grpc {
-            artifact = depLibs.protocGenGrpcJava
-        }
-    }
-
-    protoc {
-        artifact = depLibs.protoc
-    }
-
-    generateProtoTasks {
-        all()*.plugins {
-            grpc {}
-        }
-    }
-
-    generatedFilesBaseDir = "${projectDir}/src/generated"
-}
-
-clean {
-    delete protobuf.generatedFilesBaseDir
-}
-
-test {
-    retry {
-        maxFailures = 200
-        maxRetries = 5
-    }
-
-    maxHeapSize = '2G'
-    forkEvery = 1
-}
diff --git a/stream/storage/api/build.gradle b/stream/storage/api/build.gradle
deleted file mode 100644
index 24d41afbc5..0000000000
--- a/stream/storage/api/build.gradle
+++ /dev/null
@@ -1,45 +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.
- */
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    implementation project(':bookkeeper-common')
-    implementation project(':stream:common')
-    implementation project(':stream:proto')
-    implementation depLibs.commonsConfiguration
-    implementation depLibs.grpc
-    runtimeOnly depLibs.googleHTTPClient
-    testImplementation depLibs.junit
-}
-
-jar {
-    archiveBaseName = 'stream-storage-service-api'
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            artifactId = 'stream-storage-service-api'
-        }
-    }
-}
-
diff --git a/stream/tests-common/build.gradle b/stream/tests-common/build.gradle
deleted file mode 100644
index 9f9a7a3a91..0000000000
--- a/stream/tests-common/build.gradle
+++ /dev/null
@@ -1,57 +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.
- */
-plugins {
-    id 'idea'
-    id 'com.google.protobuf'
-}
-
-dependencies {
-    implementation depLibs.grpc
-    implementation depLibs.guava
-    testImplementation depLibs.googleHTTPClient
-    compileOnly depLibs.lombok
-    implementation depLibs.slf4j
-    compileOnly depLibs.jsr305
-    annotationProcessor depLibs.lombok
-    compileOnly depLibs.javaAnnotations
-}
-
-protobuf {
-    plugins {
-        grpc {
-            artifact = depLibs.protocGenGrpcJava
-        }
-    }
-
-    protoc {
-        artifact = depLibs.protoc
-    }
-
-    generateProtoTasks {
-        all()*.plugins {
-            grpc {}
-        }
-    }
-
-    generatedFilesBaseDir = "${projectDir}/src/generated"
-}
-
-clean {
-    delete protobuf.generatedFilesBaseDir
-}
diff --git a/tests/backward-compat/bc-non-fips/build.gradle b/tests/backward-compat/bc-non-fips/build.gradle
deleted file mode 100644
index e321659662..0000000000
--- a/tests/backward-compat/bc-non-fips/build.gradle
+++ /dev/null
@@ -1,42 +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.
- */
-
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    testImplementation project(':bookkeeper-common')
-    testImplementation(project(':bookkeeper-server')) {
-        exclude group: "org.bouncycastle", module: "bc-fips"
-    }
-    testImplementation project(path: ':bookkeeper-common', configuration: 'testArtifacts')
-    testImplementation(project(path: ':bookkeeper-server', configuration: 'testArtifacts')) {
-        exclude group: "org.bouncycastle", module: "bc-fips"
-    }
-    testImplementation depLibs.junit
-    testImplementation depLibs.slf4j
-    testImplementation depLibs.bcpkixJdk15on
-    testImplementation depLibs.bcproveExtJdk15on
-
-    testCompileOnly depLibs.lombok
-    testAnnotationProcessor depLibs.lombok
-}
-
diff --git a/tests/backward-compat/build.gradle b/tests/backward-compat/build.gradle
deleted file mode 100644
index c974d8ff95..0000000000
--- a/tests/backward-compat/build.gradle
+++ /dev/null
@@ -1,59 +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.
- */
-
-plugins {
-    id 'groovy'
-    id 'com.adarshr.test-logger'
-    id 'org.gradle.test-retry'
-}
-
-subprojects {
-    if (project.name == "bc-non-fips") {
-        return
-    }
-
-    apply plugin: 'groovy'
-    apply plugin: 'com.adarshr.test-logger'
-    apply plugin: 'org.gradle.test-retry'
-
-
-    dependencies {
-        testImplementation 'org.codehaus.groovy:groovy-all:2.4.15'
-        testImplementation project(":tests:integration-tests-utils")
-        testImplementation project(":tests:integration-tests-topologies")
-        testImplementation depLibs.arquillianJunitContainer
-        testImplementation depLibs.junit
-        testImplementation depLibs.slf4j
-        testImplementation depLibs.arquillianCubeDocker
-        testImplementation depLibs.zookeeper
-    }
-
-    test {
-        dependsOn(":tests:docker-images:buildImages")
-        retry {
-            maxFailures = 10
-            maxRetries = 5
-        }
-    }
-
-}
-
-test {
-    subprojects.each { dependsOn("${it.name}:test") }
-}
\ No newline at end of file
diff --git a/tests/docker-images/build.gradle b/tests/docker-images/build.gradle
deleted file mode 100644
index 2005506714..0000000000
--- a/tests/docker-images/build.gradle
+++ /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.
- */
-task buildImages(type:Exec) {
-    dependsOn(':stream:server:distTar')
-    dependsOn(':bookkeeper-dist-server:distTar')
-    commandLine './images_builder.sh', project.rootProject.version
-}
diff --git a/tests/integration-tests-topologies/build.gradle b/tests/integration-tests-topologies/build.gradle
deleted file mode 100644
index f26f690396..0000000000
--- a/tests/integration-tests-topologies/build.gradle
+++ /dev/null
@@ -1,36 +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.
- */
-dependencies {
-    implementation project(':tests:integration-tests-utils')
-    implementation depLibs.testcontainers
-    implementation depLibs.junit
-    compileOnly depLibs.lombok
-    implementation depLibs.slf4j
-    implementation depLibs.guava
-    implementation depLibs.commonsLang2
-    annotationProcessor depLibs.lombok
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            artifactId = 'integration-tests-topologies'
-        }
-    }
-}
diff --git a/tests/integration-tests-utils/build.gradle b/tests/integration-tests-utils/build.gradle
deleted file mode 100644
index 020773ac24..0000000000
--- a/tests/integration-tests-utils/build.gradle
+++ /dev/null
@@ -1,43 +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.
- */
-dependencies {
-    implementation depLibs.arquillianCubeDocker
-    implementation depLibs.zookeeper
-    implementation depLibs.junit
-    compileOnly depLibs.spotbugsAnnotations
-    compileOnly depLibs.lombok
-    implementation depLibs.slf4j
-    implementation depLibs.groovy
-    implementation depLibs.shrinkwrapImpl
-    implementation depLibs.shrinkwrapApi
-    implementation depLibs.dockerJava
-    annotationProcessor depLibs.lombok
-}
-
-test {
-    exclude '**/MavenClassLoaderTest.class'
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            artifactId = 'integration-tests-utils'
-        }
-    }
-}
diff --git a/tests/integration/smoke/build.gradle b/tests/integration/smoke/build.gradle
deleted file mode 100644
index b154f34a84..0000000000
--- a/tests/integration/smoke/build.gradle
+++ /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.
- */
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    testImplementation project(':bookkeeper-common')
-    testImplementation project(path: ':bookkeeper-common', configuration: 'testArtifacts')
-    testImplementation project(':bookkeeper-server')
-    testImplementation project(':tests:integration-tests-utils')
-    testImplementation project(':tests:integration-tests-topologies')
-    testCompileOnly depLibs.lombok
-    testImplementation depLibs.arquillianJunitContainer
-    testImplementation depLibs.arquillianJunitStandalone
-    testImplementation depLibs.testcontainers
-    testImplementation depLibs.commonsConfiguration
-    testImplementation depLibs.arquillianCubeDocker
-    testAnnotationProcessor depLibs.lombok
-}
-
-test {
-    exclude '**/*'
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            artifactId = 'tests-integration-cluster'
-        }
-    }
-}
diff --git a/tests/integration/standalone/build.gradle b/tests/integration/standalone/build.gradle
deleted file mode 100644
index 771dfe4488..0000000000
--- a/tests/integration/standalone/build.gradle
+++ /dev/null
@@ -1,48 +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.
- */
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    testImplementation project(path: ':bookkeeper-common', configuration: 'testArtifacts')
-    testImplementation project(':bookkeeper-server')
-    testImplementation project(':tests:integration-tests-utils')
-    testImplementation project(':tests:integration-tests-topologies')
-    testImplementation project(':testtools')
-    testCompileOnly depLibs.lombok
-    testImplementation depLibs.arquillianJunitContainer
-    testImplementation depLibs.testcontainers
-    testImplementation depLibs.commonsConfiguration
-    testImplementation depLibs.arquillianCubeDocker
-    testAnnotationProcessor depLibs.lombok
-}
-
-test {
-    dependsOn(":tests:docker-images:buildImages")
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            artifactId = 'tests-integration-cluster'
-        }
-    }
-}
diff --git a/tests/scripts/build.gradle b/tests/scripts/build.gradle
deleted file mode 100644
index d15c9411cc..0000000000
--- a/tests/scripts/build.gradle
+++ /dev/null
@@ -1,38 +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.
- */
-plugins {
-    id "de.undercouch.download" version "4.1.2"
-}
-
-task downloadShunit2(type: Download) {
-    src 'https://github.com/kward/shunit2/archive/v2.1.7.zip'
-    dest new File(buildDir, "shunit2-2.1.7.zip")
-}
-
-task extractShunit2(dependsOn: downloadShunit2, type: Copy) {
-    from zipTree(downloadShunit2.dest)
-    into new File(buildDir, "libs/lib")
-}
-
-task executeShTests(dependsOn: extractShunit2, type: Exec) {
-    workingDir "src/test/bash/gradle"
-    commandLine "./bk_test.sh"
-}
-
-tasks.test.dependsOn("executeShTests")
diff --git a/tests/scripts/src/test/bash/gradle/bk_test.sh b/tests/scripts/src/test/bash/gradle/bk_test.sh
deleted file mode 100755
index 3c7b02e6fe..0000000000
--- a/tests/scripts/src/test/bash/gradle/bk_test.sh
+++ /dev/null
@@ -1,141 +0,0 @@
-#!/usr/bin/env bash
-#
-# vim:et:ft=sh:sts=2:sw=2
-#
-#/**
-# * 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.
-# */
-
-ARGV0=`basename "$0"`
-PREFIX="bk_test_"
-SHELLS="/bin/sh /bin/bash"
-
-find_tests_at() {
-  DIR=$1
-  PREF=$2
-  REGEX="^${PREF}[a-z_]*.sh$"
-  RESULTS=""
-  if [ -d ${DIR} ]; then
-    cd ${DIR}
-    for f in *.sh; do
-      if [[ ${f} =~ ${REGEX} ]]; then
-        RESULTS="${RESULTS} ${f}"
-      fi
-    done
-  fi
-  echo ${RESULTS}
-}
-
-TESTS=$(find_tests_at "." ${PREFIX})
-
-# load common unit test functions
-source ./versions
-source ./bk_test_helpers
-
-usage() {
-  echo "usage: ${ARGV0} [-e key=val ...] [-s shell(s)] [-t test(s)]"
-}
-
-env=''
-
-# process command line flags
-while getopts 'e:hs:t:' opt; do
-  case ${opt} in
-    e)  # set an environment variable
-      key=`expr "${OPTARG}" : '\([^=]*\)='`
-      val=`expr "${OPTARG}" : '[^=]*=\(.*\)'`
-      if [ -z "${key}" -o -z "${val}" ]; then
-        usage
-        exit 1
-      fi
-      eval "${key}='${val}'"
-      export ${key}
-      env="${env:+${env} }${key}"
-      ;;
-    h) usage; exit 0 ;;  # output help
-    s) shells=${OPTARG} ;;  # list of shells to run
-    t) tests=${OPTARG} ;;  # list of tests to run
-    *) usage; exit 1 ;;
-  esac
-done
-shift `expr ${OPTIND} - 1`
-
-# fill shells and/or tests
-shells=${shells:-${SHELLS}}
-tests=${tests:-${TESTS}}
-
-# error checking
-if [ -z "${tests}" ]; then
-  bk_info 'no tests found to run; exiting'
-  exit 0
-fi
-
-# print run info
-cat <<EOF
-#------------------------------------------------------------------------------
-# System data
-#
-# test run info
-shells="${shells}"
-tests="${tests}"
-EOF
-for key in ${env}; do
-  eval "echo \"${key}=\$${key}\""
-done
-echo
-
-# output system data
-echo "# system info"
-echo "$ date"
-date
-
-echo "$ uname -mprsv"
-uname -mprsv
-
-#
-# run tests
-#
-
-for shell in ${shells}; do
-  echo
-
-  # check for existance of shell
-  if [ ! -x ${shell} ]; then
-    bk_warn "unable to run tests with the ${shell} shell"
-    continue
-  fi
-
-  cat <<EOF
-#------------------------------------------------------------------------------
-# Running the test suite with ${shell}
-#
-EOF
-
-  shell_name=`basename ${shell}`
-  shell_version=`versions_shellVersion "${shell}"`
-
-  echo "shell name: ${shell_name}"
-  echo "shell version: ${shell_version}"
-
-  # execute the tests
-  for suite in ${tests}; do
-    suiteName=`expr "${suite}" : "${PREFIX}\(.*\).sh"`
-    echo
-    echo "--- Executing the '${suiteName}' test suite ---"
-    ( exec ${shell} ./${suite} 2>&1; )
-  done
-done
diff --git a/tests/scripts/src/test/bash/gradle/bk_test_helpers b/tests/scripts/src/test/bash/gradle/bk_test_helpers
deleted file mode 100644
index c2fb838ce6..0000000000
--- a/tests/scripts/src/test/bash/gradle/bk_test_helpers
+++ /dev/null
@@ -1,94 +0,0 @@
-#!/usr/bin/env bash
-#
-# vim:et:ft=sh:sts=2:sw=2
-#
-#/**
-# * 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.
-# */
-
-# name of script
-BK_ARGV0=`basename "$0"`
-
-# path to shUnit2 library. can be overridden by setting BK_SHUNIT_INC.
-BK_SHUNIT=${BK_SHUNIT_INC:-../../../../build/libs/lib/shunit2-2.1.7/shunit2}
-
-# path to bk bin directory.
-TESTDIR=`dirname "$0"`
-BK_BINDIR=`cd ${TESTDIR}/../../../../../../bin;pwd`
-BK_HOMEDIR=`cd ${TESTDIR}/../../../../../..;pwd`
-BK_CONFDIR=`cd ${TESTDIR}/../../../../../../conf;pwd`
-
-#
-# test helper functions
-#
-
-# message functions
-bk_trace() { echo "bk_test:TRACE $@" >&2; }
-bk_debug() { echo "bk_test:DEBUG $@" >&2; }
-bk_info() { echo "bk_test:INFO $@" >&2; }
-bk_warn() { echo "bk_test:WARN $@" >&2; }
-bk_error() { echo "bk_test:ERROR $@" >&2; }
-bk_fatal() { echo "bk_test:FATAL $@" >&2; }
-
-bk_oneTimeSetUp() {
-  # these will be cleaned up automatically by shunit2
-  BK_TMPDIR=${SHUNIT_TMPDIR}
-  stdoutF="${BK_TMPDIR}/stdout"
-  stderrF="${BK_TMPDIR}/stderr"
-  expectedF="${BK_TMPDIR}/expected"
-}
-
-# Assert the success of an operation.
-#
-# If an operation is not successful (i.e. it returns a non-zero return code)
-# dump the output of the stderrF to the screen.
-#
-# Args:
-#   message: string: message to output [optional]
-#   result: integer: operation result
-assertSuccess() {
-  if [ $# -eq 2 ]; then
-    bk_message_=$1
-    shift
-  else
-    bk_message_=''
-  fi
-  bk_result_=$1
-
-  assertEquals "${bk_message_}" ${SHUNIT_TRUE} ${bk_result_}
-  [ ${bk_result_} -eq ${SHUNIT_TRUE} ] || cat "${stderrF}"
-
-  unset bk_message_ bk_result_
-}
-
-assertError() {
-  if [ $# -eq 2 ]; then
-    bk_message_="$1: "
-    shift
-  else
-    bk_message_=''
-  fi
-  bk_error_=$1
-
-  bk_file_=${stderrF}
-  grep "^bk_test:ERROR.*${bk_error_}" "${bk_file_}" >/dev/null
-  bk_result_=$?
-  assertTrue "${bk_message_}missing '${bk_error_}' error" ${bk_result_}
-  [ ${bk_result_} -eq 0 ] || cat "${bk_file_}"
-
-  unset bk_file_ bk_error_ bk_message_ bk_result_
-}
diff --git a/tests/scripts/src/test/bash/gradle/versions b/tests/scripts/src/test/bash/gradle/versions
deleted file mode 100644
index 9b868f509d..0000000000
--- a/tests/scripts/src/test/bash/gradle/versions
+++ /dev/null
@@ -1,173 +0,0 @@
-#!/usr/bin/env bash
-#
-# vim:et:ft=sh:sts=2:sw=2
-#
-#/**
-# * 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.
-# */
-
-ARGV0=`basename "$0"`
-LSB_RELEASE="/etc/lsb-release"
-VERSIONS_SHELLS="/bin/bash /bin/sh"
-
-true; TRUE=$?
-false; FALSE=$?
-ERROR=2
-
-UNAME_R=`uname -r`
-UNAME_S=`uname -s`
-
-__versions_haveStrings=${ERROR}
-
-versions_osName() {
-  os_name_='unrecognized'
-  os_system_=${UNAME_S}
-  os_release_=${UNAME_R}
-  case ${os_system_} in
-    CYGWIN_NT-*) os_name_='Cygwin' ;;
-    Darwin)
-      os_name_=`/usr/bin/sw_vers -productName`
-      os_version_=`versions_osVersion`
-      case ${os_version_} in
-        10.4|10.4.[0-9]*) os_name_='Mac OS X Tiger' ;;
-        10.5|10.5.[0-9]*) os_name_='Mac OS X Leopard' ;;
-        10.6|10.6.[0-9]*) os_name_='Mac OS X Snow Leopard' ;;
-        10.7|10.7.[0-9]*) os_name_='Mac OS X Lion' ;;
-        10.8|10.8.[0-9]*) os_name_='Mac OS X Mountain Lion' ;;
-        10.9|10.9.[0-9]*) os_name_='Mac OS X Mavericks' ;;
-        10.10|10.10.[0-9]*) os_name_='Mac OS X Yosemite' ;;
-        10.11|10.11.[0-9]*) os_name_='Mac OS X El Capitan' ;;
-        10.12|10.12.[0-9]*) os_name_='macOS Sierra' ;;
-        10.13|10.13.[0-9]*) os_name_='macOS High Sierra' ;;
-        *) os_name_='macOS' ;;
-      esac
-      ;;
-    FreeBSD) os_name_='FreeBSD' ;;
-    Linux) os_name_='Linux' ;;
-    SunOS)
-      os_name_='SunOS'
-      if [ -r '/etc/release' ]; then
-        if grep 'OpenSolaris' /etc/release >/dev/null; then
-          os_name_='OpenSolaris'
-        else
-          os_name_='Solaris'
-        fi
-      fi
-      ;;
-  esac
-
-  echo ${os_name_}
-  unset os_name_ os_system_ os_release_ os_version_
-}
-
-versions_osVersion() {
-  os_version_='unrecognized'
-  os_system_=${UNAME_S}
-  os_release_=${UNAME_R}
-  case ${os_system_} in
-    CYGWIN_NT-*)
-      os_version_=`expr "${os_release_}" : '\([0-9]*\.[0-9]\.[0-9]*\).*'`
-      ;;
-    Darwin)
-      os_version_=`/usr/bin/sw_vers -productVersion`
-      ;;
-    FreeBSD)
-      os_version_=`expr "${os_release_}" : '\([0-9]*\.[0-9]*\)-.*'`
-      ;;
-    Linux)
-      if [ -r '/etc/os-release' ]; then
-          os_version_=`awk -F= '$1~/PRETTY_NAME/{print $2}' /etc/os-release \
-            |sed 's/"//g'`
-      elif [ -r '/etc/redhat-release' ]; then
-        os_version_=`cat /etc/redhat-release`
-      elif [ -r '/etc/SuSE-release' ]; then
-        os_version_=`head -n 1 /etc/SuSE-release`
-      elif [ -r "${LSB_RELEASE}" ]; then
-        if grep -q 'DISTRIB_ID=Ubuntu' "${LSB_RELEASE}"; then
-          # shellcheck disable=SC2002
-          os_version_=`cat "${LSB_RELEASE}" \
-            |awk -F= '$1~/DISTRIB_DESCRIPTION/{print $2}' \
-            |sed 's/"//g;s/ /-/g'`
-        fi
-      fi
-      ;;
-    SunOS)
-      if [ -r '/etc/release' ]; then
-        if grep 'OpenSolaris' /etc/release >/dev/null; then  # OpenSolaris
-          os_version_=`grep 'OpenSolaris' /etc/release |awk '{print $2"("$3")"}'`
-        else  # Solaris
-          major_=`echo "${os_release_}" |sed 's/[0-9]*\.\([0-9]*\)/\1/'`
-          minor_=`grep Solaris /etc/release |sed 's/[^u]*\(u[0-9]*\).*/\1/'`
-          os_version_="${major_}${minor_}"
-        fi
-      fi
-      ;;
-  esac
-
-  echo "${os_version_}"
-  unset os_release_ os_system_ os_version_ major_ minor_
-}
-
-versions_shellVersion() {
-  shell_=$1
-
-  shell_present_=${FALSE}
-  case "${shell_}" in
-    ash) [ -x '/bin/busybox' ] && shell_present_=${TRUE} ;;
-    *) [ -x "${shell_}" ] && shell_present_=${TRUE} ;;
-  esac
-  if [ ${shell_present_} -eq ${FALSE} ]; then
-    echo 'not installed'
-    return ${FALSE}
-  fi
-
-  version_=''
-  case ${shell_} in
-    */sh)
-      # This could be one of any number of shells. Try until one fits.
-      version_=''
-      [ -z "${version_}" ] && version_=`versions_shell_bash "${shell_}"`
-      ;;
-    */bash) version_=`versions_shell_bash "${shell_}"` ;;
-    *) version_='invalid'
-  esac
-
-  echo "${version_:-unknown}"
-  unset shell_ version_
-}
-
-versions_shell_bash() {
-  $1 --version : 2>&1 |grep 'GNU bash' |sed 's/.*version \([^ ]*\).*/\1/'
-}
-
-versions_main() {
-  # Treat unset variables as an error.
-  set -u
-
-  os_name=`versions_osName`
-  os_version=`versions_osVersion`
-  echo "os: ${os_name} version: ${os_version}"
-
-  for shell in ${VERSIONS_SHELLS}; do
-    shell_version=`versions_shellVersion "${shell}"`
-    echo "shell: ${shell} version: ${shell_version}"
-  done
-}
-
-if [ "${ARGV0}" = 'versions' ]; then
-  versions_main "$@"
-fi
diff --git a/tests/shaded/bookkeeper-server-shaded-test/build.gradle b/tests/shaded/bookkeeper-server-shaded-test/build.gradle
deleted file mode 100644
index 78a05a3bc1..0000000000
--- a/tests/shaded/bookkeeper-server-shaded-test/build.gradle
+++ /dev/null
@@ -1,29 +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.
- */
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    testImplementation depLibs.slf4j
-    testImplementation depLibs.junit
-    testImplementation project(path: ':shaded:bookkeeper-server-shaded', configuration: 'shadow')
-}
-
diff --git a/tests/shaded/bookkeeper-server-tests-shaded-test/build.gradle b/tests/shaded/bookkeeper-server-tests-shaded-test/build.gradle
deleted file mode 100644
index cc6dcd8f48..0000000000
--- a/tests/shaded/bookkeeper-server-tests-shaded-test/build.gradle
+++ /dev/null
@@ -1,31 +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.
- */
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    testImplementation depLibs.slf4j
-    testImplementation depLibs.junit
-    testImplementation depLibs.commonsConfiguration
-    testImplementation project(path: ':shaded:bookkeeper-server-shaded', configuration: 'shadow')
-    testImplementation project(path: ':shaded:bookkeeper-server-tests-shaded', configuration: 'shadow')
-}
-
diff --git a/tests/shaded/distributedlog-core-shaded-test/build.gradle b/tests/shaded/distributedlog-core-shaded-test/build.gradle
deleted file mode 100644
index bc783ee798..0000000000
--- a/tests/shaded/distributedlog-core-shaded-test/build.gradle
+++ /dev/null
@@ -1,33 +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.
- */
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    testImplementation depLibs.slf4j
-    testImplementation depLibs.junit
-    testImplementation depLibs.mockito
-    testImplementation depLibs.powermockMockito
-    testImplementation depLibs.powermockJunit
-    testImplementation depLibs.commonsConfiguration
-    testImplementation project(path: ':shaded:distributedlog-core-shaded', configuration: 'shadow')
-}
-
diff --git a/tests/shaded/distributedlog-core-shaded-test/pom.xml b/tests/shaded/distributedlog-core-shaded-test/pom.xml
index 7b2206c4cc..0730d30dd7 100644
--- a/tests/shaded/distributedlog-core-shaded-test/pom.xml
+++ b/tests/shaded/distributedlog-core-shaded-test/pom.xml
@@ -70,6 +70,11 @@
         </exclusion>
       </exclusions>
     </dependency>
+    <!-- class Crc32cIntChecksum needs netty buffer -->
+    <dependency>
+      <groupId>io.netty</groupId>
+      <artifactId>netty-buffer</artifactId>
+    </dependency>
   </dependencies>
   <build>
     <plugins>
diff --git a/testtools/build.gradle b/testtools/build.gradle
deleted file mode 100644
index c606cf6ab2..0000000000
--- a/testtools/build.gradle
+++ /dev/null
@@ -1,43 +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.
- */
-plugins {
-    id 'java'
-    id 'maven-publish'
-}
-
-description = 'Apache BookKeeper :: Test Tools'
-
-dependencies {
-
-
-    compileOnly depLibs.lombok
-    compileOnly depLibs.spotbugsAnnotations
-
-
-
-    testCompileOnly depLibs.lombok
-
-
-    annotationProcessor depLibs.lombok
-    testAnnotationProcessor depLibs.lombok
-}
-
-jar {
-    archiveBaseName = 'testtools'
-}
diff --git a/tools/all/build.gradle b/tools/all/build.gradle
deleted file mode 100644
index 7593b6a2c6..0000000000
--- a/tools/all/build.gradle
+++ /dev/null
@@ -1,40 +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.
- */
-plugins {
-    id 'java'
-}
-
-description = 'Apache BookKeeper :: Tools'
-
-dependencies {
-
-    implementation project(':bookkeeper-tools-ledger')
-    implementation project(':bookkeeper-tools-stream')
-    compileOnly depLibs.lombok
-    compileOnly depLibs.spotbugsAnnotations
-
-    testCompileOnly depLibs.lombok
-
-    annotationProcessor depLibs.lombok
-    testAnnotationProcessor depLibs.lombok
-}
-
-jar {
-    archiveBaseName = 'bookkeeper-tools'
-}
diff --git a/tools/framework/build.gradle b/tools/framework/build.gradle
deleted file mode 100644
index ddf9c468f9..0000000000
--- a/tools/framework/build.gradle
+++ /dev/null
@@ -1,45 +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.
- */
-plugins {
-    id 'java'
-}
-
-dependencies {
-    implementation project(":bookkeeper-common")
-    compileOnly depLibs.lombok
-    compileOnly depLibs.spotbugsAnnotations
-    implementation depLibs.commonsConfiguration
-    implementation depLibs.guava
-    implementation depLibs.jcommander
-    implementation depLibs.slf4j
-    testImplementation depLibs.junit
-    annotationProcessor depLibs.lombok
-}
-
-jar {
-    archiveBaseName = 'bookkeeper-tools-framework'
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            artifactId = 'bookkeeper-tools-framework'
-        }
-    }
-}
\ No newline at end of file
diff --git a/tools/stream/build.gradle b/tools/stream/build.gradle
deleted file mode 100644
index aa4ee9838a..0000000000
--- a/tools/stream/build.gradle
+++ /dev/null
@@ -1,63 +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.
- */
-plugins {
-    id 'java'
-    id 'com.adarshr.test-logger'
-}
-
-dependencies {
-    implementation project(":bookkeeper-common")
-    implementation project(':bookkeeper-tools-framework')
-    implementation project(':bookkeeper-server')
-    implementation project(':stream:api')
-    implementation project(':stream:common')
-    implementation project(':stream:clients:java:base')
-    implementation project(':stream:clients:java:kv')
-    implementation project(':stream:clients:java:all')
-    implementation project(':stream:storage:api')
-    implementation project(':stream:storage:impl')
-    implementation project(':stream:distributedlog:core')
-    implementation project(':stream:distributedlog:protocol')
-    implementation project(':stream:distributedlog:core')
-    implementation project(':stream:proto')
-
-    compileOnly depLibs.lombok
-    compileOnly depLibs.spotbugsAnnotations
-    implementation depLibs.commonsConfiguration
-    implementation depLibs.guava
-    implementation depLibs.jcommander
-    implementation depLibs.zookeeper
-    implementation depLibs.curatorFramework
-    implementation depLibs.protobuf
-    implementation depLibs.commonsLang3
-    implementation depLibs.nettyBuffer
-    annotationProcessor depLibs.lombok
-}
-
-jar {
-    archiveBaseName = 'stream-storage-cli'
-}
-
-publishing {
-    publications {
-        maven(MavenPublication) {
-            artifactId = 'stream-storage-cli'
-        }
-    }
-}
\ No newline at end of file