diff --git a/BUILD b/BUILD
index 80c7dda..d5d34bf 100644
--- a/BUILD
+++ b/BUILD
@@ -48,6 +48,9 @@
         "@curator-recipes//jar",
         "@curator-test//jar",
         "@curator-client//jar",
+        "//lib/jackson:jackson-annotations",
         "//lib/testcontainers",
+        "//lib/testcontainers:docker-java-api",
+        "//lib/testcontainers:docker-java-transport",
     ],
 )
diff --git a/Jenkinsfile b/Jenkinsfile
index 5aa8082..25b721e 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -1,56 +1,2 @@
-pipeline {
-    options { skipDefaultCheckout true }
-    agent { label 'bazel-debian' }
-    stages {
-        stage('Checkout') {
-            steps {
-                sh "git clone -b ${env.GERRIT_BRANCH} https://gerrit.googlesource.com/plugins/zookeeper-refdb"
-                sh "cd zookeeper-refdb && git fetch origin refs/changes/${BRANCH_NAME} && git merge FETCH_HEAD"
-            }
-        }
-        stage('Formatting') {
-            steps {
-                gerritCheck (checks: ['gerritforge:zookeeper-refdb-format-8b1e7fb8ce34448cc425': 'RUNNING'], url: "${env.BUILD_URL}console")
-                sh "find zookeeper-refdb -name '*.java' | xargs /home/jenkins/format/google-java-format-1.7 -i"
-                script {
-                    def formatOut = sh (script: 'cd zookeeper-refdb && git status --porcelain', returnStdout: true)
-                    if (formatOut.trim()) {
-                        def files = formatOut.split('\n').collect { it.split(' ').last() }
-                        files.each { gerritComment path:it, message: 'Needs reformatting with GJF' }
-                        gerritCheck (checks: ['gerritforge:zookeeper-refdb-format-8b1e7fb8ce34448cc425': 'FAILED'], url: "${env.BUILD_URL}console")
-                    } else {
-                        gerritCheck (checks: ['gerritforge:zookeeper-refdb-format-8b1e7fb8ce34448cc425': 'SUCCESSFUL'], url: "${env.BUILD_URL}console")
-                    }
-                }
-            }
-        }
-        stage('build') {
-             environment {
-                 DOCKER_HOST = """${sh(
-                     returnStdout: true,
-                     script: "/sbin/ip route|awk '/default/ {print  \"tcp://\"\$3\":2375\"}'"
-                 )}"""
-            }
-            steps {
-                gerritCheck (checks: ['gerritforge:zookeeper-refdb-8b1e7fb8ce34448cc425': 'RUNNING'], url: "${env.BUILD_URL}console")
-                sh 'git clone --recursive -b $GERRIT_BRANCH https://gerrit.googlesource.com/gerrit'
-                sh 'cd gerrit/plugins && ln -sf ../../zookeeper-refdb . && ln -sf zookeeper-refdb/external_plugin_deps.bzl .'
-                dir ('gerrit') {
-                    sh 'bazelisk build plugins/zookeeper-refdb'
-                    sh 'bazelisk test --test_env DOCKER_HOST=$DOCKER_HOST plugins/zookeeper-refdb:zookeeper-refdb_tests'
-                }
-            }
-        }
-    }
-    post {
-        success {
-          gerritCheck (checks: ['gerritforge:zookeeper-refdb-8b1e7fb8ce34448cc425': 'SUCCESSFUL'], url: "${env.BUILD_URL}console")
-        }
-        unstable {
-          gerritCheck (checks: ['gerritforge:zookeeper-refdb-8b1e7fb8ce34448cc425': 'FAILED'], url: "${env.BUILD_URL}console")
-        }
-        failure {
-          gerritCheck (checks: ['gerritforge:zookeeper-refdb-8b1e7fb8ce34448cc425': 'FAILED'], url: "${env.BUILD_URL}console")
-        }
-    }
-}
+pluginPipeline(formatCheckId: 'gerritforge:zookeeper-refdb-format-8b1e7fb8ce34448cc425',
+               buildCheckId: 'gerritforge:zookeeper-refdb-8b1e7fb8ce34448cc425')
