Merge branch 'stable-3.4' into stable-3.5

* stable-3.4:
  Make DynamoDBRefDatebase class implement ExtendedGlobalRefDatabase
  computeAndPut should return false instead  throwing exception
  Consume global-refdb directly from source
  Bump global-refdb to v3.4.8.6
  Add AWS credentials profile name parameter

Change-Id: I31d43d8ae625178aa1ff7a620efda486d5048371
diff --git a/BUILD b/BUILD
index ec778a9..1dbc913 100644
--- a/BUILD
+++ b/BUILD
@@ -27,6 +27,7 @@
         "@aws-java-sdk-dynamodb//jar",
         "@dynamodb-lock-client//jar",
         "@jackson-annotations//jar",
+        "@jackson-core//jar",
         "@jackson-databind//jar",
         "@jackson-dataformat-cbor//jar",
         "@joda-time//jar",
@@ -35,6 +36,7 @@
 
 junit_tests(
     name = "aws-dynamodb-refdb_tests",
+    timeout = "long",
     srcs = glob(["src/test/java/**/*.java"]),
     resources = glob(["src/test/resources/**/*"]),
     tags = ["aws-dynamodb-refdb"],
@@ -51,9 +53,11 @@
         ":aws-dynamodb-refdb__plugin",
         "//plugins/global-refdb",
         "@amazon-regions//jar",
-        "//lib/testcontainers",
-        "//lib/testcontainers:docker-java-api",
-        "//lib/testcontainers:docker-java-transport",
+        "@testcontainers//jar",
+        "@docker-java-api//jar",
+        "@docker-java-transport//jar",
+        "@duct-tape//jar",
+        "@jna//jar",
         "@testcontainer-localstack//jar",
         "@aws-java-sdk-dynamodb//jar",
     ],
diff --git a/external_plugin_deps.bzl b/external_plugin_deps.bzl
index 207efdd..c3aa3e8 100644
--- a/external_plugin_deps.bzl
+++ b/external_plugin_deps.bzl
@@ -3,6 +3,7 @@
 AWS_SDK_VER = "2.16.19"
 AWS_KINESIS_VER = "2.3.4"
 JACKSON_VER = "2.10.4"
+DOCKER_JAVA_VERS = "3.2.8"
 
 def external_plugin_deps():
     maven_jar(
@@ -66,6 +67,18 @@
     )
 
     maven_jar(
+        name = "jackson-annotations",
+        artifact = "com.fasterxml.jackson.core:jackson-annotations:" + JACKSON_VER,
+        sha1 = "6ae6028aff033f194c9710ad87c224ccaadeed6c",
+    )
+
+    maven_jar(
+        name = "jackson-core",
+        artifact = "com.fasterxml.jackson.core:jackson-core:" + JACKSON_VER,
+        sha1 = "8796585e716440d6dd5128b30359932a9eb74d0d",
+    )
+
+    maven_jar(
         name = "joda-time",
         artifact = "joda-time:joda-time:2.10.10",
         sha1 = "29e8126e31f41e5c12b9fe3a7eb02e704c47d70b",
@@ -77,3 +90,32 @@
         sha1 = "ae3c4717bc5f37410abbb490cb46d349a77990a0",
     )
 
+    maven_jar(
+        name = "testcontainers",
+        artifact = "org.testcontainers:testcontainers:1.15.3",
+        sha1 = "95c6cfde71c2209f0c29cb14e432471e0b111880",
+    )
+
+    maven_jar(
+        name = "docker-java-api",
+        artifact = "com.github.docker-java:docker-java-api:" + DOCKER_JAVA_VERS,
+        sha1 = "4ac22a72d546a9f3523cd4b5fabffa77c4a6ec7c",
+    )
+
+    maven_jar(
+        name = "docker-java-transport",
+        artifact = "com.github.docker-java:docker-java-transport:" + DOCKER_JAVA_VERS,
+        sha1 = "c3b5598c67d0a5e2e780bf48f520da26b9915eab",
+    )
+
+    maven_jar(
+        name = "duct-tape",
+        artifact = "org.rnorth.duct-tape:duct-tape:1.0.8",
+        sha1 = "92edc22a9ab2f3e17c9bf700aaee377d50e8b530",
+    )
+
+    maven_jar(
+        name = "jna",
+        artifact = "net.java.dev.jna:jna:5.5.0",
+        sha1 = "0e0845217c4907822403912ad6828d8e0b256208",
+    )