summaryrefslogtreecommitdiffhomepage
path: root/WORKSPACE
diff options
context:
space:
mode:
authorKevin Krakauer <krakauer@google.com>2019-12-12 14:40:36 -0800
committergVisor bot <gvisor-bot@google.com>2019-12-12 14:42:11 -0800
commitbe2754a4b99cc92f13f479f74a5da8b0e6cb5839 (patch)
tree17a1cbacb7b477950998555ab896782439436d7c /WORKSPACE
parent93d429d5b1e3801fb4c29568bcd40d6854c9fe94 (diff)
Add iptables testing framework.
It would be preferrable to test iptables via syscall tests, but there are some problems with that approach: * We're limited to loopback-only, as syscall tests involve only a single container. Other link interfaces (e.g. fdbased) should be tested. * We'd have to shell out to call iptables anyways, as the iptables syscall interface itself is too large and complex to work with alone. * Running the Linux/native version of the syscall test will require root, which is a pain to configure, is inherently unsafe, and could leave host iptables misconfigured. Using the go_test target allows there to be no new test runner. PiperOrigin-RevId: 285274275
Diffstat (limited to 'WORKSPACE')
-rw-r--r--WORKSPACE39
1 files changed, 39 insertions, 0 deletions
diff --git a/WORKSPACE b/WORKSPACE
index 4561ed8fc..4b5a3bfe2 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -106,6 +106,45 @@ load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
rules_pkg_dependencies()
+# Container rules.
+http_archive(
+ name = "io_bazel_rules_docker",
+ sha256 = "14ac30773fdb393ddec90e158c9ec7ebb3f8a4fd533ec2abbfd8789ad81a284b",
+ strip_prefix = "rules_docker-0.12.1",
+ urls = ["https://github.com/bazelbuild/rules_docker/releases/download/v0.12.1/rules_docker-v0.12.1.tar.gz"],
+)
+
+load(
+ "@io_bazel_rules_docker//repositories:repositories.bzl",
+ container_repositories = "repositories",
+)
+
+container_repositories()
+
+load("@io_bazel_rules_docker//repositories:deps.bzl", container_deps = "deps")
+
+container_deps()
+
+load(
+ "@io_bazel_rules_docker//container:container.bzl",
+ "container_pull",
+)
+
+# This container is built from the Dockerfile in test/iptables/runner.
+container_pull(
+ name = "iptables-test",
+ registry = "gcr.io",
+ repository = "gvisor-presubmit/iptables-test",
+ digest = "sha256:a137d692a2eb9fc7bf95c5f4a568da090e2c31098e93634421ed88f3a3f1db65",
+)
+
+load(
+ "@io_bazel_rules_docker//go:image.bzl",
+ _go_image_repos = "repositories",
+)
+
+_go_image_repos()
+
# External repositories, in sorted order.
go_repository(
name = "com_github_cenkalti_backoff",